java中的多态
来源:互联网 发布:java中this的用法 编辑:程序博客网 时间:2024/06/03 17:18
java中的多态
- 引用多态
- 方法多态
引用多态
父类的引用可以指向本类的对象
父类的引用可以指向子类的对象
即父类的引用既可以指向本类又可以指向子类,这就是多种形态。我们把这种形式就叫做多态。
package com.yxm;public class Animal {}
package com.yxm;//继承是多态的实现基础public class cat extends Animal {}
package com.yxm;public class Initail { public static void main(String[] args) { Animal obj1=new Animal();//父类的引用指向本类的对象 Animal obj2=new cat();//父类的引用指向子类的对象 // cat obj3=new Animal();//子类的引用不能指向父类的对象 }}
方法多态
创建本类对象时,调用的方法为本类的方法
创建子类对象时,调用的方法为子类重写或继承的方法
如果我们创建的对象是父类的本类对象,我们调用的方法肯定是父类的方法;
如果我们创建的对象是父类的子类的对象,我们调用的方法肯定是子类重写或继承的方法。
package com.yxm;public class Initail { public static void main(String[] args) { Animal obj1=new Animal();//父类的引用指向本类的对象 Animal obj2=new cat();//父类的引用指向子类的对象 // cat obj3=new Animal();//子类的引用不能指向父类的对象 Animal obj4=new Dog(); obj1.eat(); obj2.eat(); obj4.eat(); // obj4.watchDoor();//不能通过父类的引用调用子类独有的方法 }}
package com.yxm;public class Animal { public void eat(){ System.out.println("动物具有吃东西的能力!"); }}
package com.yxm;//继承是多态的实现基础public class cat extends Animal { public void eat(){ System.out.println("猫可以吃素。"); }}
package com.yxm;public class Dog extends Animal { public void watchDoor(){ System.out.println("狗具有看门的能力"); }}
注意
继承是多态的实现基础
子类的引用不能指向父类的对象
不能通过父类的引用调用子类独有的方法
阅读全文
0 0
- Java 中的多态
- java中的多态
- java中的多态
- Java中的多态
- Java中的多态
- Java中的多态
- Java 中的多态
- java中的多态
- java中的多态
- Java中的多态
- Java 中的多态
- Java中的多态
- Java中的多态
- java中的多态
- Java中的多态
- java中的多态
- java中的多态
- Java中的多态
- Spring MVC 处理返回值乱码
- vue拦截器
- 开关按钮
- Android EditText 过滤空格后长度限制失效的解决办法
- 关于按钮单击事件
- java中的多态
- cnn for sentence
- input开关按钮
- PHP中this,self,parent 三个关键字之间的区别
- 欢迎使用CSDN-markdown编辑器
- Clion配置dlib库 for Mac OS X
- 与陈总之创业交流
- (已更新)获取CSDN访问量、排名等信息存入JSON文件并绘图进行分析
- vs2013快速定位一个函数或者变量或者类的快捷键