面向对象-转型
来源:互联网 发布:人工智能 在线 编辑:程序博客网 时间:2024/05/16 14:29
package polymorphic;
/*
多态-扩展性
*/
f( new Description());//这是猫叫方法
//f( new Dog ());//这是狗叫的方法
}
}
}
}
abstract class Animal{//动物类
public abstract void call ();//动物叫的方法 抽象的!
}
class Description extends Animal{ //描 动物类
public void call (){
System.out.println("猫叫 苗 苗");
}
public void eat(){
System.out.println("猫吃鱼");
}
}
class Dog extends Animal{//狗 动物类
public void call (){
System.out.println("狗叫 旺旺");
}
public void eat(){
System.out.println("狗吃 骨头");
}
public void Housekeeping(){
System.out.println("狗 看家");
}
}
/*
// 总结:对于多态 是同一个行为有多个指向, 比如动物分为: 狗 猫 ... 如果动物向上抽取、
哺乳动物啊! 爬行动物啊!....
他们是不是都指向小说这个类
*/
public class Polymorphic {
/*
多态-扩展性
多态:比如动物 狗 猫 他们的叫的方法 不同所以是抽象的!
1.定义 Animal动物类为父类
2.创建 Description类 然后继承Anima类 重写方法
*/
f( new Description());//这是猫叫方法
//f( new Dog ());//这是狗叫的方法
}
public static void f(Animal a){
Animal a = new call(); //吃的方法
a.call();//调用吃的方法
if(a instanceof Dog){
Dog c=(Dog)a ;//类型转换
c.Housekeeping();
}else if(a instanceof Description){
Description c=(Description)a ;//类型转换
}
}
}
abstract class Animal{//动物类
public abstract void call ();//动物叫的方法 抽象的!
}
class Description extends Animal{ //描 动物类
public void call (){
System.out.println("猫叫 苗 苗");
}
public void eat(){
System.out.println("猫吃鱼");
}
}
class Dog extends Animal{//狗 动物类
public void call (){
System.out.println("狗叫 旺旺");
}
public void eat(){
System.out.println("狗吃 骨头");
}
public void Housekeeping(){
System.out.println("狗 看家");
}
}
/*
// 总结:对于多态 是同一个行为有多个指向, 比如动物分为: 狗 猫 ... 如果动物向上抽取、
哺乳动物啊! 爬行动物啊!....
还有一个例子跟大家分享:
比如 :小说类 是不是有很多不同的小说啊!可以定义为抽象的!
例如:历史 ,灵异 ,言情.....他们是不是都指向小说这个类
*/
阅读全文
0 0
- 面向对象-转型
- 面向对象之成功转型
- java面向对象之向上转型和向下转型
- 面向对象_多态中向上转型和向下转型
- java面向对象-多态(概要、扩展性、转型)
- Java面向对象 多态-向上转型
- 05-面向对象(多态-转型)1 05-面向对象(多态-转型)2 05-面向对象(多态-转型)3 05-面向对象(多态-转型)4
- 第03章 面向对象 37 对象转型1
- 第03章 面向对象 38 对象转型2
- java基础总结13-面向对象9(对象转型)
- 面向对象中的多态,对象的向上转型和向下转型
- Java面向对象作业-用接口方式测试向下转型
- 天耀18期 -08.面向对象-上转型【作业】
- 重新认识java(五) ---- 面向对象之多态(向上转型与向下转型)
- 对象转型
- 对象转型
- 对象转型
- 对象转型
- 内存操作经典问题分析
- 137.Single Number II
- 小组讨论汇总
- 12.2的日记
- python异步IO的发展历程
- 面向对象-转型
- 程序员必知之浮点数运算原理详解
- CentOS7修改网卡名称
- 好好学习,天天向上1
- 数组去重
- NOIP2017+停课总结
- xiaoji
- 分布式-集群-负载均衡
- Mongo shell:最强大的 MongoDB 管理工具