【java基础】--(2)面向对象特征之概念、封装、继承
1、面向对象:将事物抽象成类和对象,由于对象具有自己的状态和行为,程序通过对象对消息的反映来完成特定的任务。2、封装2.1、定义:
隐藏对象的属性和实现细节,仅对外公开接口,控制在程序中属性的读取和修改的访问级别。
封装就是将抽象得到的数据和行为(或功能)相结合,形成一个有机的整体,也就是将数据与操作数据的源代码进行有机的结合,形成“类”,其中数据和函数都是类的成员。
是增强安全性和简化编程,使用者不必了解具体的实现细节,而只是要通过外部接口,以特定的访问权限来使用类的成员。
3.1、继承的定义:
1、在一个类基础上定义一个新类叫继承,原有的类叫父类,新生成的类叫子类。
2、一个父类可以有多个子类,一个子类只能有一个父类。
1、子类拥有父类的属性和方法
2、子类可以有自己新的属性和方法
3、子类可以重写(覆盖)父类的方法
4、可以声明父类,创建子类
(1)声明的什么类型,就只能调用本类型的属性和方法
(2)创建的什么类型,运行什么类型的方法
(3)创建的什么类型,就可以强转为什么类型
其实this 与super 很简单,this 表示调用自己声明的属性和方法,super表示调用父类声明的属性和方法。
1、创建对象一定会调用构造方法
2、创建子类对象一定会调用父类的构造方法
3、子类默认调用父类无参构造方法
4、子类只能调用父类存在的构造方法
5、子类构造方法中使用super 调用父类构造方法,并且super 必须放在第一行
6、构造方法中this 表示调用本类其他构造方法,并且this 必须放在第一行
JAVA 规定,如果某个类没有父类,那它就默认的继承自Object 类,也就是说,Object是java 体系所有类的直接或间接父类。
根据子类可以拥有父类的属性和方法,所以所有java 类拥有可以从Object 继承的属性和方法。
这样,当SUN 要给java 添加新功能时,只要修改Object 类就可以了,这也体现了继承的一个优点。