java类和类之间的小练习1

机房小练习

一共有三个类分别是机房类、学生类、电脑类

机房类
机房有一推电脑、欢迎学生进入机房
学生类
学生名字、学生人品、学生用电脑
电脑类
电脑编号、电脑状态、被开机、被使用、被关机

代码如下
电脑类----->电脑被开打、被使用、被关闭

public class Computer {
    private int number;
    private boolean status;

    public Computer(int number) {
        this.number = number;
    }
    public boolean isStatus(){
        return status;
    }
    //电脑被打开
    public void  beOpen(){
        status = true;
        System.out.println("第"+number+"号电脑被打开");
    }
    //被使用
    public void beUsed(){
        System.out.println("第"+number+"号电脑被使用");
    }
    //被关闭
    public void beClosed(){
        status = false;
        System.out.println("第"+number+"号电脑被关机");
    }
}

学生类———》使用电脑,走出机房后依据学生人品关机电脑

public class Student {
    private String name;
    private int RP =(int)(Math.random()*10);

    public Student(){}
    public Student(String name) {
        this.name = name;
    }

    public String getName() {
        return name;
    }

    //学生用电脑
    public void useComputer(Computer computer){
        System.out.println(this.name +"开始使用电脑");
        computer.beOpen();
        computer.beUsed();
        if (RP <5) {
            computer.beClosed();
            System.out.println("走后关电脑"+name+"人品没问题");
        }else {
            System.out.println(name+"人品有问题,走后没有关电脑");
        }
    }
}

机房类 ----》机房里要先引进电脑,机房欢迎学生进入

public class JiFang {
    // 一堆电脑
    private Computer[] computers = new Computer[5];

    //初始化电脑数组 ,可以设计方法来初始化,也可以构造方法里初始化,也可以在块中初始化
    {
        for (int i = 0; i < computers.length; i++) {
            computers[i] = new Computer(i + 1);
        }
    }

    public  void welcome(Student student){
        System.out.println("欢迎"+student.getName()+"进入机房");
        //student.useComputer(computer);
        //学生在机房挨个找寻状态为关闭的电脑
        for (int i = 0; i < computers.length; i++) {
            boolean computerStatus = computers[i].isStatus();
            if (!computerStatus) {
                student.useComputer(computers[i]);
                break;
            }
        }
    }
}

测试类

public class Test{
public static void main(String[] args){
		JiFang jiFang = new JiFang();
        Student s1 = new Student("xiaobai");
        jiFang.welcome(s1);

        Student s2 = new Student("lisi");
        jiFang.welcome(s2);

        Student s3 = new Student("wangwu");
        jiFang.welcome(s3);
        }
 }

屠夫杀猪小练习

一共有三个类屠夫类、农夫类、猪类

屠夫类-----》 屠夫杀猪
农夫类----》 农夫养猪
猪类----》猪的名字、体重;自己长大方法、被杀

屠夫类: 屠夫只杀猪

public class Tufu {
    public void killPig(Pig pig) {
        System.out.println("屠夫的杀猪方法");
        String name = pig.getName();
        int weight= pig.getWeight();
        System.out.println("猪的名字是:" + name + "猪的体重是"+ weight);
        pig.beKilled();
    }
}

猪类:猪被杀、猪自己长大

public class Pig {
    private String name;
    private int weight;
    public Pig(String name,int weight){
        this.name = name;
        this.weight = weight;
    }
    public String getName(){
        return name;
    }
    public int getWeight(){
        return weight;
    }

    //猪被杀的方法
    public void beKilled(){
        System.out.println("猪被杀好惨啊");
    }
    //小猪自己长大
    public void growUp(int num) {
        for (int i=0; i< num; i++) {
            weight = weight*2;
            System.out.println(111);
        }
    }
}

农夫类值养猪

public class Famer {
    // 养猪方法
    public Pig feed(int mouth) {
        Pig pig = new Pig("小花",20);
        pig.growUp(mouth);
        System.out.println(pig.getName() +","+ pig.getWeight());
        return pig;
    }
}

测试类
首先要有一个农夫对象,农夫先养猪,再有个屠夫对象,然后猪被杀了

public class Test {
    public static void main(String[] args) {
        Famer famer = new Famer();
        Pig pig = famer.feed(5);
        Tufu tufu = new Tufu();
        tufu.killPig(pig);
    }
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值