封装使用:使用private修饰符,表示最小的访问权限。对成员变量的访问,统一提供setXXX,getXXX方法。
继承:继承就是子类继承父类的特征和行为,使得子类对象(实例)具有父类的实例域和方法,或子类从父类继承方法,使得子类具有父类相同的行为。当然,如果在父类中拥有私有属性(private修饰),则子类是不能被继承的。
注意: 只支持单继承,即一个子类只允许有一个父类,但是可以实现多级继承,及子类拥有唯一的父类,而父类还可以再继承。 子类可以拥有父类的属性和方法。 子类可以拥有自己的属性和方法。 子类可以重写覆盖父类的方法。
继承的使用:1在父子类关系继承中,如果成员变量重名,则创建子类对象时,访问有两种方式。直接通过子类对象访问成员变量 等号左边是谁,就优先使用谁,如果没有就向上找。间接通过成员方法访问成员变量该方法属于谁,谁就优先使用,如果没有就向上找。 成员方法也是一样的,创建的对象是谁,就优先使用谁,如果没有则直接向上找。
注意事项: 无论是成员变量还是成员方法,如果没有都是向上父类中查找,绝对不会向下查找子类的。3,在继承关系中,关于成员变量的使用: 局部成员变量:直接使用
本类成员变量:this.成员变量
父类成员变量:super.父类成员变量
重写: 是子类对父类的允许访问的方法的实现过程进行重新编写, 返回值和形参都不能改变。即外壳不变,核心重写!
重写的规则: 1,参数列表必须与被重写方法相同。 2,访问权限不能比父类中被重写的方法的访问权限更低(public>protected>(default)>private) 3,父类成员的方法只能被它的子类重写。 4,被final修饰的方法不能被重写。
重载 是在一个类里面,方法名字相同,而参数不同。返回类型可以相同也可以不同。每个重载的方法(或者构造函数)都必须有一个独一无二的参数类型列表。 最常用的地方就是构造器的重载。this,super关键字
super()关键字的用法 1,子类的成员方法中,访问父类的成员变量。 2,子类的成员方法中,访问父类的成员方法。3,子类的构造方法中,访问父类的构造方法。
this关键字用法: 1,本类成员方法中,访问本类的成员变量。 2,本类成员方法中,访问本类的另一个成员方法。3,本类的构造方法中,访问本类的另一个构造方法。
注意:this关键字同super一样,必须在构造方法的第一个语句,且是唯一的。this与super不能同时存在。