目录
虚拟方法的调用(Virtual Method Invocation)
此笔记包含
继承性(extends)
意义:
1.减少代码的冗余,提高代码的复用性
2.便于功能的扩展
3.为之后的多态提供了前提
格式:
子类继承父类以后,还可以声明自己的属性或方法,方法功能的扩展,使子类的功能更强大。
JAVA的单继承性
Java中继承的规定
Object类说明
Debug调试—操作(eclipse)
方法的重写
方法的重写说明
方法中都是静态(static)或都是非static
四种权限修饰
关键字使用:Super
Super调用构造器
子类实例化的全过程:
面向对象的多态性
多态性的使用:
对象的多态性:父类的引用指向子类对象
Person p = new Man( );
多态的使用:当调用子父类同名同参数的方法时,实际上执行的时子类重写父类的方法
—虚拟方法调用,对象的多态性只使用于方法不适用于属性()
何为多态
对象的多态性:父类的引用指向子类的对象(或子类的对象赋给父类的引用)
多态的使用:虚拟方法调用
有了对象的多态性后,我们在编译期,只能调用父类的方法,但在运行期,我们实际上运行的是子类重写父类的方法。
总结:编译看左边,运行看右边
多态使用的前提:
①类的继承关系
②方法的重写
虚拟方法的调用(Virtual Method Invocation)
虚拟方法调用理解:
方法的重载和重写
Instanceof操作符
对象的转型
有了对象的多态性以后,内存中实际上是加载了子类的属性和方法,但是由于变量声明为父类类型,导致编译时,只能调用父类中声明的方法。子类特有的方法和属性不能调用。
Instanceof关键字使用
使用情景
为了避免在向下转型时出现ClassCastException的异常,我们在向下转型前,先进性instanceof的判断,一旦返回true,就向下转型,反之则不转型
不相关的两个类不可互相转型多态是运行时行为
编译器认为int…arr 和int[]arr是相同的
Object类的使用
OBject类说明:
Object类中的主要结构
==和equals区别
Equals()方法的使用
手动重写equals方法
比较引用数据实体内容,实际开发中通过eclipce调用现成的方法
补充
==符号使用时,必须使等号两边的数据类型一致
equals方法重写的原则
垃圾回收机制
在回收前都会调用finalize
Tostring方法使用
说明
手动重写tostring
单元测试方法-使用
JAVA中的JUnit单元测试
包装类(Wrapper)的使用
包装类的装箱的拆箱
总结: 基本数据类型,包装类与String类间的转换
具体操作(包装类与String类间的转换)
包装类 JDK5.0以后新特性
自动装箱和自动拆箱
自动装箱 —基本数据类型到包装类
//自动拆箱
基本数据类型,包装类—>String
(调用valueof xxx)
String —>基本数据类型
包装类测试
编译时就进行了自动类型提升
Int—–>double
上述说明:
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/154597.html