java练习(猜数字)

/*
猜数字:一个类A有一个实例变量v,从键盘接收一个正整数作为实例变量v的初始值。
另外再定义一个类B,对A类的实例变量v进行猜测。
    如果大了则提示大了
    小了则提示小了
    等于则提示猜测成功
*/

class A{
    private int v;//封装
    public A(){}//错误处,构造方法为修饰符列表+方法名
    public A(int v){
        this.v = v;
        
    }
    public void setV(int v){ //setter
        this.v = v;
    }
    public int getV(){   //getter
        return v;
    }
}


class B{
    private A a;  //
    public B(){}
    public B(A a){//
        this.a = a;
    }
    public void setA(A a){//  此处的A a= new A(10);封装思想,在B
//在B中传递的就是A类型的A对象。    
        this.a = a;
    }
    public A getA(){ //返回值类型必须和要放回的类型一致;
        return a;
    }
    public void cai(int i){
        int shiji = a.getV();//
        if(i == shiji){
            System.out.println("right");
            System.exit(0);//强行退出java虚拟机
        }else if(i > shiji){
            System.out.println("bigger");
        }else{
            System.out.println("smaller");
        }
    }
    
}

public class CaiNum{
    public static void main(String[] args){
        A a = new A(10);
        B b = new B(a);        
        java.util.Scanner scanner = new java.util.Scanner(System.in);
        while(true){
            System.out.println("input");
            int i = scanner.nextInt();
            b.cai(i);
        }
    }
}

 

posted @ 2022-06-24 10:46  _八级大狂风  阅读(23)  评论(0编辑  收藏  举报