面向对象
1. 概念:类中包含属性和方法,类是对象的模板,对象是类的实例化
2. 类使用关键字class修饰
3. 如何创建对象?
用new关键字
Person p =new Person();
4. 封装:隐藏实现细节,通过公有方法访问私有属性
通过创建属性的set() 、get()方法来访问私有属性
5. 方法的调用:
对象名.方法名();
6. 包的好处:易于管理,易于查找
使用package关键字创建包
使用import关键字导入包
7. 构造方法:没有返回值类型,方法名和类名一致。目的是为对象初始化
8. 方法重载:方法名相同,参数列表不同
9. 继承:是is-a的关系 XXX是ZZZ的一种 XXX是子类,ZZZ是父类,子类具有父类的一般特性(属性的方法),以及自身的特殊特性
继承使用关键字:extends
子类通过super关键字调用父类的方法
10. Object是一切类的祖先
11. 多态:具有表现多种形态的能力
12. 多态存在的三个必要条件
12.1. 继承
12.2. 子类复写父类方法
12.3. 父类引用指向子类对象
13. 抽象类:包含抽象方法的类
14. 抽象方法:只有方法声明,没有方法体,使用关键字abstract修饰
15. 为什么需要抽象类:避免子类设计的随意性,完成了方法的设计和实现的分离
16. 接口:只含有常量和抽象方法,使用关键字interface修饰
17. 常量:public final static void double PI = 4.14;
18. 抽象方法:public abstract void XXX();
19. 接口的作用:定义规范,更好的实现设计与实例分离
20. 怎么使用接口?
子类通过implements关键字实现接口
接口不能创建实例
一个类实现了接口,就必须重写接口中的所有方法,并且方法只能是public
接口支持多继承
21. Final:
Final修饰的类不能被继承
Final修饰的方法不能被重写
Final修饰的变量就是一个常量,只能赋值一次
22. Public protected 缺省(default)private
类内部 √ √ √ √
本包 √ √ √ ×
子类 √ √ × ×
外部包 √ × × ×