Java的繼承例子——貓和老鼠
阿新 • • 發佈:2020-12-21
技術標籤:java
Java的繼承例子——貓和老鼠
程式碼
貓類
package com.softeem.lesson08.example;
public class Cat {
private String name;
private double weight;
public Cat(String name, double weight) {
this.name = name;
this.weight = weight;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public double getWeight() {
return weight;
}
public void setWeight(double weight) {
this.weight = weight;
}
public boolean catchMouse(Mouse m) {
// 判斷貓的體重是否小於老鼠體重的5倍
if (this.weight <= m.getWeight() * 5) {
// 貓抓住老鼠,體重增加
this.weight += m.getWeight() / 2;
System. out.println(name + "抓住了" + m.getName() + ",當前體重:" + this.weight);
return true;
}
// 老鼠逃跑
m.runaway();
this.weight -= m.getWeight() / 4;
System.out.println("老鼠" + m.getName() + ",成功逃脫," + this.name + "體重減少,當前體重:" + this.weight);
return false ;
}
}
老鼠類
package com.softeem.lesson08.example;
public class Mouse {
private String name;
private double weight;
public Mouse(String name,double weight) {
this.name = name;
this.weight = weight;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public double getWeight() {
return weight;
}
public void setWeight(double weight) {
this.weight = weight;
}
public void runaway() {
System.out.println("大笨貓,來抓我丫。。。。");
}
}
測試類
package com.softeem.lesson08.example;
import java.util.Scanner;
public class TomAndJerry {
public static void main(String[] args) {
//初始化貓物件
Cat c = new Cat("Tom", 3);
System.out.println("遊戲開始...");
Scanner sc = new Scanner(System.in);
while(true) {
//接收輸入:老鼠體重
System.out.println("請輸入老鼠體重:");
int w = sc.nextInt();
//建立老鼠物件
Mouse m = new Mouse("Jerry", w);
//判斷是否抓住老鼠
// if(!c.catchMouse(m)) {
// //一旦老鼠逃脫則遊戲結束
// System.out.println("遊戲結束");
// break;
// }
c.catchMouse(m);
}
}
}