亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

請問這題怎么做

一)在base包中


   編寫動物(Animal)接口,定義抽象方法

   eat(),sleep(),show()


   定義一個抽象類 哺乳動物 Mammal,實現Animal接口(但是暫不實現它的三個抽象方法),在這個抽象類中增加milk吃奶的抽象方法

   

   定義一個抽象類 爬行動物 Reptile ,實現Animal接口(但是暫不實現它的三個抽象方法),在這個抽象類中增加crawl 爬行的抽象方法。


(二)在utility包中


   定義 Person,Monkey,Cat,Dog,繼承Mammal,實現其所有方法,每個類中定義兩個屬性,提供兩個構造函數,提供打印輸出的方法show(),輸出動物的屬性;


   定義 Snake,Crocodile,繼承Reptile,實現其所有方法,每個類中定義兩個屬性,提供兩個構造函數。提供打印輸出的方法show(),輸出動物的屬性。


(三)在javastudy包中,定義一個類Test1,


   定義一個長度為6的Animal數組,分別存放以上的每一種動物,循環取出每個動物,調用其方法。要求所有方法都要被調用到【eat,sleep,show,milk,crawl】,其中要用到instanceof,把代碼寫到精簡。


正在回答

2 回答

代碼:
//Animal.java
package?base;
public?interface?Animal?{
???public?abstract??void?eat();
???public?abstract??void?sleep();
???public?abstract??void?show();
}

//Mammal.java
package?base;
public?abstract?class?Mammal?implements?Animal{
????public?abstract?void?milk();
}

//Reptile.java
package?base;
public?abstract?class?Reptile?implements?Animal?{
????public?abstract?void?crawl();
}

//Cat.java
package?utility;
import?base.Mammal;
public?class?Cat?extends?Mammal?{
????private?String?species;
????private?String?keyLink;
????public?Cat(){
????????species="Cat";
????????keyLink="Mammal";
????}
????public?Cat(String?species,String?keyLink){
????????this.species=species;
????????this.keyLink=keyLink;
????}
????public?void?eat(){System.out.println(species+"?is?eating.");}
????public?void?sleep(){System.out.println(species+"?is?sleeping.");}
????public?void?milk(){System.out.println(species+"?is?drinking?milk.");}
????public??void?show(){
????????System.out.println("species:"+species);
????????System.out.println("key?link:"+keyLink);
????}
}

//Dog.java
package?utility;
import?base.Mammal;
public?class?Dog?extends?Mammal?{
????private?String?species;
????private?String?keyLink;
????public?Dog(){
????????species="Dog";
????????keyLink="Mammal";
????}
????public?Dog(String?species,String?keyLink){
????????this.species=species;
????????this.keyLink=keyLink;
????}
????public?void?eat(){System.out.println(species+"?is?eating.");}
????public?void?sleep(){System.out.println(species+"?is?sleeping.");}
????public?void?milk(){System.out.println(species+"?is?drinking?milk.");}
????public??void?show(){
????????System.out.println("species:"+species);
????????System.out.println("key?link:"+keyLink);
????}
}

//Monkey.java
package?utility;
import?base.Mammal;
public?class?Monkey?extends?Mammal?{
????private?String?species;
????private?String?keyLink;
????public?Monkey(){
????????species="Monkey";
????????keyLink="Mammal";
????}
????public?Monkey(String?species,String?keyLink){
????????this.species=species;
????????this.keyLink=keyLink;
????}
????public?void?eat(){System.out.println(species+"?is?eating.");}
????public?void?sleep(){System.out.println(species+"?is?sleeping.");}
????public?void?milk(){System.out.println(species+"?is?drinking?milk.");}
????public??void?show(){
????????System.out.println("species:"+species);
????????System.out.println("key?link:"+keyLink);
????}
}

//Person.java
package?utility;
import?base.Mammal;
public?class?Person?extends?Mammal?{
????private?String?species;
????private?String?keyLink;
????public?Person(){
????????species="Person";
????????keyLink="Mammal";
????}
????public?Person(String?species,String?keyLink){
????????this.species=species;
????????this.keyLink=keyLink;
????}
????public?void?eat(){System.out.println(species+"?is?eating.");}
????public?void?sleep(){System.out.println(species+"?is?sleeping.");}
????public?void?milk(){System.out.println(species+"?is?drinking?milk.");}
????public?void?show(){
????????System.out.println("species:"+species);
????????System.out.println("key?link:"+keyLink);
????}
}

//Crocodile.java
package?utility;
import?base.Reptile;
public?class?Crocodile?extends?Reptile?{
????private?String?species;
????private?String?keyLink;
????public?Crocodile(){
????????species="Crocodile";
????????keyLink="Reptile";
????}
????public?Crocodile(String?species,String?keyLink){
????????this.species=species;
????????this.keyLink=keyLink;
????}
????public??void?eat(){System.out.println(species+"?is?eating.");}
????public??void?sleep(){System.out.println(species+"?is?sleeping.");}
????public?void?crawl(){System.out.println(species+"?is?crawling.");}
????public?void?show(){
????????System.out.println("species:"+species);
????????System.out.println("key?link:"+keyLink);
????}
}

//Snake.java
package?utility;
import?base.Reptile;
public?class?Snake?extends?Reptile?{
????private?String?species;
????private?String?keyLink;
????public?Snake(){
????????species="Snake";
????????keyLink="Reptile";
????}
????public?Snake(String?species,String?keyLink){
????????this.species=species;
????????this.keyLink=keyLink;
????}
????public??void?eat(){System.out.println(species+"?is?eating.");}
????public??void?sleep(){System.out.println(species+"?is?sleeping.");}
????public?void?crawl(){System.out.println(species+"?is?crawling.");}
????public?void?show(){
????????System.out.println("species:"+species);
????????System.out.println("key?link:"+keyLink);
????}
}

//Test1.java
package?javastudy;
import?base.*;
import?utility.*;
public?class?Test1?{
????public?static??void?main(String?args[]){
????????Animal[]?animal=new?Animal[]{new?Cat(),new?Crocodile(),new?Dog(),new?Monkey(),new?Person(),new?Snake()};
????????for(Animal?i:animal){
????????????i.eat();
????????????i.sleep();
????????????if(i?instanceof?Mammal){
????????????????Mammal?m=(Mammal)i;
????????????????m.milk();
????????????}
????????????else?if(i?instanceof?Reptile){
????????????????Reptile?r=(Reptile)i;
????????????????r.crawl();
????????????}
????????????else?{System.err.println("error!");}
????????????i.show();
????????????System.out.println("--------------");
????????}
????}
}

運行結果:
Cat?is?eating.
Cat?is?sleeping.
Cat?is?drinking?milk.
species:Cat
key?link:Mammal
--------------
Crocodile?is?eating.
Crocodile?is?sleeping.
Crocodile?is?crawling.
species:Crocodile
key?link:Reptile
--------------
Dog?is?eating.
Dog?is?sleeping.
Dog?is?drinking?milk.
species:Dog
key?link:Mammal
--------------
Monkey?is?eating.
Monkey?is?sleeping.
Monkey?is?drinking?milk.
species:Monkey
key?link:Mammal
--------------
Person?is?eating.
Person?is?sleeping.
Person?is?drinking?milk.
species:Person
key?link:Mammal
--------------
Snake?is?eating.
Snake?is?sleeping.
Snake?is?crawling.
species:Snake
key?link:Reptile
--------------


1 回復 有任何疑惑可以回復我~

好難呀?。?!還不會

1 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消
Java入門第二季 升級版
  • 參與學習       531221    人
  • 解答問題       6327    個

課程升級!以終為始告別枯燥,在開發和重構中體會Java面向對象編程的奧妙

進入課程

請問這題怎么做

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號