关于方法:
- 普通方法:
- 构造方法:
-
关于代码块:
静态代码块
static{}
类里方法外,属于静态资源,优先于对象被加载
构造代码块
{}
类里方法外,优先于构造方法执行,用于提取所有构造方法的共性功能
局部代码块
{}
面向对象三大特征
封装
通过private关键字,对资源的访问进行限制,私有资源只能在本类中访问
私有资源若想正常使用,需要对外提供公共的全局访问点:
- 属性的封装:提供公共的getXxx()与setXxx();
- 方法的封装:提供公共的方法去调用私有方法
- 继承
继承相当于子类把父类的功能复制了一份
子类可以使用父类所有的非私有资源
Java只支持单继承,一个子类只有一个父类,一个父类可以有多个子类,继承具有传递性
继承是is a的关系,耦合性非常强
注意事项:
- this与super必须处于第一行
static
静态资源属于静态资源,随着类的加载而加载,优先于对象进行加载,只加载一次
静态资源可以使用类名直接调用
静态资源可以被全局共享,值只有一份
重写与重载
重载
在同一类中存在方法名相同,参数列表不同的的方法,
使用 方法名(参数列表); 确定调用方法
重写
继承后,子类可以重写父类方法的功能
满足OCP原则,在不修改父类代码情况下实现功能的拓展与更新
重写规则:两同两小一大原则
- 两同:方法名与参数列表相同
- 一大:子类方法的修饰符>=父类方法的修饰符
- 两小:
- 子类方法的返回值类型<=父类方法的返回值类型
- 子类方法抛出的异常类型<≡父类方法的异常类型