12 2021 档案
摘要:集合(20):Map接口 Map接口与Collection接口有什么区别? 1、Map接口与Collection接口是平级的关系,不存在继承关系,都是属于util包下面的 2、Map集合中存储的元素都是成对出现的,Map元素的键是唯一的,值是可以重复的 键值对有其他的称呼:夫妻对 3、Collect
阅读全文
摘要:集合(19):Collection集合总结 Collection(接口) 1、List(接口) 元素可以重复,有序(存储和取出顺序一致) --ArrayList类 底层数据结构是数组,查询快增删慢 线程不安全的,效率高。 --LinkedList类 底层数据结构是链表,查询慢,增删快 线程不安全的,
阅读全文
摘要:集合(18):Set集合练习 1、TreeSet集合存储自定义对象并遍历 需求: 如果对象的成员变量值相同即为同一个对象,按照年龄进行从大到小进行排序 //定义学生类 public class Student2 { private String name; private int age; publ
阅读全文
摘要:集合(17):set接口的子类 TreeSet类的练习 1、使用TreeSet集合存储学生对象,根据姓名的长度进行排序(自然排序) 定义学生类 //学生类需要实现Comparable接口 public class Student implements Comparable<Student>{ pri
阅读全文
摘要:集合(16):set接口的子类 TreeSet类 1、TreeSet类的概述 元素唯一,元素的顺序可以按照某种规则进行排序 两种排序方式: 自然排序 比较器排序 2、TreeSet类的使用案例1 import java.util.TreeSet; public class TreeSetDemo1
阅读全文
摘要:集合(15):set接口的子类 LinkedHashSet类 通过API观察LinkedHashSet: public class LinkedHashSet extends HashSet{} LinkedHashSet类继承HashSet类 前面说到public class HashSet im
阅读全文
摘要:集合(14):Collection下的子接口:set接口,set接口的子类 HashSet类 一、set集合的介绍 1、set集合的概述 元素唯一且元素无序(存储和取出顺序不一致)的集合 2、我们需要学习set接口的三个子类:HashSet类、LinkedHashSet类、TreeSet类 二、se
阅读全文
摘要:集合(13):List集合练习2 1、集合的嵌套遍历 /* 需求: 阿伟机构有十三期和十四期,十四期有很多学生,每个学生都是一个学生对象, 可以用一个集合表示一个班有45个人 十四期的学生:ArrayList<Student> classList14 十三期的学生:ArrayList<Student
阅读全文
摘要:集合(12):可变参数 前言案例: public class ArgsDemo { public static void main(String[] args) { //求两个数之和 int a = 10; int b = 20; sum(a, b); //求三个数之和 int c = 30; su
阅读全文
摘要:集合(11):静态导入 1、静态导入概述 可以直接导入到方法的级别 //使用静态导入,不用写类名,直接写方法名就可以调用该方法 //导入在类上面,使用什么方法导入什么方法就行 2、静态导入格式 格式:import static 包名….类名.方法名; 举例:import static java.la
阅读全文
摘要:集合(10):增强for循环的概述和使用 增强for循环属于JDK1.5之后的特性 到目前为止,学过哪些特性是JDK1.5之后出现的:泛型,增强for,包装类,Scanner,枚举 一、增强for循环的介绍 1、增强for循环概述 简化数组和Collection集合的遍历 2、格式 格式: for(
阅读全文
摘要:集合(9):泛型高级(通配符) (1)泛型通配符<?> 任意类型,如果没有明确,那么就是Object以及任意的Java类了 (2)<? extends E> 向下限定,E及其子类 (3)<? super E> 向上限定,E及其父类 //定义一个父类 public class Animal { } /
阅读全文
摘要:集合(8):泛型类、泛型方法、泛型接口 前言案例 import java.util.ArrayList; import java.util.Iterator; public class GenericDemo1 { public static void main(String[] args) { /
阅读全文
摘要:集合(7):List集合练习 一、ArrayList的练习 1、去除集合中字符串的重复值 import java.util.ArrayList; import java.util.Iterator; public class ArrayListTest { public static void ma
阅读全文
摘要:集合(6):List接口的子类:ArrayList类、Vector类、LinkedList类 一、ArrayList类 1、ArrayList类的概述 底层数据结构是数组,查询快、增删慢 线程不安全,效率高 2、ArrayList案例 import java.util.ArrayList; impo
阅读全文
摘要:常见数据结构:栈、队列、数组、链表、树、图、哈希表 数据结构:数据的存储格式、以及它的组成格式 面试题:不同的数据结构有哪些特点? 答:①先回答每个数据结构的组成是什么样子的 ②再回答当前数据结构有哪些优缺点 一、栈、队列、数组、链表、树、图、哈希表 1、栈 栈的数据结构特点:先进后出 2、队列 队
阅读全文
摘要:集合中的并发修改异常 import java.util.ArrayList; import java.util.Iterator; import java.util.List; /* 需求: 现在有一个集合,集合中有些字符串的元素, 判断一下里面有没有"bigdata"这个字符串 如果有,我们就添加
阅读全文
摘要:集合(3):Collection下的子接口:List接口 一、List接口的概述 (1)有序集合(有序指的是存储和取出的顺序一致) (2)允许重复的元素 (3)此接口的用户可以对列表中每个元素的插入位置进行精确地控制。用户可以根据元素的整数索引(在列表中的位置)访问元素,并搜索列表中的元素 创建Li
阅读全文
摘要:集合(2):顶层接口Collection 一、Collection的概述 1、Collection的含义 是集合中的顶层接口,它存在由它扩展开来的继承体系,为什么要分出很多不同的集合? 因为我们需要根据元素是否唯一,是否有序来区分这么多集合 2、如何创建Collection对象 因为Collecti
阅读全文
摘要:集合(1):集合的概述 先从一个案例说起:利用数组存储3个学生信息,遍历数组获取每一个学生的信息 第1步:需要先创建一个学生类 类中包含:私有成员变量、构造方法、公共的set()和get()方法、重写toString()方法 public class Student { private String
阅读全文
摘要:常用类(5):包装类、正则表达式、枚举 一、包装类 1、包装类的概述 (1)将基本数据类型封装成对象的好处在于可以在对象中定义更多的功能方法来操作该数据 (2)为了对基本数据类型进行更多、更方便的操作,Java针对每一个基本数据类型都提供了对应的类类型。 我们叫做包装类类型 基本类型和包装类的对应:
阅读全文
摘要:Arrays工具类:数组工具类 常用的几个: (1)public static String toString(int[] a) //该方法是将数组转化为字符串的一个展示(里面包含了数组的元素信息) (2)public static void sort(int[] a) //该方法是将数组进行排序,
阅读全文
摘要:数组高级:排序和查找 一、排序 1、冒泡排序(前面讲解过) 相邻元素两两比较,大的往后放,第一次完毕,最大值出现在了最大索引处 2、选择排序 从0索引开始,依次和后面元素比较,小的往前放。第一次完毕,最小值出现在了最小索引 处 二、查找 1、基本查找:数组元素无序 2、二分查找:数组元素有序 三、数
阅读全文
摘要:常用类(4-2):StringBuffer类的练习以及面试题 一、练习题 1、String类与StringBuffer类之间 的转换 (1)将String类型转换为StringBuffer类型 public class StringBufferDemo7 { public static void m
阅读全文
摘要:常用类(4-1):StringBuffer类 String:字符串 Buffer:缓冲 在API中查找得到StringBuffer类在java.lang下面,不需要导包 一、StringBuffer类的概述 1、特点 (1)线程安全的 不安全就是存在同步操作同一数据的行为,效率高 安全的时候,没有同
阅读全文
摘要:常用类(3-2):String类的练习 案例1:遍历获取字符串中的每一个字符 /* "hadoopjavaMySQL12138" 需求:遍历获取字符串中的每一个字符 */ public class StringDemo1 { public static void main(String[] args
阅读全文
摘要:常用类(3):String类 一、String类概述 1、String类的特点介绍 观察API发现: 1、String代表的是字符串,属于java.lang下面的,所以使用的时候不需要导包 2、String类代表字符串 Java程序中的所有字符串文字(例如"abc" )都被实现为此类的实例(实例代表
阅读全文
摘要:常用类(2):Scanner类 Scanner类 1、通过jdk工具查出,Scanner类在util下,需要导包 2、键盘录入工具:Scanner 注意:不能以Scanner作为class文件名 //导包 import java.util.Scanner; public class ScannerD
阅读全文
摘要:常用类:Object 一、API概述(Application Programming Interface) 应用程序编程接口 编写一个机器人程序去控制机器人踢足球,程序就需要向机器人发出向前跑、向后跑、射门、 抢球等各种命令,没有编过程序的人很难想象这样的程序如何编写。但是对于有经验的开发人员来说,
阅读全文
摘要:面向对象(17):内部类及其案例 一、内部类的介绍 1、内部类的概述 把类定义在其他类的内部,我们称之为内部类 举例:在类A中定义了一个类B,类B就是内部类 2、内部类的特点 (1)内部类可以访问外部类的成员,包括私有和静态的外部类成员 (内部类如果是静态的,就不能访问外部类私有的,但是可以访问静态
阅读全文
摘要:面向对象(16):修饰符 1、package、import、class package:到达路径为包 package com.shujia.lyw.day17.baodemo; import:最终导的是一个类 import java.util.Scanner;//Scanner是一个类 class:
阅读全文
摘要:面向对象(15):形式参数和返回值问题案例 一、形式参数 形式参数: (1)基本数据类型:byte、short、int、long、float、double、char、boolean (2)引用数据类型:类、接口、数组、抽象类 1、当类作为形参:实际上传的是该类的对象的地址值 class Studen
阅读全文
摘要:面向对象(14-2):接口的练习 一、类与类,类与接口,接口与接口之间的关系 类与类: 继承关系,只能进行单继承,不可以进行多继承,但是可以多层继承 案例: class A{} class B extends A{} class C extends C{} 类与接口: 实现关系,可以是单实现,也可也
阅读全文
摘要:面向对象(14-1):接口 1、接口概述 现在有很多的驯养员或者是驯兽师,可以训练出:猫钻火圈,狗跳高,狗做计算等。 而这些额外的动作,并不是所有猫或者狗一开始就具备的,这些功能属于后天经过 特殊的培训训练出来的。所以,这些额外的动作定义到抽象动物类中就不合适, 定义到具体的猫或者狗中也不合适,因为
阅读全文
摘要:面向对象(13-2):抽象类练习 1、猫狗案例 /* 具体事物:猫,狗 共性:姓名,年龄,吃饭 ①先分析: Cat 猫:成员变量:name,age 构造方法:无参,有参 成员方法:吃饭(猫吃鱼) Dog 狗:成员变量:name,age 构造方法:无参,有参 成员方法:吃饭(狗吃骨头) ②通过分析,两
阅读全文
摘要:面向对象(13):抽象类 1、抽象的表述 我们之前所说的猫,狗,猪,羊驼,熊猫等等都是动物的具体的例子,而动物本身是一个抽象的概念, 而我们之前是将动物写成了一个类,而类又可以创建对象,但是呢,实际上抽象的东西本身应该不能实例化, 并且动物这个概念中吃的方法,以及动物共有的方法本身也是一个不具体的方
阅读全文
摘要:面向对象(12-3:多态的练习 /* 多态的练习: 猫狗案例 */ class Animal2{ public void eat(){ System.out.println("吃饭"); } } class Dog2 extends Animal2{ @Override public void ea
阅读全文
摘要:面向对象(12-2):多态的向下转型 存在多态的前提(缺一不可): 1、要有继承的关系 2、子类要重写父类中的方法 3、要有父类的引用指向子类对象 多态的弊端: 多态创建对象无法使用子类特有的方法 案例1: class Father1{ public void fun(){ System.out.p
阅读全文
摘要:面向对象(12-1):多态 1、多态的概述 多态概述: 某一个事物,在不同时刻表现出来的不同状态。 举例: 动物(狗,猫,鸡...) 水(气态,液态,固态) class Animal{ } class Dog extends Animal{ String name; String type; } 2
阅读全文
摘要:面向对象(11-2):final关键字 一、final关键字的介绍 1、如果父类的东西不想让子类去继承:可以使用private修饰或者static 由于继承方法中有一个现象:方法重写 所以,当方法可以被重写的时候,父类原本的方法还在,但调用的是子类重写后的方法; 如果我依旧想保留父类原本的方法,不想
阅读全文
摘要:面向对象(11):继承 1、继承的概述 (1)多个类中存在相同属性和行为时,将这些内容抽取到单独一个类中,那么多个类无需再定义这些属性和行为, 只要继承那个类即可;通过extends关键字可以实现类与类的继承 (2)把多个类中相同的内容提取到另外定义的类中,然后其他类继承这个独立的类 (3)exte
阅读全文
摘要:面向对象(10):代码块(面试涉及到一部分) 目的:今后面试的时候,会有相关程序题,需要熟悉不同的代码块的执行顺序 1、代码块:在Java中,使用{}括起来的代码被称为代码块 2、根据其位置和声明的不同,可以分为: (1)局部代码块 (2)构造代码块 (3)静态代码块 (4)同步代码块(后面多线程详
阅读全文
摘要:面向对象(9_2):制作以及使用帮助文档(API) 一、制作帮助文档 1、文档注释的格式: /星星.........星/ 2、通过文档注释制作一个说明书 (1)写一个工具类 (2)在工具类中加入文档注释:作者,版本,方法中参数,返回值...... (3)创建帮助文档(API) 步骤: ①在I
阅读全文
摘要:面向对象(9):制作工具类 1、例:遍历数组、输出数组元素中的最大值 public class ArrayDemo { public static void main(String[] args) { //定义一个数组 int[] arr = {12,27,36,68,34,72,88}; //遍历
阅读全文
摘要:面向对象:main方法传参 现在我们来详细解剖一下HelloWorld,main方法 public:公共的,访问权限最大,因为要被JVM识别所编译,所以权限要够大 class:java的基本单位类,class是定义一个类的关键字 MainDemo:类名,符合标识符的命名规则 static:静态的,属
阅读全文
摘要:面向对象(8):static关键字(静态修饰) 定义一个人,成员变量有姓名、年龄、国籍 //创建类 class Person{ //定义成员变量 private String name; private int age; private String nationality; //创建无参构造方法
阅读全文
摘要:面向对象:类的初始化过程(很重要) Student s = new Student(); 在内存中做了哪些事情? (1)加载Student.class文件进内存 (2)在栈内存为s开辟空间 (3)在堆内存为学生对象开辟空间 (4)对学生对象的成员变量进行默认初始化 (5)对学生对象的成员变量进行显示
阅读全文
摘要:面向对象:标准规范的类代码以及赋值方式 结合上一章节,在以后的开发中,制定了一个规范的类代码以及成员变量的赋值方式 1、在类中应该包含: (1)创建类 (2)定义成员变量,并用private修饰 (3)创建无参构造方法 (4)创建带参构造方法 (5)创建公共的setXxx()方法和getXxx()方
阅读全文
摘要:给对象的成员变量赋值的两种方式 方法一:使用类提供的公共的setXxx()方法给成员变量进行赋值 方法二:使用带参数的构造方法给成员变量赋值 方法一: class Student{ //创建一个学生类 private String name; //定义成员变量name private int age
阅读全文
摘要:面向对象(7):构造方法 前言 例1: class Student{ //创建一个学生类 private String name; //定义成员变量name private int age; //定义成员变量age public void setName(String name){ //定义name
阅读全文
摘要:面向对象(6):this关键字 //定义一个学生类 class Student66{ //定义成员变量 private String name; private int age; //定义公共方法,供外界可以获取和赋值 //定义name的公共方法 public void setName(String
阅读全文
摘要:面向对象(5):封装 例1、show方法表示打印全部成员变量 //定义一个学生类 class Student02{ //定义学生类中的成员变量 String name; int age; //定义学生类中的成员方法 //show方法表示打印出所有的成员变量,切记! public void show(
阅读全文
摘要:面向对象(4):匿名对象 1、匿名对象:简单来说,就是没有名字的对象 用内存的形式解释: 之前,一直都是在堆内存中new对象,然后将地址值赋给栈里面的变量,这个变量也就是对象的名字; 而匿名对象,就说明没有栈中的变量引用。 2、匿名对象的使用场景 (1)当调用方法的时候,只能调用一次;调用多次的时候
阅读全文
摘要:参数问题(方法上的形参是引用/基本数据类型) 1、当方法上的形参是引用数据类型(类) 类是一个引用数据类型,可以当作形参的数据类型; 当今后看到一个方法上的形参是一个引用数据类型的时候 实际上它需要的是一个对应类的对象的地址值 定义一个动物叫的方法 //先定义一个动物类 class Animal {
阅读全文
摘要:面向对象(2):成员变量和局部变量的区别 1、一个手机对象 手机: 属性:品牌,颜色,价格 行为:打电话,发短信,学习 Phone: 成员变量:brand,color,price 成员方法:call,sendMessage,study //定义一个手机类 public class Phone { /
阅读全文
摘要:面向对象(1) 一、面向对象的介绍 1、什么是面向对象的思想 面向对象的思想是基于面向过程思想发展而来的。 面向过程:强调的是实现功能每一个步骤 面向对象:强调的是对象,然后由这个对象去调用功能 2、面向对象的特点: 1) 是一种更符合我们思想习惯的思想 2) 可以将复杂的事情简单化 3) 将我们从
阅读全文
摘要:二维数组 一、二维数组 1、二维数组的含义: 就是元素是一维数组的数组 举例: {{11,22},{11,33},{55,88}} 2、二维数组的定义格式: 格式1: 数据类型[][] 变量名 = new 数据类型[m][n]; 左边: 数据类型:表示最终元素的数据类型 [][]:表示是一个二维数组
阅读全文
摘要:跳转控制语句(break、continue、return) 1、使用跳转控制语句的原因: 想在某个循环知道到某一步的时候就结束,Java就提供了break,continue和return来实现控制语句的跳转和中断 2、break,continue,return 它们都是关键字 一、break 1、b
阅读全文

浙公网安备 33010602011771号