?? helloworld.java
字號:
public class HelloWorld
{
public static void main(String[] args)
{
Dog animal1 = new Dog();
Cat animal2 = new Cat();
Frog animal3 = new Frog();
if(animal1.isMammal())
System.out.println("狗是哺乳動物");
else
System.out.println("狗不是哺乳動物");
if(animal1.isCarnivorous())
System.out.println("狗是肉食動物");
else
System.out.println("狗不是肉食動物");
System.out.println("狗通常的情況下,和人打招呼的方式為:" +animal1.sayHello());
System.out.println("狗被撫摸情緒好的時候,打招呼的方式是: " +animal1.sayHello(Animal.COMFORTED));
System.out.println("狗煩躁的時候,會: " +animal1.sayHello(Animal.SCARED));
System.out.println("狗有" +animal1.getNumberOfLegs()+"條腿");
System.out.println();
if(animal2.isMammal())
System.out.println("貓是哺乳動物");
else
System.out.println("貓不是哺乳動物");
if(animal2.isCarnivorous())
System.out.println("貓是肉食動物");
else
System.out.println("貓不是肉食動物");
System.out.println("貓通常的情況下,和人打招呼的方式為: " +animal2.sayHello());
System.out.println("貓情緒好的時候會: " +animal2.sayHello(Animal.COMFORTED));
System.out.println("貓煩躁的時候會:" +animal2.sayHello(Animal.SCARED));
System.out.println("貓有" +animal2.getNumberOfLegs()+"條腿");
System.out.println();
if(animal3.isMammal())
System.out.println("青蛙是哺乳動物");
else
System.out.println("青蛙不是哺乳動物");
if(animal3.isCarnivorous())
System.out.println("青蛙是肉食動物");
else
System.out.println("青蛙不是肉食動物");
System.out.println("青蛙通常的情況下,打招呼的方式為:" +animal3.sayHello());
System.out.println("青蛙情緒好的時候會: " +animal3.sayHello(Animal.COMFORTED));
System.out.println("青蛙受到驚嚇是會:" +animal3.sayHello(Animal.SCARED));
if(animal3.getLaysEggs())
System.out.println("青蛙產卵");
else
System.out.println("青蛙不產卵");
if(animal3.getGillFlag())
System.out.println("青蛙有鰓");
else
System.out.println("青蛙沒有鰓");
System.out.println("青蛙有" +animal3.getNumberOfLegs()+"條腿");
}
}
abstract class Animal
{
// 下面的兩個屬性被聲明為 public 類型的,而且是靜態的
public static final int SCARED = 1;//情緒好
public static final int COMFORTED = 2;//情緒不好,煩躁
//下面的屬性被聲明為保護類型的,允許在子類中訪問
protected boolean mammal = true; //是否哺乳動物屬性
protected boolean carnivorous = true; //是否食肉動物屬性
protected int mood = COMFORTED;//情緒屬性
public boolean isMammal() //判斷是否哺乳動物
{
return(mammal);
}
public boolean isCarnivorous() //判斷是否食肉動物
{
return(carnivorous);
}
abstract public String sayHello(); //打招呼的方式,該方法是抽象的,所以必須在子類中實現
abstract public String sayHello(int moodval);
public void setMood(int newValue) //設置情緒值
{
mood = newValue;
}
public int getMood() //返回情緒值
{
return(mood);
}
}
interface LandAnimal //陸生動物接口
{
public int getNumberOfLegs(); //返回有多少只腳
}
interface WaterAnimal //水生動物接口
{
public boolean getGillFlag(); //返回是否有腮
public boolean getLaysEggs(); //返回是否產卵
}
class Dog extends Animal implements LandAnimal //狗類繼承自動物類,并實現陸生動物接口
{
// 下面的屬性被聲明為私有的,并初始化。
private int numberOfLegs = 4;
// 缺省構造函數確保屬性能夠正確設置
public Dog()
{
mammal = true; //是哺乳動物
carnivorous = true; //是食肉動物
}
// 重載父類的方法
public String sayHello()
{
return("搖搖尾巴");
}
public String sayHello(int moodval)
{
this.setMood(moodval);
switch (mood) {
case SCARED:
return("嗚嗚叫");
case COMFORTED:
return("旺旺旺叫");
}
return("搖搖尾巴");
}
// 實現 LandAnimal接口
public int getNumberOfLegs()
{
return(numberOfLegs);
}
}
class Cat extends Animal implements LandAnimal //貓類繼承自動物類,并實現生活在陸地上的動物接口
{
//聲明并初始化貓的兩個屬性
private int numberOfLegs = 4;
private boolean tailFlag = true;
// 缺省構造函數
public Cat()
{
mammal = true;
carnivorous = true;
}
// 重載父類的方法
public String sayHello()
{
return("喵喵叫");
}
public String sayHello(int moodval)
{
this.setMood(moodval);
switch (mood) {
case SCARED:
return("嘶嘶叫");//如果情緒煩躁的話,就“嘶嘶叫”
case COMFORTED:
return("咕嚕咕嚕叫"); //如果情緒好的話,發出“咕嚕咕嚕”聲
}
return("喵喵叫"); //如果情緒好的話,發出“喵~”聲
}
// 實現 LandAnimal接口
public int getNumberOfLegs()
{
return(numberOfLegs);
}
}
class Frog extends Animal implements LandAnimal, WaterAnimal
{
//聲明并初始化青蛙的四個屬性
private boolean gillFlag = true;
private boolean laysEggs = true;
private int numberOfLegs = 4;
private boolean tailFlag = true;
//缺省構造函數
public Frog()
{
mammal = false;
carnivorous = false;
}
// 重寫父類的“打招呼”的方法
public String sayHello()
{
return("呱呱呱");
}
public String sayHello(int moodval)
{
this.setMood(moodval);
switch (mood) {
case SCARED:
return("撲通一聲跳入水中");
case COMFORTED:
return("呱呱呱");
}
return("呱呱呱");
}
// 實現 WaterAnimal接口
public boolean getGillFlag()
{
return(gillFlag);
}
public boolean getLaysEggs()
{
return(laysEggs);
}
// 實現 LandAnimal接口
public int getNumberOfLegs()
{
return(numberOfLegs);
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -