java--Day3-多态and包

发布时间:2026/6/25 12:41:34
java--Day3-多态and包 多态同类型的对象表现出的不同形态多态的表现形式父类类型 对象名称子类对象多态的前提有继承extends/实现implements关系有父类引用指向子类对象例如:Fu fnew Zi();有方法重写多态的好处使用父类作为参数可以接收所有子类对象体现多态的扩展性与便利多态调用成员的特点 调用--成员变量时:编译看左边运行也看左边 调用--成员方法时:编译看左边运行看右边多态的弊端不能调用子类的特有功能解决方案强制类型转换–变回子类类型就可以了例如Dog d(Dog)a;if转换类型与真实对象类型不一致会报错JDK14新特性 先判断a是否为Dog类型如果是则强制转换成Dog型转换之后变量名为d if不是则不强制转换结果直接是false 示例 if(a instanceof Dog d){ d.lookHome(); } else if(a instanceof Cat c){ c.catchMouse(); } else{ System.out.println(没有这个类型无法转换); }转换的时候用instanceof关键字进行判断包–就是文件夹用来管理各种不同功能的Java类需要全部英文小写见名之意使用其他类的规则 使用同一个包中的类时不需要导包 使用java.lang包中的类时,不需要导包 其他情况都需要导包 如果同时使用两个包中的同名类需要用全类名(即包名类名)