日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

java饲养员喂动物_做一个饲养员给动物喂食物的例子体现JAVA中的面向对象思想,接口(抽象类)的用处...

發布時間:2023/12/15 编程问答 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java饲养员喂动物_做一个饲养员给动物喂食物的例子体现JAVA中的面向对象思想,接口(抽象类)的用处... 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

做一個飼養員給動物喂食物的例子體現JAVA中的面向對象思想,接口(抽象類)的用處

interface Animal{

//動物的接口??? public void eat(Food food);

//接口中只有抽象的方法和靜態常量!這里void前面省略了abstract。同樣,變量可以省略static final}

class Cat implements Animal

//一種動物類:貓

{

public void eat(Food food)

//這里是對上面的接口中已經有的方法進行了覆蓋也叫重寫,這一步是必須的!??? {

System.out.println("小貓吃"+food.getName());

}

}

class Dog implements Animal

//一種動物類:狗{

public void eat(Food food)

//覆蓋??? {

System.out.println("小狗啃"+food.getName());

}

}

abstract class Food

//食物抽象類 。抽象類不能創建對象,這和C++一樣

{

protected String name;

public String getName() {

return name;

}

public void setName(String name) {

this.name = name;

}

}

class Fish extends Food

//一種食物類:魚,繼承了Food類

{

public Fish(String name) {

//構造函數????? this.name = name;

}

}

class Bone extends Food

//一種食物類:骨頭,繼承了Food類{

public Bone(String name) {

//構造函數

this.name = name;

}

}

class Feeder

//飼養員類 ,這是個很一般的類。。。

{

public void feed(Animal animal,Food food)

//飼養員給某種動物喂某種食物??? {

animal.eat(food);

}

}

public class TestFeeder

//測試飼養員給動物喂食物

{

public static void main(String[] args) {

//這里順便說下,只有在public類中才有main函數!一個這樣的程序中也只有一個public類!????? Feeder feeder=new Feeder();

Animal animal=new Dog();

//animal引用Dog類對象????? Food food=new Bone("肉骨頭");

//這里創建父類引用子類對象,用food引用Bone對象

feeder.feed(animal,food);

//給狗喂肉骨頭

animal=new Cat();

//這里又將animal引用Cat類的對象????? food=new Fish("魚");

//同樣,用food引用Fish類對象,這和上面一樣,充分體現了food和 animal只是兩個方便引用的名稱,是通過這兩個名稱來引用對象的????? feeder.feed(animal,food);

//給貓喂魚

}

}

/*接口和繼承有什么相似和不同,我只是模糊的了解一些,卻說不太出來,也希望老師在講解這部分的時候能詳細些。至于java中的繼承和C++的繼承一比較,會發現JAVA只

支持單繼承,即只能繼承一個父類,而c++卻能繼承多個父類!但通過接口,java可以實現多個接口,接口也可以繼承接口。

ps:將上面的題目接口的部分改成繼承也是可以的,很容易。。。如下abstract class Animal{

public abstract void eat(Food food);

}

class Cat extends Animal

{

public void eat(Food food)

{

System.out.println("小貓吃"+food.getName());

}

}

class Dog extends Animal? {? ??? public void eat(Food food)? ??? {? ????? System.out.println("小狗啃"+food.getName());? ??? }? }

總結

以上是生活随笔為你收集整理的java饲养员喂动物_做一个饲养员给动物喂食物的例子体现JAVA中的面向对象思想,接口(抽象类)的用处...的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。