重载,重写,封装,继承,多态 等。
2014-06-21 22:21
218 查看
封装是指将对象的状态信息隐藏砸组对象内部,可通过访问控制级别(public private protect default)达到封装目的。
继承是实现软件复用的重要手段。 Java里用extends表继承,extends为扩展的意思,子类不仅有父类的成员变量和方法,还可以有自己的方法,所以用extends表继承是个不错的选择。derive是派生的意思,extend和derive描述的是同一个动作,只是观察者角度不同而已。
overload重载:参数列表不同(参数类型和个数不同)
override重写:“两同两小一大”
两同:方法名和形参列表相同
两小:子类返回值类型比父类返回值类型要小或相等
子类方法抛出的异常类比父类抛出的异常类要小或相等
一大:子类方法访问权限比父类访问权限要大
重写的方法要么都是类方法,要么是实例方法,不能一个是类方法一个是实例方法。
多态:有继承,有重写,父类引用指向子类对象
Java允许把一个子类对象直接赋给父类引用变量,不需要转换类型,称作向上转型。
BaseClass polymophicBc = new SubClass();
BaseClass 是编译时类型(即声明类型),Subclass是运行时类型。当运行时调用该引用变量的方法时,其方法行为总是表现子类方法的行为特征,而不是父类的,
对象的Field不具备多态性,方法才有多态性。
通过引用变量来访问其包含的实例Field时,系统总是试图访问它编译时所定义的Field,而不是它运行时类型所定义的Field。
引用变量在编译阶段只能调用其编译时类型所具有的方法。即使它实际引用的对象确实包含该方法,编译是无法通过的。
继承是实现软件复用的重要手段。 Java里用extends表继承,extends为扩展的意思,子类不仅有父类的成员变量和方法,还可以有自己的方法,所以用extends表继承是个不错的选择。derive是派生的意思,extend和derive描述的是同一个动作,只是观察者角度不同而已。
overload重载:参数列表不同(参数类型和个数不同)
override重写:“两同两小一大”
两同:方法名和形参列表相同
两小:子类返回值类型比父类返回值类型要小或相等
子类方法抛出的异常类比父类抛出的异常类要小或相等
一大:子类方法访问权限比父类访问权限要大
重写的方法要么都是类方法,要么是实例方法,不能一个是类方法一个是实例方法。
多态:有继承,有重写,父类引用指向子类对象
Java允许把一个子类对象直接赋给父类引用变量,不需要转换类型,称作向上转型。
BaseClass polymophicBc = new SubClass();
BaseClass 是编译时类型(即声明类型),Subclass是运行时类型。当运行时调用该引用变量的方法时,其方法行为总是表现子类方法的行为特征,而不是父类的,
对象的Field不具备多态性,方法才有多态性。
通过引用变量来访问其包含的实例Field时,系统总是试图访问它编译时所定义的Field,而不是它运行时类型所定义的Field。
引用变量在编译阶段只能调用其编译时类型所具有的方法。即使它实际引用的对象确实包含该方法,编译是无法通过的。
相关文章推荐
- 类、对象、继承、封装、多态、方法的重载和重写、Java的访问修饰符与其它关键字
- Day2 面向对象(封装·继承·多态·重载·重写)
- 对象之间的通信,面向对象的三大特征,封装,继承,多态;以及重写,重载
- php部分--面向对象三大特性-封装(另加连续调用的一个例子)、继承(重写、重载的例子)、多态;
- 从重载与重写来看OOP的三大特性:继承、多态、封装。
- 构造,封装,继承,多态,重载,重写,接口
- 封装,继承,多态,重载,重写和泛型详解(附图)-
- php 面向对象的三大要素(封装、继承、多态)以及重写(override)和重载(overload)的举例说明
- java的重写、重载以及继承、多态和封装
- 封装继承多态_继承重写重载
- java封装 继承 多态 重写 重载
- Java之封装、继承、多态(重载、重写)
- java 继承中的重写、重载、多态
- Java中继承,多态,重载,重写
- 重载,继承,重写和多态的区别
- [Java]重载,重写以及继承,多态的区别
- 重载,继承,重写和多态的区别:
- 【C/C++学院】(10)重载与重写/多态的深入/多继承接口
- 详解继承、多态、重载和重写
- JAVA面试题解惑系列(九)——继承、多态、重载和重写