java面向对象练习题

时间:2023-02-23 13:56:15
package com.num3.lianxi;
/*
猜数字游戏:一个类 Lianxi31有两个成员变量a、b,a有一个初值100。定义一个方法guss,对类的成员变量a,用b进行猜。如果大了则提示大了,小了则提示小了。等于则提示猜测成功。
在main方法中测试
 */
public class Lianxi31 {
        private int a=100;
        public int b;
    public void guss(){
    if(b>a){
        System.out.println("猜大了哦");
    }
    else if(b<a){
        System.out.println("猜小了哦");
    }
    else
        System.out.println("就是他了");
    }

    public static void main(String[] args){
        Lianxi31 h=new Lianxi31();
        h.b=102;
        h.guss();
        h.b=99;
        h.guss();
        h.b=100;
        h.guss();
    }
}

************************************************************

/*创建一个圆Lianxi34类。
        为该类提供一个变量r表示半径,一个常量PI表示圆周率;
        同时为该类提供两个方法:方法一用于求圆的面积,方法二用于求圆的周长;
        为该类提供一个无参的构造方法,用于初始化r的值为4。
        在main方法中测试。*/
package com.num3.lianxi;

public class Lianxi34 {//创建一个圆Lianxi34 类
     int r;
     final static double  PI=3.14;//常量PI
     public Lianxi34(){//为该类提供一个无参的构造方法,用于初始化r的值为4。
        r=4;
        System.out.println("这是无参构造函数");
    }
    /*public Lianxi34(int r){//这是有参的构造方法,此时在主函数中,实例化对象后必须传参  Lianxi34 haha=new Lianxi34(4);
        this.r=r;
    }*/
    public double mj(){//一个方法 面积
      return PI*r*r;
    }
    public double zc(){//一个方法 周长
       return PI*r*2;
    }
    public static void main(String[] args){
        Lianxi34 haha=new Lianxi34();
        double zc = haha.zc();
        double mj = haha.mj();

        System.out.println("面积="+mj);
        System.out.println("周长="+zc);
    }
}

****************************************************

/*请定义一个交通工具Lianxi35的类,其中有:
        属性:速度(v),车的类型(type)等等
        方法:移动(move()),设置速度(v(double s)),加速v1(double s),减速v2(double s)等等.
        最后在测试类中的main()中实例化一个交通工具对象,
        并通过构造方法给它初始化v,type的值,并且打印出来。另外,调用加速,减速的方法对速度进行改变。*/

        package com.num3.lianxi;

public class Lianxi35 {//定义一个类
    private double v;
    private String type;

    public Lianxi35(double v, String type) {//一个有参的构造函数,给它初始化v,type的值
        this.v = v;
        this.type = type;
    }

    public Lianxi35(){
        v=1.2;
        type="大型车";
        System.out.println("这是无参构造函数");
    }
    public void move(double s){//定义一个方法
        double v1= v+s;//v1为加速度
        double v2= v-s;//v2为减速度
        System.out.println("增加后的速度:"+v1);
        System.out.println("减速后的速度:"+v2);
    }

    public static void main(String[] args){//主函数
        Lianxi35 haha=new Lianxi35(1.2,"大型卡车");//实例化一个对象,并给他传参,(有参的构造函数)
        haha.move(20);//s参数为方法里的那个参数
    }
}