java 多态特性
来源:互联网 发布:js系列减速机加油标准 编辑:程序博客网 时间:2024/05/17 06:22
java 多态特性一。对象的多态特性1.引用多态 父类的引用可以指向本类的对象 父类的引用可以指向子类的对象
2.方法多态创建本类对象时,调用本类的方法创建子类对象时,调用的方法为子类的重写方法或者继承的方法(不能调用子类独有的方法)public class Animal { public void eat() {System.out.println("动物具有吃的能力"); }}public class Dog extends Animal {public void eat() {System.out.println("狗吃肉");} public void watchDoor() {System.out.println("狗看门");}}package DuoTai;public class Cat extends Animal {}public class Initial {public static void main(String[] args) {Animal obj1 = new Animal();Animal obj2 = new Dog();//Dog obj3 = new Animal() ; 错误:子类的引用不能指向父类的对象 obj1.eat(); obj2.eat(); //obj2.watchDoor(); 错误:不能调用子类独有的方法}}输出结果:
二。引用类型转换
向上类型转化(隐式/自动)无风险
向下类型转换 有风险
利用 instanceof 运算符来避免运算符转换的安全性问题
public class Initial {public static void main(String[] args) {/*Animal obj1 = new Animal();Animal obj2 = new Dog();//Dog obj3 = new Animal();错误子类的引用不能指向父类的对象 obj1.eat(); obj2.eat(); //obj2.watchDoor(); 不能调用子类独有的方法*//** * 多态类型中的引用类型转换 */Dog dog = new Dog();Animal animal = dog;//向上类型转换Dog dog2 = (Dog) animal; //向下类型转换(强制类型转换)if (animal instanceof Cat) {Cat cat = (Cat) animal; //编译时为cat类 ,运行为dog类 ,所以运行报错}else {System.out.println("无法进行类型转化!");}}}
输出结果:
阅读全文
0 0
- Java多态特性
- java多态特性
- Java特性多态
- java 多态特性
- JAVA的多态特性
- JAVA多态成员特性
- java多态的特性
- java的多态特性
- java 多态的特殊特性
- JAVA特性多态之覆盖
- java特性之多态
- Java特性之多态详解
- JAVA四大特性之多态
- 大脑烧糊的java多态特性!
- Java的特性—封装、继承和多态
- java三大特性之继承和多态
- java四大特性理解(封装继承多态抽象)
- Java多态特性:重载和覆写的比较
- Java面向对象思想
- oracle 锁表解决方法
- 字符串反转几种方法
- ThinkPHP中MVC代码范例
- 未“起飞”就倒闭?共享充电宝企业“乐电”逃之夭夭
- java 多态特性
- ADB命令抓取Android LogCat
- hdu 6031 Innumerable Ancestors lca + 二分
- ORM框架之GreenDao3.0使用详解(二)
- 矩阵计算
- padding实现居中
- Java 5种方法实现生产者消费者问题与2种方法实现读者写者问题
- 为啥我的Python这么慢 (一)
- se_lab4