1.eclipse 快捷键 ctrl+shift+F ctrl+/
2.提示错误
3.查看源程序位置
4.导包 import
5.配置JDK build path remove add library
6.面向过程
7.面向对象 三大特征:
8.万物皆对象
9.类 和 对象
10.对象是类的实例化
11.类:属性 方法
12.类图
13.主类:包含main()方法
14.注释:文档注释 作者 功能 备注 参数 版本
多行注释 功能 参数 返回值
15:+leg:int +:公共的public
16.选中文件右击run as 运行主类
17.成员变量可以不初始化 系统会默认初始化
局部变量必须初始化后再使用,否则报错;
18.成员变量在堆空间
局部变量在栈空间 堆栈的区别?
19.对象的实例化过程中是把类在堆内存中的首地址付给对象
20.基本数据类型是值传递 引用数据类型是引用传递
封装
1.return; 结束方法 不继续执行
2.过程:
1.私有化成员变量
2.添加set\get方法
3.添加安全判断语句
3.this.name 指的是本类的成员变量name
4.构造方法的重载
1.在同一个类中出现了多个构造方法;
2.方法名相同,但参数列表不同
继承:
1.继承是一个Is a的关系
2.父类(基类或超类) 子类(派生类)
3.两个类有关系:学生属于人类 金鱼属于鱼类 Hp属于电脑
4.Java只支持单继承,不允许多继承(父类只能有一个,一个父类能派生出多个子类)
5.父类私有的属性和方法不能被继承
6.方法的重写:
1.发生在父类和子类之间,子类中出现了和父类同名的方法;
2.方法名相同,参数列表相同,返回值类型相同;
3.方法体不相同
4.访问控制权限不能严于父类
6.所有类的祖先类都是Object;
7.super:
当父类中有一个带参数构造方法时,为了子类继承不出错,解决方法一:在子类中
写一个构造方法,在子类的构造方法里使用super在第一行调用父类构造方法;
方法二:在父类中写一个无参构造方法;
8.实例化一个子类时,先调用父类构造方法 再调用子类构造方法
9.子类除了构造方法其余都可以继承
10.this()就是一个类的构造方法
11.子类里写的所有的构造方法 当父类中没有无参构造方法时必须在所有的子类构造方法中使用super调用父类构造方法
否则报错 或者在父类中写一个无参构造方法
多态:
1.一个事物出现了多种表现形式;
2.重名现象:重载和重写
3.对象的多态:抽象类和接口
4.子类的对象可以替代基类的对象使用;
5.intanceof:判断一个对象是不是某个类型的
6.调用子类独有的方法时一定要把父类强制下转型
7.调用父类和子类同时有相同方法时把子类对象上转型
8.向后兼容
9.方法重载:
在同一个类中出现了方法同名的现象
参数列表不同
不仅是一般的方法,构造方法也可以重载
10.重载和重写的区别
11.final:
final修饰的类不能被继承
final修饰的方法不能被重写
final修饰的属性为常量
12.常量的标识符用大写字母表示有多个字母用下划线间隔
13.常量只声明后 常量值不可以在普通方法里赋值 能够在构造方法里赋值
14.变量用static final修饰,说明这是一个全局常量
15.static:
不能修饰类
可以修饰方法,静态方法(类方法)
可修饰成员变量,静态变量(类变量)属于这个类共有,调用时:类名.属性名
静态代码块是在构造方法加载前加载还是在之后????加载几次?//静态代码块是在构造方法加载前加载并且只加载一次
12.静态方法的调用:类名.方法名
13.静态方法里调用的属性只能是静态的,不可以用this
14.静态代码块经常用来初始化静态代码块的类属性
15.多态的前提条件是什么
对象的多态性使用的前提 :
? 要继承、 实现( 接口 )
? 要有子类对父方法的重写,使具不同实现
对象的多态性不适用于子类的新方法
16.如何实现对象的多态性,也就是对象多态性格式:
将父类类型的引用指向子类的对象:向上转型
17.子类对象的多态性,并不适用于属性
18.子类对象的多态性不适用于静态方法(类方法)
19.命名规范:
包名:全部小写
类名:首字母大写,如果有多个单词每个单词的首字母大写
方法名:只有一个单词就全部用小写字母,如果有多个单词首歌单词小写后边每个单词大写开头
常量:全部字母大写,单词间用下划线隔开
变量: 类似方法的命名
接口和抽象类:
1.abstract来修饰类是抽象类,修饰方法是抽象方法
2.包含抽象方法的类一定是一个抽象类
3.抽象类不一定包含抽象方法
4.父类是抽象类,子类要实现父类中的抽象方法,否则报错,或者把子类也定义成抽象类
5.abstract 和final不能一起修饰类
6.抽象类不能被实例化
7.使用抽象类,定义抽象方法后方法名和返回值类型就明确啦,具有强制性,方便团队合作,便于分工
接口:
1.接口interface是抽象方法和常量值的定义的集合
2.接口解决了java中只能单继承的问题
3.一个类可以实现多个接口
4.接口中只能包含常量和抽象方法,也不能包含普通方法
5.接口中不能含有构造方法
6.实现多个接口时用逗号隔开
7.一个接口可以继承多个接口,多个接口间用逗号隔开
8.如果实现接口的类没有实现接口中所有的方法,要把该类定义为抽象类
9.接口和抽象类的使用场景
为什么浮点类此的变量比较不能用双等号
数组:
1.一种数据类型,多个元素的集合
2.数组一旦初始化 ,长度不可变
3.int a []; int[]a1(建议使用);
4.数组必须先初始化再使用;
5.数组是引用数据类型用New初始化
6.动态初始化:int [] arr = new int [3];可以拆成int []arr; arr = new int[3];
7.静态初始化:int [] arr = new int[]{1,2,5};
8.运行异常:
9.为什么两种数据类型不匹配的数组不能赋值
10.arr = null;空指针异常
11.length是数组的一个成员变量;
12.冒泡排序
13.copyOf
14.copyOfRange
15.equalse
16.fill
17.toString
18.sort
常用类
1.Object:
是java中唯一没有父类的类
其他所有的类都继承了他的方法
默认父类
2. EE
3.format
集合框架
1.集合类存储数量不等的多个对象
2.List列表的元素可以重复,
3.Set中不可重复,无序,以map为底层实现
4.查找某个元素用哈希码查
5.Map:键值对
6.Iterator迭代器
7.Collections类
8.hasNext()判断是否还有下一个
9.next()输出下一个元素
10.Arralist如何增加长度
11.Arralist循环遍历快
12.LinkedList插入和删除元素比较快
13.ArrayList 中的add()将指定的元素添加到此列表的尾部。
14.
java异常
1.异常有两种
2.return 之前先执行finally
2.提示错误
3.查看源程序位置
4.导包 import
5.配置JDK build path remove add library
6.面向过程
7.面向对象 三大特征:
8.万物皆对象
9.类 和 对象
10.对象是类的实例化
11.类:属性 方法
12.类图
13.主类:包含main()方法
14.注释:文档注释 作者 功能 备注 参数 版本
多行注释 功能 参数 返回值
15:+leg:int +:公共的public
16.选中文件右击run as 运行主类
17.成员变量可以不初始化 系统会默认初始化
局部变量必须初始化后再使用,否则报错;
18.成员变量在堆空间
局部变量在栈空间 堆栈的区别?
19.对象的实例化过程中是把类在堆内存中的首地址付给对象
20.基本数据类型是值传递 引用数据类型是引用传递
封装
1.return; 结束方法 不继续执行
2.过程:
1.私有化成员变量
2.添加set\get方法
3.添加安全判断语句
3.this.name 指的是本类的成员变量name
4.构造方法的重载
1.在同一个类中出现了多个构造方法;
2.方法名相同,但参数列表不同
继承:
1.继承是一个Is a的关系
2.父类(基类或超类) 子类(派生类)
3.两个类有关系:学生属于人类 金鱼属于鱼类 Hp属于电脑
4.Java只支持单继承,不允许多继承(父类只能有一个,一个父类能派生出多个子类)
5.父类私有的属性和方法不能被继承
6.方法的重写:
1.发生在父类和子类之间,子类中出现了和父类同名的方法;
2.方法名相同,参数列表相同,返回值类型相同;
3.方法体不相同
4.访问控制权限不能严于父类
6.所有类的祖先类都是Object;
7.super:
当父类中有一个带参数构造方法时,为了子类继承不出错,解决方法一:在子类中
写一个构造方法,在子类的构造方法里使用super在第一行调用父类构造方法;
方法二:在父类中写一个无参构造方法;
8.实例化一个子类时,先调用父类构造方法 再调用子类构造方法
9.子类除了构造方法其余都可以继承
10.this()就是一个类的构造方法
11.子类里写的所有的构造方法 当父类中没有无参构造方法时必须在所有的子类构造方法中使用super调用父类构造方法
否则报错 或者在父类中写一个无参构造方法
多态:
1.一个事物出现了多种表现形式;
2.重名现象:重载和重写
3.对象的多态:抽象类和接口
4.子类的对象可以替代基类的对象使用;
5.intanceof:判断一个对象是不是某个类型的
6.调用子类独有的方法时一定要把父类强制下转型
7.调用父类和子类同时有相同方法时把子类对象上转型
8.向后兼容
9.方法重载:
在同一个类中出现了方法同名的现象
参数列表不同
不仅是一般的方法,构造方法也可以重载
10.重载和重写的区别
11.final:
final修饰的类不能被继承
final修饰的方法不能被重写
final修饰的属性为常量
12.常量的标识符用大写字母表示有多个字母用下划线间隔
13.常量只声明后 常量值不可以在普通方法里赋值 能够在构造方法里赋值
14.变量用static final修饰,说明这是一个全局常量
15.static:
不能修饰类
可以修饰方法,静态方法(类方法)
可修饰成员变量,静态变量(类变量)属于这个类共有,调用时:类名.属性名
静态代码块是在构造方法加载前加载还是在之后????加载几次?//静态代码块是在构造方法加载前加载并且只加载一次
12.静态方法的调用:类名.方法名
13.静态方法里调用的属性只能是静态的,不可以用this
14.静态代码块经常用来初始化静态代码块的类属性
15.多态的前提条件是什么
对象的多态性使用的前提 :
? 要继承、 实现( 接口 )
? 要有子类对父方法的重写,使具不同实现
对象的多态性不适用于子类的新方法
16.如何实现对象的多态性,也就是对象多态性格式:
将父类类型的引用指向子类的对象:向上转型
17.子类对象的多态性,并不适用于属性
18.子类对象的多态性不适用于静态方法(类方法)
19.命名规范:
包名:全部小写
类名:首字母大写,如果有多个单词每个单词的首字母大写
方法名:只有一个单词就全部用小写字母,如果有多个单词首歌单词小写后边每个单词大写开头
常量:全部字母大写,单词间用下划线隔开
变量: 类似方法的命名
接口和抽象类:
1.abstract来修饰类是抽象类,修饰方法是抽象方法
2.包含抽象方法的类一定是一个抽象类
3.抽象类不一定包含抽象方法
4.父类是抽象类,子类要实现父类中的抽象方法,否则报错,或者把子类也定义成抽象类
5.abstract 和final不能一起修饰类
6.抽象类不能被实例化
7.使用抽象类,定义抽象方法后方法名和返回值类型就明确啦,具有强制性,方便团队合作,便于分工
接口:
1.接口interface是抽象方法和常量值的定义的集合
2.接口解决了java中只能单继承的问题
3.一个类可以实现多个接口
4.接口中只能包含常量和抽象方法,也不能包含普通方法
5.接口中不能含有构造方法
6.实现多个接口时用逗号隔开
7.一个接口可以继承多个接口,多个接口间用逗号隔开
8.如果实现接口的类没有实现接口中所有的方法,要把该类定义为抽象类
9.接口和抽象类的使用场景
为什么浮点类此的变量比较不能用双等号
数组:
1.一种数据类型,多个元素的集合
2.数组一旦初始化 ,长度不可变
3.int a []; int[]a1(建议使用);
4.数组必须先初始化再使用;
5.数组是引用数据类型用New初始化
6.动态初始化:int [] arr = new int [3];可以拆成int []arr; arr = new int[3];
7.静态初始化:int [] arr = new int[]{1,2,5};
8.运行异常:
9.为什么两种数据类型不匹配的数组不能赋值
10.arr = null;空指针异常
11.length是数组的一个成员变量;
12.冒泡排序
13.copyOf
14.copyOfRange
15.equalse
16.fill
17.toString
18.sort
常用类
1.Object:
是java中唯一没有父类的类
其他所有的类都继承了他的方法
默认父类
2. EE
3.format
集合框架
1.集合类存储数量不等的多个对象
2.List列表的元素可以重复,
3.Set中不可重复,无序,以map为底层实现
4.查找某个元素用哈希码查
5.Map:键值对
6.Iterator迭代器
7.Collections类
8.hasNext()判断是否还有下一个
9.next()输出下一个元素
10.Arralist如何增加长度
11.Arralist循环遍历快
12.LinkedList插入和删除元素比较快
13.ArrayList 中的add()将指定的元素添加到此列表的尾部。
14.
java异常
1.异常有两种
2.return 之前先执行finally