编写程序模拟“主人”喂养“宠物”的场景,利用多态的思想。

简介: 编写Java程序模拟“主人”喂养“宠物”的场景,利用多态的思想。

编写Java程序


提示1:

主人类:Master

宠物类:Pet

宠物类子类:Dog、Cat、YingWu


提示2:

主人应该有喂养的方法:feed()

宠物应该有吃的方法:eat()

只要主人喂宠物,宠物就吃。


要求:主人类中只提供一个喂养方法feed(),要求达到可以喂养各种类型的宠物。


编写测试程序:

创建主人对象

创建各种宠物对象

调用主人的喂养方法feed(),喂养不同的宠物,观察执行结果。


通过该案例,理解多态在开发中的作用。

重要提示:feed方法是否需要一个参数,参数选什么类型!!!


//主人类
class Master{
//多态思想
  public void feed(Pet p){ //主人喂养宠物
    p.eat(); //宠物吃
  }
}
//宠物类,所有宠物的父类
class Pet{
  //宠物有吃东西的方法
   public void eat(){
   }
}
//狗类
class Dog extends Pet{
  public void eat(){
    System.out.println("狗喜欢吃骨头");
  }
}
//猫类
class Cat extends Pet{
  public void eat(){
    System.out.println("猫喜欢吃鱼");
  }
}
//鹦鹉类
class YingWu extends Pet{
  public void eat(){
    System.out.println("鹦鹉喜欢吃虫子");
  }
}


public class Text{
  public static void main(String[] args){
    Master m=new Master();//创建主人对象
    m.feed(new Dog()); //主人喂养狗,狗就吃
    m.feed(new Cat());
    m.feed(new YingWu());
  }
}


相关文章
|
10月前
|
存储 算法 程序员
代码之韵:编程中的诗意与逻辑
在数字的世界里,每一行代码都如同诗句般细腻而富有节奏感。本文将探讨编程不仅仅是一门科学或技术,更是一种艺术形式,它融合了逻辑思维的严谨和创造力的灵动。我们将通过分析编程的核心概念,如变量、控制结构、函数等,来揭示它们背后的美学原则和哲学思考。同时,我们还将讨论如何在日常的编程实践中寻找和创造美感,以及这种美感如何影响我们的工作效率和产品的用户体验。
|
设计模式 监控 Java
案例18-面向对象之开门小例子
面向对象之开门小例子
141 0
|
安全 C#
案例18-案例开门小例子面向对象演化
案例18-案例开门小例子面向对象演化
|
算法
11 类和对象练习之扑克模拟
11 类和对象练习之扑克模拟
117 0
|
Java 领域建模
java面向对象思维程序设计开发以及案例 -电梯运行问题对象分析与程序设计(1)
java面向对象思维程序设计开发以及案例 -电梯运行问题对象分析与程序设计(1)
java面向对象思维程序设计开发以及案例 -电梯运行问题对象分析与程序设计(1)
|
Java 测试技术
java面向对象思维程序设计开发以及案例 -电梯运行问题对象分析与程序设计(2)
java面向对象思维程序设计开发以及案例 -电梯运行问题对象分析与程序设计(2)
java面向对象思维程序设计开发以及案例 -电梯运行问题对象分析与程序设计(2)
|
存储 编译器 C语言
C++类和对象:面向对象编程的核心。| 面向对象还编什么程啊,活该你是单身狗。
C++类和对象:面向对象编程的核心。| 面向对象还编什么程啊,活该你是单身狗。
C++类和对象:面向对象编程的核心。| 面向对象还编什么程啊,活该你是单身狗。
|
存储 编译器 C++
初阶后的C++ 第七节 —— 多态
注意虚表存的是虚函数指针,不是虚函数,虚函数和普通函数一样的,都是存在代码段的,只是他的指针又存到了虚表中。另外对象中存的不是虚表,存的是虚表指针。
119 0
初阶后的C++ 第七节 —— 多态
|
设计模式 关系型数据库 Scala
咖啡店的项目引出装饰者模式 | 学习笔记
快速学习咖啡店的项目引出装饰者模式
咖啡店的项目引出装饰者模式 | 学习笔记
|
机器学习/深度学习 Java
Java面向对象程序设计综合练习3(程序填空题)
Java面向对象程序设计综合练习3(程序填空题)
161 0
Java面向对象程序设计综合练习3(程序填空题)