JAVA动物园喂动物小实例
生活随笔
收集整理的這篇文章主要介紹了
JAVA动物园喂动物小实例
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
假設動物園只有貓和狗兩類動物,貓吃小魚,狗吃骨頭,飼養員喂貓的時候貓會“喵喵喵”的叫,喂狗的時候狗會“汪汪汪”的叫。
根據需求,可以分為六個類文件,動物類,貓類,狗類,食物類,飼養員類,測試類
本實例主要是為了練習JAVA面向對象的繼承思想。
本實例總共分為六個類文件,總體結構如下圖:
以下是六個文件的代碼,因為本人菜,加了詳細的注釋,如果有誤,請在評論區指出,我會及時改正。
Animal.java
//創建抽象類Animal, public abstract class Animal {//聲明私有對象nameprivate String name;//創建構造方法public Animal(String name) {//設置成員變量this.name=name;}//聲明兩個抽象方法,只允許聲明,不允許實現public abstract void shout();public abstract void eat(Food food);//因為使用了private進行封裝對象,所以需要setget方法。public String getName() {return name;}public void setName(String name) {this.name = name;}}Feeder.java
//創建Feeder類 public class Feeder {//聲明對象namepublic String name;//創建構造方法public Feeder(String name) {this.name=name;}//創建沒有返回值的方法speak,用來輸出提示信息public void speak() {System.out.println("歡迎來到動物園!");System.out.println("我是飼養員"+getName());}//創建沒有返回值的方法feedpublic void feed(Animal a,Food food) {a.eat(food);}//因為使用了private進行封裝對象,所以需要setget方法。public String getName() {return name;}public void setName(String name) {this.name=name;}}Food.java
//創建Food類 public class Food {//使用private聲明私有對象nameprivate String name;//因為name對象使用private進行封裝,所以要用setget方法public String getName() {return name;}public void setName(String name) {this.name=name;}}Cat.java
//創建Cat類并用extends繼承父類Animal public class Cat extends Animal {//創建構造方法public Cat(String name) {//使用super調用父類中的構造函數namesuper(name);}//創建沒有返回值的方法shout,輸出貓的叫聲public void shout() {System.out.print("喵喵喵~~~");}//創建沒有返回值的方法eat,輸出貓吃東西的行為public void eat(Food food) {System.out.println(getName()+"正在吃著香噴噴的"+food.getName());}}Dog.java
public class Dog extends Animal {public Dog(String name) {super(name);}public void shout() {System.out.print("汪汪汪~~~");}public void eat(Food food) {System.out.println(getName()+"正在吃著香噴噴的"+food.getName());}}Test.java
//創建Test測試類 public class Test {//聲明main方法public static void main(String[] args) {//創建feeder對象并賦值Feeder feeder =new Feeder("小花");//調用feeder中的speak方法feeder.speak();//創建dog對象并賦值Dog dog = new Dog("小狗");//調用dog中的shout方法dog.shout();//創建food對象Food food = new Food();//為food對象添加屬性food.setName("骨頭");//調用feeder中的feed方法feeder.feed(dog, food);//創建cat對象并賦值Cat cat = new Cat("小貓");//調用cat中的shout方法cat.shout();//為food對象添加屬性food.setName("小魚");//調用feeder中的feed方法feeder.feed(cat, food);}}總結
以上是生活随笔為你收集整理的JAVA动物园喂动物小实例的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python基础进阶之堆糖头像爬虫
- 下一篇: 万代南梦宫假面骑士时尚品牌HENSHIN