封装:

封装实际上使用方法将类的数据隐藏起来,控制用户对类的修改和访问数据的程度。 适当的封装可以让程式码更容易理解和维护,也加强了程式码的安全性。

访问修饰符有public,private,protected,默认四种。

通过private将类封装起来,防止被随意更改,通过写public的get,set方法让别人调用。

继承:

关键词:extends。 可以把父类中的相关内容直接继承到子类,子类就不需要再重新定义。private中的无法被继承;public,protected可以被继承;默认的只有在当前包中可以被继承。

Java是单继承,也就是一个子类只能有一个直接父类。

例如:DengPao继承Deng,DengPao可以使用Deng中定义的方法。

继承的实例化次序:
当我们实例化一个子类的时候。先实例化父类,再实例化子类。

父类的成员定义--父类的构造函数--子类的成员定义-- 子类的构造函数。

带有构造函数的继承:
如果父类中带有无参构造函数。子类构造函数,按照正写法即可。
如果父类中没有无参构造函数,只有有参构造。在子类构造函数的第一行,必须用super()给父类构造传递参数,调用父类构造。
super -- 一般两种用法:用来调用父类的构造。另一种是用来用调父类被覆盖的方法。

方法的重写:
子类可以对父类的成员进行扩展,还可以进行重写。
子类的方法与父类的方法重名了,默认情况下子类的方法重写覆盖父类的方法。如果要显式调用父类的成员,需要使用super.XXXX()来调用父类的成员。

override,overload什么区别?
override,重写。子类方法覆盖了父类的方法。
overload,重载。函数名相同,参数不同。
它两个都是实现多态的途径。重写(override)-动态多态。重载(overload)-静态多态。