多态理解及程序
来源:互联网 发布:论文数据造假有人查吗 编辑:程序博客网 时间:2024/04/29 23:43
定义:某一类事物的多种存在形态
体现:父类或者接口的引用指向或者接收自己的子类对象。
作用:多态的存在提高了程序的扩展性和后期可维护性
多态:体现在对象的差异性 父子类之间要继承覆盖
public class DuotaiDemo {public DuotaiDemo() {
}
public static void method(Animal animal)
{
animal.eat();
animal.run();
animal.roar();
}
public static void main(String[] args) {
/*多态体现代码*/ //特点:同一方法,不同对象输出,产生不能效果
method(new Dog());//自动类型提升
method(new Wolf());
/* 转型体现代码 */
Animal a=new Dog();//自动类型提升,但是特有功能不能访问
a.eat();//a.gentlt(); 不能访问 限制特有功能的访问 专业名词:向上提升
Dog d=(Dog)a;//向下转型 为了使用子类中的特有方法
d.gentle();//可以访问特有功能
}
}
abstract class Animal //定义一种规则 向上抽取一种抽象的共性
{
abstract void roar();//两个抽象方法,一个具体方法
public void run(){
System.out.println("run");
}
abstract void eat();
}
class Dog extends Animal //继承 重写覆盖
{
public void roar()
{
System.out.println("吼叫汪汪");
}
public void eat()
{
System.out.println("吃屎");
}
public void gentle() //特有属性
{
System.out.println("温和");
}
}
class Wolf extends Animal //继承 覆盖
{
public void roar()
{
System.out.println("吼叫嗷嗷");
}
public void eat()
{
System.out.println("吃肉");
}
}
0 0
- 多态理解及程序
- 我的第一个Android程序helloword及个人理解
- java多线程售票程序实例及synchronized理解
- Java程序中函数的理解及应用
- kalman滤波的相关理解及MATLAB程序注解
- 关于rospy 中service的理解及例子程序
- 程序中的别里可夫---.net多态概念理解
- 理解程序
- C++多态理解及多态对象模型探索
- 理解C++的多态原理及实现
- Java中多态转型的问题理解及多态概述
- java多态的理解及深入认识
- 深入理解php多态及代码演示
- C++多态及虚函数的理解和使用
- 关于Java 多态的理解及案例
- objective C程序 封装、继承及多态
- 学习Java程序制作Jar、exe和安装包过程中的问题记录及理解
- 关于DSP哈佛结构的数据空间和程序空间及CMD文件的理解
- SpringMVC的配置
- iOS开发中如何用Swif重写cell的frame方法
- poj 3348
- Android提醒微技巧,你真的了解Dialog、Toast和Snackbar吗?
- hibernate5.1 配置postgres的数据库表映射文件
- 多态理解及程序
- 10 000小时的标准----是否有先天的才能
- poj3041
- unity3d中使用状态机
- 实现退出功能
- apk反编译xml文件
- 102. Binary Tree Level Order Traversal
- [转]Java多态之Override
- 浅析CA证书