javase学习目录——day13
包名1:com.lzg.exer
- FieldMethodTest.java:关于多态练习
编译看左边,运行看右边 - InterViewTest.java:考察多态笔试题等
包名2:com.lzg.exer1
定义一个测试类GeometricTest
- 编写equalsArea方法测试两个对象的面积是否相等(注意方法的参数类型,利用动态绑定技术)
- 编写displayGeometricObject方法显示对象的面积(注意方法的参数类型,利用动态绑定技术)
包名3:com.lzg.exer2
- 比较圆半径等练习
包名4:com.lzg.exer3
利用Vector代替数组处理:从键盘读入学生成绩(以负数代表输入结束),找出最高分,并输出学生成绩等级。
- 提示:数组一旦创建,长度就固定不变,所以在创建数组前就需要知道它的长度。
- 向量类java. util. Vector可以根据需要动态伸缩。
包名5:com.lzg.java
多态性:
面向对象特征之三:多态性
-
理解多态性:理解为一个事物的多种形态
-
何为多态性
对象的多态性:父类的引用指向子类的对象(或子类的对象赋给父类的引用) -
多态的使用:虚拟方法调用
虚拟方法调用:子类中定义了与父类同名同参数的方法,在多态情况下,将此时父类的方法称为虚拟方法,父 类根据赋给它的不同子类对象,动态调用属于子类的该方法。这样的方法调用在编译期是无法确定的。
有了对象的多态性以后,我们在编译期,只能调用父类中声明的方法,但在运行期,实际执行的是子类重写父类的方法
Person p1 = new Man() 编译看左,运行看右,new谁执行谁 -
多态性的使用前提: ①类的继承关系 ②方法的重写
-
对象的多态性,只适用于方法,不适用于属性
编译理解为栈空间的内容,运行是堆空间的内容
(文字于PersonTest.java)
包名6:com.lzg.java1
- ObjectTest.java:java.lang.Object类
- ToStringTest.java:Object类中toString()的使用
- EqualsTest.java:== 与 equals()的区别
- Customer.java:重写原则:比较两个对象的实体内容(即name和age是否相等)
包名7:com.lzg.java2
- JUnitTest.java:Java中的JUnit单元测试
- WrapperTest.java:包装类的使用
- InterViewTest.java:关于包装类的面试题
862

被折叠的 条评论
为什么被折叠?



