1、村庄
村庄类Village有一个int类型的peopleNumber变量,用于描述村庄的人口数量,String类型的name用于描述村庄的名称。定义一个【有参】构造函数对村庄名称进行初始化。定义setPeopleNumber(int p)对村庄人口进行设置,定义getPeopleNumber( )对村庄人口进行获取。
在主类Land的main方法中定义两个名为赵庄,马家河子的村庄,人口分别设置为80和120.
输出两个村庄的人口数量。
2、共饮同井水
模拟两个村庄公用同一口井水。在上题的村庄类Village中,加入一个静态static的int型成员变量waterAmount,用于模拟井水的数量。定义一个静态的setWaterAmount方法设置井水数量。一个drinkWater(int d)的方法来喝井水。一个静态的lookWaterAmount的方法来查看井水的数量。
在主类Land中,用村庄类名直接设置井水数量为200,赵庄喝掉井水50,输出喝掉井水的村庄名称和剩余的水量,马家河子喝掉井水100,再次输出喝掉井水的村庄名称和剩余的水量。
package shiyan_04_2;
public class Land {
public static void main(String[] args) {
Village a,b;
a = new Village();
b = new Village();
a.name="赵庄";
b.name="马家河子";
a.setPeopleNumber(80);
b.setPeopleNumber(120);
Village.setWaterAmount=200;
System.out.println(a.name+"的人口:"+a.getPeopleNumber());
System.out.println(b.name+"的人口:"+b.getPeopleNumber());
a.drinkWater(50);
System.out.println(a.name+"喝掉井水50,剩余井水"+Village.setWaterAmount);
b.drinkWater(100);
System.out.println(b.name+"喝掉井水100,剩余井水"+Village.setWaterAmount);
}
}
package shiyan_04_2;
public class Village {
static int waterAmount;//模拟井水的数量
static int setWaterAmount;//设置井水数量
int peopleNumber;//描述村庄的人口数量
String name;//村庄名字
void setPeopleNumber(int p) {
peopleNumber=p;
}
int getPeopleNumber() {
return peopleNumber;
}
int drinkWater(int d) {
setWaterAmount-=d;
waterAmount=setWaterAmount;
return waterAmount;
}
static int lookWaterAmount() {
return setWaterAmount;
}
}