您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 咨询培训 > Java面向对象编程练习题答案0
【练习题】01.类的成员变量:猜数字游戏:一个类A有一个成员变量v,有一个初值100。定义一个类,对A类的成员变量v进行猜。如果大了则提示大了,小了则提示小了。等于则提示猜测成功。importjava.util.*;classA{intv=100;A(){this.v=v;}}publicclassb01{publicstaticvoidmain(Stringargs[]){Aa=newA();Scannerintput=newScanner(System.in);intintputvalue=intput.nextlnt();if(intputvaluea.v)System.out.println(你的输入大于这个值);if(intputvaluea.v)System.out.println(你的输入小于这个值);if(intputvalue==a.v)System.out.println(猜测成功);}}【练习题】02.类的成员变量:请定义一个交通工具(Vehicle)的类,其中有:属性:速度(speed),体积(size)等等方法:移动(move()),设置速度(setSpeed(intspeed)),加速speedUp(),减速speedDown()等等.最后在测试类Vehicle中的main()中实例化一个交通工具对象,并通过方法给它初始化speed,size的值,并且通过打印出来。另外,调用加速,减速的方法对速度进行改变。classVehicle{intspeed;intsize;voidmove(){};voidsetSpeed(intspeed){this.speed=speed;}voidspeedUp(){speed=speed+1;this.speed=speed;}voidspeedDown(){speed=speed-1;this.speed=speed;}}publicclassb01{publicstaticvoidmain(Stringargs[]){Vehiclea=newVehicle();a.setSpeed(55);a.size=80;a.speedUp();System.out.println(Speed:+a.speed+\nsize:+a.size);}}【练习题】03.类的成员变量与方法、构造方法在程序中,经常要对时间进行操作,但是并没有时间类型的数据。那么,我们可以自己实现一个时间类,来满足程序中的需要。定义名为MyTime的类,其中应有三个整型成员:时(hour),分(minute),秒(second),为了保证数据的安全性,这三个成员变量应声明为私有。为MyTime类定义构造方法,以方便创建对象时初始化成员变量。再定义diaplay方法,用于将时间信息打印出来。为MyTime类添加以下方法:addSecond(intsec)addMinute(intmin)addHour(inthou)subSecond(intsec)subMinute(intmin)subHour(inthou)分别对时、分、秒进行加减运算。classMyTime{privateinthour;privateintminute;privateintsecond;publicMyTime(inthour,intminute,intsecond){this.hour=hour;this.minute=minute;this.second=second;}voiddiaplay(){System.out.println(时间:+hour+:+minute+:+second);}voidaddSecond(intsec){second=second+sec;}voidaddMinute(intmin){minute=minute+min;}voidaddHour(inthou){hour=hour+hou;}voidsubSecond(intsec){second=second-sec;}voidsubMinute(intmin){minute=minute-min;}voidsubHour(inthou){hour=hour-hou;}voidTest(){if(hour=23&hour=0&minute=59&minute=0&second=59&second=0)System.out.println(\nTrue\n);elseSystem.out.println(\nFalse\n);}}publicclassb01{publicstaticvoidmain(Stringargs[]){MyTimeb=newMyTime(11,4,55);b.subHour(5);b.subMinute(5);b.subSecond(2);b.diaplay();b.Test();}}【练习题】04.构造方法编写Java程序,模拟简单的计算器。定义名为Number的类,其中有两个整型数据成员n1和n2,应声明为私有。编写构造方法,赋予n1和n2初始值,再为该类定义加(addition)、减(subtration)、乘(multiplication)、除(division)等公有成员方法,分别对两个成员变量执行加、减、乘、除的运算。在main方法中创建Number类的对象,调用各个方法,并显示计算结果。classNumber{privateintn1;privateintn2;publicNumber(intn1,intn2){this.n1=n1;this.n2=n2;}voidaddition(){intequal=n1+n2;System.out.println(n1+n2=+equal);}voidsubtration(){intequal=n1-n2;System.out.println(n1-n2=+equal);}voidmultiplication(){intequal=n1*n2;System.out.println(n1*n2=+equal);}voiddivision(){intequal=n1/n2;System.out.println(n1/n2=+equal);}}publicclassb01{publicstaticvoidmain(Stringargs[]){Numbernum=newNumber(6,3);num.division();}}【练习题】05.构造方法:编写Java程序,用于显示人的姓名和年龄。定义一个人类(Person),该类中应该有两个私有属性,姓名(name)和年龄(age)。定义构造方法,用来初始化数据成员。再定义显示(display)方法,将姓名和年龄打印出来。在main方法中创建人类的实例,然后将信息显示。classPerson{privateStringname;privateintage;publicPerson(Stringname,intage){this.name=name;this.age=age;}voiddisplay(){System.out.println(姓名——+name+\n年龄——+age);}}publicclassb01{publicstaticvoidmain(Stringargs[]){Personper=newPerson(奥巴马,20);per.display();}}【练习题】06.get方法和set方法定义一个类,该类有一个私有成员变量,通过构造方法将其进行赋初值,并提供该成员的getXXX()和setXXX()方法提示:假设有privateStringname;则有publicvoidsetName(Stringname){this.name=name;}publicStringgetName(){returnthis.name;}classPerson{privateStringname;publicPerson(Stringn){this.setName(n);}publicvoidsetName(Stringn){name=n;}publicStringgetName(){returnname;}publicvoidgetInfo(){System.out.println(名字:+name);}}publicclassb01{publicstaticvoidmain(Stringargs[]){Personper=newPerson(奥巴马);per.getName();per.getInfo();}}【练习题】07.构造方法与重载为“无名的粉”写一个类:classWuMingFen要求:1.有三个属性:面码:StringtheMa粉的分量(两):intquantity是否带汤:booleanlikeSoup2.写一个构造方法,以便于简化初始化过程,如:WuMingFenf1=newWuMingFen(牛肉,3,true);3.重载构造方法,使得初始化过程可以多样化:WuMingFenf2=newWuMingFen(牛肉,2);4.如何使得下列语句构造出来的粉对象是酸辣面码、2两、带汤的?WuMingFenf3=newWuMingFen();5.写一个普通方法:check(),用于查看粉是否符合要求。即:将对象的三个属性打印在控制台上。classWuMingFen{StringtheMa;intquantitu;booleanlikeSoup;publicWuMingFen(){}publicWuMingFen(StringtheMa,intquantitu){this.theMa=theMa;this.quantitu=quantitu;}publicWuMingFen(StringtheMa,intquantitu,booleanlikeSoup){this(theMa,quantitu);this.likeSoup=likeSoup;}publicvoidcheck(){System.out.println(面码:+theMa+\n粉的份量:+quantitu+\n是否带汤:+likeSoup);}}publicclassb01{publicstaticvoidmain(Stringargs[]){WuMingFenf1=newWuMingFen(牛肉,3,true);WuMingFenf2=newWuMingFen(牛肉,2);WuMingFenf3=newWuMingFen();f1.check();f2.check();f3.check();}}【练习题】08.构造方法的重载:定义一个名为Vehicles(交通工具)的基类,该类中应包含String类型的成员属性brand(商标)和color(颜色),还应包含成员方法run(行驶,在控制台显示“我已经开动了”)和showInfo(显示信息,在控制台显示商标和颜色),并编写构造方法初始化其成员属性。编写Car(小汽车)类继承于Vehicles类,增加int型成员属性seats(座位),还应增加成员方法showCar(在控制台显示小汽车的信息),并编写构造方法。编写Truck(卡车)类继承于Vehicles类,增加float型成员属性load(载重),还应增加成员方法showTruck(在控制台显示卡车的信息),并编写构造方法。在main方法中测试以上各类。classVehicles{privateStringbrand;privateStringcolor;publicVehicles(Stringbrand,Stringcolor){this.brand=brand;this.color=color;}voidrun(){System.out.println(我已经开动了);}voidshowInfo(){System.out.println(商标:+brand+\n颜色:+color);}}classCarext
本文标题:Java面向对象编程练习题答案0
链接地址:https://www.777doc.com/doc-5893034 .html