Java 三大特性
一、封装
1、封装是指将类的某些信息隐藏在类内部,不允许外部程序直接访问,而是通过该类提供的方法来实现对隐藏信息的操作和访问。
具体表现在set、get方法上
好处是只能通过规定的方法访问数据,隐藏类的实例细节,方便修改和实现。
2、访问修饰符:
默认:本类、同包下
public :所有
protected :本类、同包下以及子类
private :本类
3、this关键字
表示当前对象,经常用在set、get 方法中
二、继承
1、继承是类与类之间的关系,是 “ is a ” 的关系,用 extends 关键字,子类继承父类之后,天然拥有父类的属性和方法;
2、如果父类是用private 修饰的,子类就不能访问父类的信息,也就不能继承父类的属性和方法了;
3、子类对继承的父类方法“不满意”时,可以方法重写,调用时会优先调用重写的方法,重写的方法声明必须与父类完全一样才叫重写;
4、子类继承父类的初始化顺序:
先初始化父类再初始化子类;
顺序为 父类对象的属性 ----> 父类的构造方法 ------> 子类的属性 -----> 子类的构造方法
5、super 关键字:用在对象内部,代表父类对象;在子类构造方法中,有隐藏的一行super()方法,用于调用父类的无参构造方法;
如果父类写了带参的构造方法,那么子类构造方法中的第一行 必须显式调用父类带参构造方法。
三、多态
1、对象的多种形态
2、引用多态:
父类的引用可以指向本类的对象(创建本类对象),也可以指向子类对象(创建子类对象)。
要注意的是,子类引用不能指向父类对象(猫是动物,但是能说动物是猫吗?显然是不可以的)
3、方法多态:
创建本类对象时,调用的方法是本类方法;
创建子类对象时,调用的方法是子类重写的方法或者继承的方法;
--------------------------------------------------------------------------------------------------------------------------------------------------------------
白云苍狗时光飞,嘻嘻哈哈一生追。哈!