Java面向对象编程练习题答案0.doc
《Java面向对象编程练习题答案0.doc》由会员分享,可在线阅读,更多相关《Java面向对象编程练习题答案0.doc(25页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、1/25【练习题】01.类的成员变量:猜数字游戏:一个类 A 有一个成员变量 v,有一个初值 100。定义一个类,对 A类的成员变量 v 进行猜。如果大了则提示大了,小了则提示小了。等于则提示猜测成功。import java.util.*;class Aint v=100;A()this.v=v;public class b01public static void main(String args)Aa=newA();Scanner intput=new Scanner(System.in);int intputvalue=intput.nextlnt();if(intputvaluea.v)
2、System.out.println(你的输入大于这个值);if(intputvaluea.v)System.out.println(你的输入小于这个值);if(intputvalue=a.v)System.out.println(猜测成功);【练习题】02.类的成员变量:请定义一个交通工具(Vehicle)的类,其中有:属性:速度(speed),体积(size)等等方法:移动(move(),设置速度(setSpeed(int speed),加速 speedUp(),减速speedDown()等等.最后在测试类 Vehicle 中的 main()中实例化一个交通工具对象,并通过方法给它初始化
3、speed,size 的值,并且通过打印出来。另外,调用加速,减速的方法对速度进行改变。class Vehicleint speed;int size;void move();void setSpeed(int speed)this.speed=speed;void speedUp()speed=speed+1;2/25this.speed=speed;void speedDown()speed=speed-1;this.speed=speed;public class b01 public static void main(String args)Vehicle a=new Vehicle(
4、);a.setSpeed(55);a.size=80;a.speedUp();System.out.println(Speed:+a.speed+nsize:+a.size);【练习题】03.类的成员变量与方法、构造方法在程序中,经常要对时间进行操作,但是并没有时间类型的数据。那么,我们可以自己实现一个时间类,来满足程序中的需要。定义名为 MyTime 的类,其中应有三个整型成员:时(hour),分(minute),秒(second),为了保证数据的安全性,这三个成员变量应声明为私有。为 MyTime 类定义构造方法,以方便创建对象时初始化成员变量。再定义 diaplay 方法,用于将时间信息
5、打印出来。为 MyTime 类添加以下方法:addSecond(int sec)addMinute(int min)addHour(int hou)subSecond(int sec)subMinute(int min)subHour(int hou)分别对时、分、秒进行加减运算。class MyTimeprivate int hour;private int minute;private int second;public MyTime(int hour,int minute,int second)this.hour=hour;this.minute=minute;this.second=s
6、econd;void diaplay()System.out.println(时间:+hour+:+minute+:+second3/25);void addSecond(int sec)second=second+sec;void addMinute(int min)minute=minute+min;void addHour(int hou)hour=hour+hou;void subSecond(int sec)second=second-sec;void subMinute(int min)minute=minute-min;void subHour(int hou)hour=hour
7、-hou;void Test()if(hour=0&minute=0&second=0)System.out.println(nTruen);elseSystem.out.println(nFalsen);public class b01public static void main(String args)MyTime b=new MyTime(11,4,55);b.subHour(5);b.subMinute(5);b.subSecond(2);b.diaplay();b.Test();【练习题】04.构造方法编写 Java 程序,模拟简单的计算器。定义名为 Number 的类,其中有两个
8、整型数据成员 n1 和 n2,应声明为私有。编写构造方法,赋予 n1 和 n2 初始值,再为该类定义加(addition)、减(subtration)、乘(multiplication)、除(division)等公有成员方法,分别对两个成员变量执行4/25加、减、乘、除的运算。在 main 方法中创建 Number 类的对象,调用各个方法,并显示计算结果。class Numberprivate int n1;private int n2;public Number(int n1,int n2)this.n1=n1;this.n2=n2;void addition()int equal=n1+n
9、2;System.out.println(n1+n2=+equal);void subtration()int equal=n1-n2;System.out.println(n1-n2=+equal);void multiplication()int equal=n1*n2;System.out.println(n1*n2=+equal);void division()int equal=n1/n2;System.out.println(n1/n2=+equal);public class b01public static void main(String args)Number num=ne
10、w Number(6,3);num.division();【练习题】05.构造方法:编写 Java 程序,用于显示人的和年龄。定义一个人类(Person),该类中应该有两个私有属性,(name)和年龄(age)。定义构造方法,用来初始化数据成员。再定义显示(display)方法,将和年龄打印出来。在 main 方法中创建人类的实例,然后将信息显示。class Personprivate String name;private int age;5/25public Person(String name,int age)this.name=name;this.age=age;void displa
11、y()System.out.println(+name+n 年龄+age);public class b01public static void main(String args)Person per=new Person(奥巴马,20);per.display();【练习题】06.get 方法和 set 方法定义一个类,该类有一个私有成员变量,通过构造方法将其进行赋初值,并提供该成员的 getXXX()和 setXXX()方法提示:假设有 private String name;则有public void setName(String name)this.name=name;public S
12、tring getName()return this.name;class Personprivate String name;public Person(String n)this.setName(n);public void setName(String n)name=n;public String getName()return name;public void getInfo()System.out.println(名字:+name);public class b016/25public static void main(String args)Person per=new Perso
13、n(奥巴马);per.getName();per.getInfo();【练习题】07.构造方法与重载为“无名的粉”写一个类:class WuMingFen 要求:1.有三个属性:面码:String theMa粉的分量(两):int quantity是否带汤:boolean likeSoup2.写一个构造方法,以便于简化初始化过程,如:WuMingFen f1=new WuMingFen(牛肉,3,true);3.重载构造方法,使得初始化过程可以多样化:WuMingFen f2=new WuMingFen(牛肉,2);4.如何使得下列语句构造出来的粉对象是酸辣面码、2 两、带汤的?WuMingF
14、en f3=new WuMingFen();5.写一个普通方法:check(),用于查看粉是否符合要求。即:将对象的三个属性打印在控制台上。class WuMingFenString theMa;int quantitu;boolean likeSoup;public WuMingFen()public WuMingFen(String theMa,int quantitu)this.theMa=theMa;this.quantitu=quantitu;public WuMingFen(String theMa,int quantitu,boolean likeSoup)this(theMa,
15、quantitu);this.likeSoup=likeSoup;public void check()System.out.println(面码:+theMa+n 粉的份量:+quantitu+n 是否带汤:+likeSoup);public class b01public static void main(String args)7/25WuMingFen f1=new WuMingFen(牛肉,3,true);WuMingFen f2=new WuMingFen(牛肉,2);WuMingFen f3=new WuMingFen();f1.check();f2.check();f3.che
16、ck();【练习题】08.构造方法的重载:定义一个名为 Vehicles(交通工具)的基类,该类中应包含 String 类型的成员属性 brand(商标)和 color(颜色),还应包含成员方法 run(行驶,在控制台显示“我已经开动了”)和 showInfo(显示信息,在控制台显示商标和颜色),并编写构造方法初始化其成员属性。编写 Car(小汽车)类继承于 Vehicles 类,增加 int 型成员属性 seats(座位),还应增加成员方法 showCar(在控制台显示小汽车的信息),并编写构造方法。编写 Truck(卡车)类继承于 Vehicles 类,增加 float 型成员属性 loa
17、d(载重),还应增加成员方法 showTruck(在控制台显示卡车的信息),并编写构造方法。在 main 方法中测试以上各类。class Vehiclesprivate String brand;private String color;public Vehicles(String brand,String color)this.brand=brand;this.color=color;void run()System.out.println(我已经开动了);void showInfo()System.out.println(商标:+brand+n 颜色:+color);class Car e
18、xtends Vehiclesprivate int seats;public Car(String brand,String color,int seats)super(brand,color);this.seats=seats;void showCar()super.showInfo();System.out.println(座位:+seats);8/25class Truck extends Vehiclesprivate float load;public Truck(String brand,String color,float load)super(brand,color);thi
19、s.load=load;void showTruck()super.showInfo();System.out.println(载重:+load);public class b01public static void main(String args)Vehicles f1=new Vehicles(宝马,白色);Car f2=new Car(法拉利,黑色,4);Truck f3=new Truck(解放,绿色,5000);f1.run();f1.showInfo();f2.run();f2.showCar();f3.run();f3.showTruck();【练习题】09.构造方法与重载定义
20、一个网络用户类,要处理的信息有用户 ID、用户密码、email 地址。在建立类的实例时,把以上三个信息都作为构造函数的参数输入,其中用户 ID 和用户密码时必须的,缺省的 email 地址是用户 ID 加上字符串gameschool.class NetUserprivate String ID;private String key;private String emailDress;public NetUser(String ID,String key)this.ID=ID;this.key=key;this.emailDress=ID+gameschool.;void output()Sys
21、tem.out.println(ID:+ID+n 用 户 密 码+key+n 用 户 地 址9/25+emailDress);public class b01public static void main(String args)NetUser user=new NetUser(5566,yan);user.output();【练习题】10.构造方法与重载、包编写 Addition 类,该类中应包含一组实现两数相加运算的重载方法。实现加法运算的方法,应接受两个参数(即加数和被加数),方法将两个参数进行加法运算后,返回相加结果。考虑可能针对不同的数据类型进行计算,重载一组方法,包括整型、长整型、
22、浮点型、双精度浮点型、还有字符串。在 main 方法中创建 Addition 类的实例,分别调用重载方法测试其效果。应将 Addition 类打入到包中,以自己名字的拼音为包命名。package yan.cong;class AdditionpublicAddition()void add(int a,int b)int c=a+b;System.out.println(a+b=+c);void add(long a,long b)long c=a+b;System.out.println(a+b=+c);void add(float a,float b)float c=a+b;System.
23、out.println(a+b=+c);void add(double a,double b)double c=a+b;System.out.println(a+b=+c);void add(String a,String b)String c=a+b;System.out.println(a+b=+c);public class b0110/25public static void main(String args)Addition m=newAddition();Addition n=newAddition();m.add(5,6);n.add(hello,world);【练习题】11.构
24、造方法与重载将上次练习题三中编写的 MyTime 类打到以自己名字的拼音命名的包中,并为该类重载一组构造方法,以方便使用者能够以多种形式初始化该类的实例。package yan.cong;class MyTimeprivate int hour;private int minute;private int second;public MyTime(int hour,int minute,int second)this.hour=hour;this.minute=minute;this.second=second;public MyTime(int minute,int second)this.
25、minute=minute;this.second=second;void diaplay()System.out.println(时间:+hour+:+minute+:+second);void addSecond(int sec)second=second+sec;void addMinute(int min)minute=minute+min;void addHour(int hou)hour=hour+hou;void subSecond(int sec)second=second-sec;void subMinute(int min)minute=minute-min;11/25vo
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Java 面向 对象 编程 练习题 答案
限制150内