java面向对象练习题
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参数为方法里的那个参数 } }