面向对象
面向对象(oop)
- 面向对象编程的本质就是:以类的方式组织代码,以对象的形式(封装)数据
- 面向对象的三大特性:封装、继承、多态。
构造器
- 一个类即使什么都不写,它也会存在一个方法。
- 使用new关键字,本质就是在调用构造器
- 一旦定义了有参构造,无参就必须显示定义
封装
- 高内聚,低耦合。
- 属性私有,get\set。
封装的意义
1. 提高程序的安全性,保护数据
2. 隐藏代码的实现细节
3. 统一接口
4. 系统可维护性增加了
继承
- 继承是类和类之间的一种关系。除此之外,类和类之间的关系还有依赖、组合、聚合等。
- 继承关系的两个类,一个为子类,一个为父类。子类继承父类,使用关键字extends来表示。
- 子类和父类之间,从意义上讲应该具有“ is a”的关系
super注意点:
1. super调用父类的构造方法,必须在构造方法的第一个!
2. super必须只能出现在子类的方法或者构造方法中!
3. super和this不能同时调用构造方法!
Vs this:
1. 代表的对象不同:
1. this:本身调用者这个对象
2. super:代表父类对象的应用
2. 前提
1. this:没有继承也可以使用
2. super:只能在继承条件下才可以使用
3. 构造方法
1. this();本类的构造
2. super();父类的构造
非静态方法和静态方法的区别
- 静态方法:方法的调用之和左边。定义的数据类型有关。
- 非静态:重写
重写
重写:需要有继承关系,子类重写父类的方法!
- 方法名必须相同
- 参数列表必须相同
- 修饰符:范围可以扩大但不能缩小。
- 跑出的异常:范围,可以被缩小,但不能被扩大。
多态注意事项:
-
多态是方法的多态,属性没有多态。
-
父类和子类,有联系
-
存在条件:继承关系,方法需要重写,父类引用指向子类对象! Father f1 = new son();
不能被重写的方法:
- static方法,属于类,不属于实例。
- final 常量。
- private 方法。
static
- 新建类中代码加载顺序
- 静态代码块(仅在创建对象时执行一次)
- 匿名代码块
- 构造方法
接口
- 接口的本质就是一些约束。
- 定义一些方法。让不同的人实现。
- 接口的定义 public abstract
- 定义常量 public static final
- implements 可以实现多个接口
- 使用接口必须要重写接口中的方法。

浙公网安备 33010602011771号