Java 多态
来源:互联网 发布:sql server卸载干净 编辑:程序博客网 时间:2024/06/07 05:03
对象的多种行态
1.引用多态:
父类的引用可以指向本类的对象
父类的引用可以指向子类的对象
使用多态的时候两个lei必须有个继承关系
public class Animal {public void speak() {System.out.println("我是会说话的动物类");}}
public class Dog extends Animal {}
public class ZooTest {public static void main(String[] args) {// TODO Auto-generated method stub//Animal类是父类.他创建的对象 可以指向本类Animal类也可以指向Dog类Animal obj1=new Animal();Animal obj2=new Dog();//子类的引用不能指向父类//Dog dog=new Animal(); 错误的写法//打印输出System.out.println(obj1.getClass());System.out.println(obj2.getClass());}}
结果:
class Animal
class Dog
2.方法多态:
创建本类的对象时,调用的方法为本类的方法
创建子类对象时,调用的方法为子类重写的方法
建一个动物类
public class Animal {public void speak() {// TODO Auto-generated method stubSystem.out.println("我是会说话的动物类");}}
建一个狗类继承动物类:
public class Dog extends Animal {public void speak() {System.out.println("我是说梦话的狗");}public void eatSoup() {System.out.println("狗会喝汤");}}建一个cat猫类
public class Cat extends Animal {}
建一个测试类:
public class ZooTest {public static void main(String[] args) {//Animal类是父类.他创建的对象 可以指向本类Animal类也可以指向Dog类Animal obj1=new Animal();Animal obj2=new Dog();Animal obj3=new Cat();//子类的引用不能指向父类//Dog dog=new Animal(); 错误的写法//打印输出obj1.speak();//动物类的方法obj2.speak();//狗类说话了obj3.speak();//子类继承父类动物类的说话方法//此时obj2不能调取 Dog里独有的eatSoup喝汤方法 (父类的引用调用子类的私有方法)}}打印结果:
我是会说话的动物类我是说梦话的狗我是会说话的动物类
阅读全文
0 0
- Java学习 java -- 多态
- java多态
- java多态
- java多态
- java多态
- Java多态
- java多态
- JAVA@多态
- Java多态
- java 多态
- Java多态
- java多态
- [Java] 多态
- JAVA多态
- Java多态
- java多态
- java 多态
- java多态
- 《统计学习方法》笔记之---决策树
- 用Java打开记事本
- UCGUI学习之路(3)增加其它字体
- 二叉树
- 190. Reverse Bits
- Java 多态
- spring mvc 异常统一处理方式
- mysql基本操作快速复习(二)
- 小牛电动25日开媒体见面会,豪言改变两亿人!
- 腾讯众创空间孵出首个“独角兽”企业 微票儿完成C轮融资15亿
- Mac segmentation fault :11
- 秒杀美国的Lily无人机?中国智造这回真火了!
- 搜狗输入法再诉百度索赔1.8亿元 百度侵权背后是对创新的漠视
- netty源码分析(十二)Channel与ChannelHandler及ChannelHandlerContext之间的关系分析