Java 基础
来源:互联网 发布:网络伤感情歌2016 编辑:程序博客网 时间:2024/06/05 03:28
/*1多态的体现父类的引用也可以接受自己的子类2多态的前提 必须是类与类之间有联系,要么是继承要么是实现。 通常要覆盖3多态的好处 很好的提高代码的扩展性4多态的应用5多态的弊端提高了扩展性,但是只能使用父类的引用访问父类中的成员。6.多态的*/abstract class Animal{int num=9; abstract void eat();}class Cat extends Animal{int num=112;public void eat(){ System.out.println("eat fish");}public void catchfish(){ System.out.println("catch fish");}}class Dog extends Animal{public void eat(){System.out.println("eat Bone");}public void lookHome(){System.out.println("look home");}}class Pig extends Animal{public void eat(){System.out.println("eat food");}public void sleep(){System.out.println("can sleep");}}class Duotaidemo {public static void main(String[] args) {//Cat c=new Cat();//c.eat();function(new Dog());function(new Cat()); Animal a=new Cat(); a.eat(); /* 在多态中非静态成员函数的特点: 在编译时期:参阅引用型变量(a)所属的类中是否有调用的方法,如果有,则编译通过,否则失败 在运行时期:参阅对象所属的类中调用的方法(new Cat()) 简单总结:编译看左边,运行看右边。 注意:1.。在多态中成员变量的特点: 无论编译和运行,都参考左边(引用类型所属的类) 2.。在多态中static成员函数的特点:无论编译和运行。都参考左边(引用类型所属的类) */}public static void function(Animal a){ a.eat(); if(a instanceof Cat){ Cat c=(Cat)a;c.catchfish(); }else if(a instanceof Dog){ Dog d=(Dog)a; d.lookHome();}else {Pig p=(Pig)a;p.sleep();}}}
1 0
- Java基础01:基础
- Java基础:基础加强
- Java基础-基础
- java基础的基础
- JAVA基础---基础常识
- Java基础:基础加强
- [Java 基础]基础语法
- Java基础
- java基础
- java 基础
- java基础
- Java基础
- Java基础
- Java基础
- JAVA基础
- JAVA基础
- JAVA基础
- java基础
- Gradle 调用java
- HDOJ 5204 Rikka with sequence
- hbase命令梳理
- dedecms 文章按权重排序问题
- java 使用comet4j向客户端主动推送例子
- Java 基础
- 2016年高考分数线哪个省最最最高最最最低-竟然是它???
- android ndk编译jni的配置
- 【Android---项目中】TextView设置字体样式及粗细
- MFC-窗口-显示状态设置的三种方法
- java文件打成jar包的方法
- Python:进程与进程池
- 怎么解决java.lang.NoClassDefFoundError错误
- 如何添加一个文件/目录到IntelliJ项目的classpath中