java上机实践四

这一章考试经常考,提醒读者弄清楚类与对象的使用。
4.15.1用类描述坦克
Tank.java
public class Tank {
double speed;
int bulletAmount;
void speedUp(int s) {
speed=speed+s;
}
void speedDown(int d) {
if(speed-d>=0)
speed=speed-d;
else
speed=0;
}
void setBulletAmount(int m) {
bulletAmount=m;
}
int getBulletAmount() {
return bulletAmount;
}
double getSpeed() {
return speed;
}
void fire(){
if(bulletAmount>=1) {
bulletAmount=bulletAmount-1;
System.out.println(“打出一发炮弹”);
}else
{System.out.println(“没有炮弹了,无法开火”);
}
}
}
Figh.java
public class Fight {

public static void main(String[] args) {
	// TODO Auto-generated method stub

Tank tank1,tank2;
tank1=new Tank();
tank2=new Tank();
tank1.setBulletAmount(10);
tank2.setBulletAmount(10);
System.out.println(“the bulletamount of tank1:”+tank1.getBulletAmount());
System.out.println(“the bulletamount of tank2:”+tank2.getBulletAmount());
tank1.speedUp(80);
tank2.speedUp(90);
System.out.println(“tank1目前速度:”+tank1.getSpeed());
System.out.println(“tank2目前速度:”+tank2.getSpeed());
tank1.speedDown(15);
tank2.speedDown(30);
System.out.println(“tank1目前速度:”+tank1.getSpeed());
System.out.println(“tank1目前速度:”+tank2.getSpeed());
System.out.println(“Tank1 开火 !!”);
tank1.fire();
System.out.println(“Tank2 开火 !!”);
tank2.fire();
tank2.fire();
System.out.println(“tank1:炮弹数量”+tank1.getBulletAmount());
System.out.println(“tank2炮弹数量:”+tank2.getBulletAmount());
}
}
4.15.2学习与教师
Teacher.java
public class Teacher {
int teacherType;
public void speak(){
if(teacherType==1){
System.out.println(“课程二次方程”);
}

    else if(teacherType==2){
        System.out.println("课程五线谱");
        
    } 
}

}
Student.java
public class School {
Teacher mathTeacher,musicTeacher;
void setTeacher(Teacher t1,Teacher t2){
mathTeacher=t1;
musicTeacher=t2;
}
void startMathLesson(){
mathTeacher.speak();
}
void startMusicLesson(){
musicTeacher.speak();
}
}

MainClass.java
public class MainClass {
public static void main(String[]args){
Teacher zhang,wang;
zhang=new Teacher();
wang=new Teacher();
zhang.teacherType=1;
wang.teacherType=2;
School middleschool=new School();
middleschool.setTeacher(zhang,wang);
middleschool.startMathLesson();
middleschool.startMusicLesson();
}
}
4.15.3共同的森林
village.java
public class Village {
static int treeAmount;
int peopleNumber;
String name;
Village(String s){
name=s;
}
void treePlanting(int n){
treeAmount=treeAmount+n;
System.out.println(name+“植树”+n+“颗”);
}

    void fellTree(int n){
        if(treeAmount-n>=0){
            treeAmount=treeAmount-n;
            System.out.println(name+"伐树"+n+"颗");
        }
        else{
            System.out.println("无树木可伐");
        }
 
}
      
         static int lookTreeAmount(){
        return treeAmount;
    }
          void addPeopleNumber(int n){
              peopleNumber=peopleNumber+n;
              System.out.println(name+"增加了"+n+"人");
              
          }

}

MainClass.java
public class MainClass2 {
public static void main(String []args){
Village zhaovillage,mavillage;
zhaovillage=new Village(“赵庄的人口”);
mavillage=new Village(“马家河子的人口”);
zhaovillage.peopleNumber=100;
mavillage.peopleNumber=150;
Village.treeAmount=200;
int leftTree=Village.treeAmount;
System.out.println(“森林里有”+leftTree+“颗树”);
zhaovillage.treePlanting(50);//代码2
leftTree=mavillage.lookTreeAmount();//代码3
System.out.println(“森林里有”+leftTree+“颗树”);
mavillage.fellTree(70);
leftTree=mavillage.lookTreeAmount();
System.out.println(“森林里有”+leftTree+“颗树”);
leftTree=Village.lookTreeAmount();
System.out.println(“森林里有”+leftTree+“颗树”);
System.out.println(“赵庄的人口”+zhaovillage.peopleNumber);
zhaovillage.addPeopleNumber(12);
System.out.println(“赵庄的人口”+zhaovillage.peopleNumber);
System.out.println(“马家河子的人口”+mavillage.peopleNumber);
mavillage.addPeopleNumber(10);
System.out.println(“马家河子的人口”+mavillage.peopleNumber);

}

}

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值