Java面向对象编程练习题答案0_第1页
Java面向对象编程练习题答案0_第2页
Java面向对象编程练习题答案0_第3页
Java面向对象编程练习题答案0_第4页
Java面向对象编程练习题答案0_第5页
已阅读5页,还剩52页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、卜面有关Java异常处理模型的说法错误的是()0页脚内容 【练习题】01类的成员变量:猜数字游戏:一个类A有一个成员变量v,有一个初值10Q定义一个类,对A类的成员变量v进行猜。如果大了则提示大了,小了则提示小了。等于则提示猜测成功。import java.util.*;class Aint v = 100;A()this.v = v;public class b01public static void main(String args)A a = new A();Scanner intput = new Scanner(System.in);int intputvalue = intput.

2、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(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;this.speed=speed;void speedDown()speed = speed-1;this.speed=speed;public class b01 public static void main(String args)Vehi

4、cle a = new Vehicle。; a.setSpeed(55);a.size = 80;a.speedUp();System.out.println(Speed:+a.speed+nsize:+a.size);【练习题】03.类的成员变量与方法、构造方法在程序中,经常要对时间进行操作,但是并没有时间类型的数据。那么,我们可以自己实现一个时间类,来满足程序中的需要。定义名为MyTim由勺类,其中应有三个整型成员:时(hour),分(minute),秒(second,为了保证数 据的安全性,这三个成员变量应声明为私有。为MyTim糜定义构造方法,以方便创建对象时初始化成员变量。再定义di

5、aplay方法,用于将时间信息打印出来。为MyTim糜添加以下方法: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 = minu

6、te;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;vo

7、id subHour(int hou)hour = hour-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.构造方法编写Jav刑序,

8、模拟简单的计算器。定义名为Numbe的类,其中有两个整型数据成员 n1和n2,应声明为私有。编写构造方法,赋予 n1和 n2 初始值,再为该类定义加(addition)、减(subtration)、乘(multiplication)、除(division)等公有成 员方法,分别对两个成员变量执行加、减、乘、除的运算。在main方法中创建Number类的对象,调用各个方法,并显示计算结果。class Numberprivate int n1;private int n2;public Number(int n1,int n2)this.n1 = n1;this.n2 = n2;void addi

9、tion()int equal = n1+n2;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 ma

10、in(String args儿Number num = new Number(6,3);num.division();【练习题】05.构造方法:编写Java序,用于显示人的姓名和年龄。定义一个人类(Perso。,该类中应该有两个私有属性,姓名(name和年龄(age)。定义构造方法, 用来初始化数据成员。再定义显示(display)方法,将姓名和年龄打印出来。在main方法中创建人类的实例,然后将信息显示。class Personprivate String name;private int age;public Person(String name,int age) = name;this.

11、age = age;void display()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 namegU有public void setName(String name) = na

12、me;public String getName()return ;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 b01public static void main(String args)Person per = new

13、Person佻巴马);per.getName();per.getInfo();【练习题】07.构造方法与重载为“无名的粉”写一个类:class WuMingFe求:.有三个属性:面码:String theMa粉的分量(两):int quantity是否带汤:boolean likeSoup.写一个构造方法,以便于简化初始化过程,如:WuMingFen fl = new WuMingFen(T,3,true);.重载构造方法,使得初始化过程可以多样化:WuMingFen f2 = new WuMingFen(肉,2);.如何使得下列语句构造出来的粉对象是酸辣面码、2两、带汤的?WuMingFen

14、 f3 = new WuMingFen();.写一个普通方法: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;+likeSoup);public void check()System.out.println(面码:+theMa+n 粉的份量:+quantitu+n 是否带汤:public class b01public static void main(String args)WuMingFen f1 = new WuMingF(en(J ,3,true);WuMingFen f2 = new WuMingFen(肉”,2);WuMingFen f3 = new WuMingFen();f1.check();f2.check();f

16、3.check();【练习题】08.构造方法的重载:定义一个名为Vehicles(交通工具)的基类,该类中应包含 String类型的成员属性brand (商标)和color(颜色),还应包含成员方法run (行驶,在控制台显示“我已经开动了 )和showInfo (显示信息,在控制台显示商标和颜色),并编写构造方法初始化其成员属性。编写Car (小汽车)类继承于Vehicle软,增加int型成员属性seats(座位),还应增加成员方法showCar (在控制台显示小汽车的信息),并编写构造方法。编写Truck(卡车)类继承于Vehicle娄,增力口 float型成员属性10ad(载重),还应增

17、加成员方法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(W标:+brand+n 颜色:+color);class Car extends

18、 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);class Truck extends Vehiclesprivate float load;public Truck(String brand,String colorfloat load)super(brand,color);this.load =

19、 load;void showTruck()super.showInfo();System.out.println戳重:+load);public class b01public static void main(String args儿Vehicles fl = new Vehicles(马,白色)Car f2 = new Car修拉禾1,黑色,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加上字符串“”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+”;void output()System.out.println(ID +ID+n

21、 用户密码”+key+n 用户地址+emailDress);public class b01public static void main(String args儿NetUser user = new NetUser(5566,yan);user.output();【练习题】10构造方法与重载、包编写Addition类,该类中应包含一组实现两数相加运算的重载方法。实现加法运算的方法,应接受两个参数(即加数和被加数),方法将两个参数进行加法运算后,返回相 加结果。考虑可能针对不同的数据类型进行计算,重载一组方法,包括整型、长整型、浮点型、双精 度浮点型、还有字符串。在main方法中创建Addit

22、ion类的实例,分别调用重载方法测试其效果。应将Addition类打入到包中,以自己名字的拼音为包命名。package yan.cong;class Additionpublic Addition()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 afloat b)float c = a+b;System.out.println(a+b=+c);void add(dou

23、ble 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 b01public static void main(String args儿Addition m = new Addition。;Addition n = new Addition。;m.add(5,6);n.add(hello,world);【练习题】11构造方法与重载将上次练习题三中编写的 MyTim啖打到以自己名

24、字的拼音命名的包中,并为该类重载一组构造方法, 以方便使用者能够以多种形式初始化该类的实例。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.minute = minute;this.seco

25、nd = 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;void subHour(i

26、nt hou)hour = hour-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();【练习题】12构造方法与重载建立一个汽车类,包括轮胎个数,汽车颜

27、色,车身重量等属性。并通过不同的构造方法创建事例。至少要求:汽车能够加速,减速,停车。要求:命名规范,代码体现层次,有友好的操作提示。class Carprivate int tires;private String color;private int load;public Car(int tires)this.tires = tires;System.out.println(轮胎个数:+tires);public Car(String color)this.color = color;System.out.println(汽车颜色:+color);public Car(int tires,

28、String color,int load)this(tires);this.color = color;System.out.println(汽车颜色:+color);this.load = load;System.out.println(汽车重量:+load);void upSpeed()System.out.println(车正在加速);void downSpeed()System.out.println(军正在减速);void stop()System.out.println(.军已经停止了 );public class b01public static void main(Strin

29、g args儿Car a = new Car(6);Car b = new Car(4 白色”,4000);a.upSpeed();b.stop();【练习题】13构造方法与重载创建一个类,为该类定义三个构造函数,分别执行下列操作:1、传递两个整数值并找出其中较大的一个值2、传递三个double值并求出其乘积3、传递两个字符串值并检查其是否相同4、在main方法中测试构造函数的调用class Checkpublic Check(int a ,int b)int c=Math.max(a,b);System.out.println像大值为:+c);public Check(double a,do

30、uble b,double c)double d = a*b*c;System.out.println(a*b*c = +d);public Check(String a,String b)boolean c = a.equals(b);System.out.println(M字符串相等:+c); public class b01public static void main(String args儿Check m = new Check(4,8);Check n = new Check(3.3,4.2,4.0);Check p = new Check(ac,ab);【练习题】14.Stati

31、次键字与普通变量的区别:创建一个名称为StaticDemo勺类,并声明一个静态变量和一个普通变量。对变量分别赋予10和5的初始值。在main()方法中输出变量值。class StaticDemoprivate static int a=10;private int b=5;public String getInfo()return a=+a+nb=+b;public class b01public static void main(String args儿StaticDemo m = new StaticDemo();System.out.println(m.getInfo();【练习题】15

32、继承:package MainPackage;class MainClassString str;public MainClass(String str)this.str = str;System.out.println(str);class MainSubClass extends MainClasspublic MainSubClass(String str)super(str);System.out.println(*);import MainPackage.MainSubClass;class SamePackageMainSubClass b = new MainSubClass(a

33、;ledkfjl);【练习题】16包、继承、构造函数创建一个名称为MainPackage勺包,使它包含MainClass口 MainSubClass。MainClas类应当包含变量声 明,其值从构造方法中输出。MainSubClass从MainClasgS生而来。试执行下列操作:创建一个名称为 SamePackag的类,使它导入上述包,并创建一个MainSubClass的对象。【练习题】17继承:创建一个父类和子类,父类有一个数据成员,子类继承父类的该数据成员,通过构造函数初始化并显 示该数据成员的值。class Fatherint a;public Father(int a)this.a =

34、 a;class Son extends Fatherpublic Son(int a)super(a);System.out.println(a=+a);public class b01 public static void main(String args儿Son e = new Son(4);【练习题】18覆盖、继承建立一个汽车Auto类,包括轮胎个数,汽车颜色,车身重量、速度等成员变量。并通过不同的构造方 法创建实例。至少要求:汽车能够加速,减速,停车。再定义一个小汽车类Car;继承Auto,并添加空调、C曲成员变量,覆盖加速,减速的方法、 class Autoint tires;St

35、ring color;int load;int speed;public Auto(int tires,String color,int load,int speed)this.tires = tires;this.color = color;this.load = load;this.speed = speed;void upSpeed()System.out.println(加速了);void downSpeed()System.out.println(减速了);void stop()System.out.println(停车了);void getInfo()System.out.prin

36、tln(轮胎数:+tires+n 颜色:+color+n 车身重量:+load+n 速度+speed);class Car extends Autoboolean Aircondition;boolean CD;public Car(int tires,String color,int load,int speed,boolean Aircondition,boolean CD)super(tires,color,load,speed);this.Aircondition = Aircondition;this.CD = CD;void upSpeed()System.out.println(

37、开始加速了 );void downSpeed()System.out.println(开始减速了 );void getInfo()System.out.println(轮胎数:+tires+n 颜色:+color+n 车身重量:+load+tn 速度+speed+Km/hn 有空调:+Aircondition+n 有 CD:+CD);public class b01public static void main(String args儿Car m = new Car(4白色”,50,100,false,true);m.downSpeed();m.getInfo();【练习题】19抽象类与继承设

38、计一个能细分为矩形、三角形、圆形和椭圆形的“图形”类。使用继承将这些图形分类,找出能作为基类部分的共同特征(如校准点)和方法(如画法、初始化),并看看这些图形是否能进一步划分为子类本题只考虑实现思想,不考虑具体实现的细节,实现方式可自由发挥。import java.awt.Point; abstract class Graphpublic Point center;public Graph(Point center)this.center = center;public abstract void getInfo();class Rectangle extends Graphprivate i

39、nt length;private int width;public Rectangle(Point center,int length,int width) super(center);this.length = length;this.width = width;public void getInfo()System.out.println(矩形:n+校准点:+center+n 矩形长度:+length+n 矩形宽度:+width);class Circle extends Graphprivate int radius;public Circle(Point center, int ra

40、dius)super(center);this.radius = radius;public void getInfo()System.out.println(圆形:n+校准点:+center+n 圆形半径:+radius);public class b01public static void main(String args儿Graph a = new Rectangle(new Point(8,8),4,7);a.getInfo();Graph b = new Circle(new Point(8,8),10);b.getInfo(); 【练习题】20.抽象类:创建一个Vehicl酸并将它

41、声明为抽象类。在 Vehicl战中声明一个NoOfWhee由法,使它返回一个字符 用信。创建两个类 Car和Motorbike从Vehicl族继承,并在这两个类中实现 NoOfWheels法。在 Car类 中,应当显示“四轮车”信息;而在 Motorbike类中,应当显示“双轮车”信息。创建另一个带main方法的类,在该类中创建 Ca杯口 Motorbike的实例,并在控制台中显示消息。abstract class Vehiclepublic abstract String Noofwheels();class Car extends Vehicleint a;int b;public Car

42、(int a,int b)this.a=a;this.b=b;public String Noofwheels()return四轮车n 载重:+a+n 体积:+b;class Motorbike extends Vehicleint c;int d;public Motorbike(int c,int d)this.c = c;this.d = d;public String Noofwheels()return 双轮车n 长度:+c+”n 高度:+d;public class b01public static void main(String args儿Vehicle m = new Car

43、(88,44);System.out.println(m.Noofwheels();Vehicle n = new Motorbike(3,4);System.out.println(n.Noofwheels();【练习题】21抽象类:创建一个Vehicl酸并将它声明为抽象类。在 Vehicl战中声明一个NoOfWheelS法,使它返回一个字符 用信。创建两个类 Car和Motorbike从Vehicl族继承,并在这两个类中实现NoOfWheelS法。在 Car类中,应当显示“四轮车”信息;而在 Motorbike类中,应当显示“双轮车”信息。创建另一个带 main 方法的类,在该类中创建 C

44、arffi Motorbike的实例,并在控制台中显示消息。【练习题】22.接口:创建一个名称为Vehicle勺接口,在接口中添加两个带有一个参数的方法start(和stop。在两个名称分别为Bike和Bus的类中实现 Vehicle 口。创建一个名称为interfaceDemo勺类,在interfaceDemo勺main() 方法中创建Bike和Bus对象,并访问start()B stop(方法。interface Vehiclepublic abstract String start(boolean a);public abstract String stop(boolean b);cla

45、ss Bike implements Vehiclepublic String start(boolean a) return a+车启动了 ;public String stop(boolean b) return b+车停止了 ;class Bus implements Vehiclepublic String start(boolean a) return a+车启动了 ;public String stop(boolean b) return b+车停止了 ;public class interfaceDemopublic static void main(String args儿Bi

46、ke m = new Bike();System.out.println(Biken+m.start(false)+n+m.stop(true);Bus n = new Bus();System.out.println(Bu-n+n.start(true)+n+n.stop(false);【练习题】23.接口:创建一个名称为Vehicle勺接口,在接口中添加两个带有一个参数的方法start(和stop。在两个名称分别为Bike和Bus的类中实现 Vehicle 口。创建一个名称为interfaceDemo勺类,在interfaceDemo勺main() 方法中创建Bike和Bus对象,并访问s

47、tart(并口 stop(方法。【练习题】24.抽象类、继承、接口综合设计一个系统:XXX、1的实现过程:流程:设计一张抽象的门 Door,那么对于这张门来说,就应该拥有所有门的共性,开门openDoor()口关门closeDoor。然后对门进行另外的功能设计,防盗-theftproof。防水-waterproof。防弹-bulletproof。防火、防锈要求:利用继承、抽象类、接口的知识设计该门abstract class Doorpublic abstract void openDoor();public abstract void closeDoor();class realDoor e

48、xtends Doorpublic void openDoor()System.out.println(开门 n);public void closeDoor()System.out.println(关门 n);public void theftproof()System.out.println(防盗 n);public void waterproof()System.out.println(防水 n);public void bulletproof()System.out.println(防弹 n); public class b01public static void main(Strin

49、g args)realDoor d = new realDoor();d.openDoor();d.closeDoor();d.theftproof();d.waterproof();d.bulletproof();【练习题】25.抽象类、继承、接口综合设计一个系统:xxx纯净水生产线目前流程是:从某个地方把水取出来,然后经过缓冲,过滤,加热和放糖的步骤abstract 水public void 水();interface 过滤。interface 缓冲interface 力口热interface 放糖。class纯净水1 extends水imps过滤,缓冲。class纯净水2 extends

50、水imps缓冲。class纯净水2 extends水imps过滤。0 0 0 0abstract class Waterpublic abstract void Water();interface Filterpublic abstract void Filter();interface Bufferpublic abstract void Buffer();interface Heatpublic abstract void Heat();interface Sugarpublic abstract void Sugar();class Water1 extends Water implem

51、ents Filter,Bufferpublic void Water()System.out.println(水 1 的制造过程:n);public void Filter()System.out.println(水已经过滤 n);public void Buffer()System.out.println(水已经缓冲 n);class Water2 extends Water implements Bufferpublic void Water()System.out.println(水 2 的制造过程:n);public void Buffer()System.out.println(水

52、已经缓冲 n);class Water3 extends Water implements Filterpublic void Water()System.out.println(水 3 的制造过程:n);public void Filter()System.out.println(水已经过滤 n);public class b01public static void main(String args)Waterl a = new Water1();Water2 b = new Water2();Water3 c = new Water3();a.Water();a.Buffer();a.Fi

53、lter();b.Water();b.Buffer();c.Water();c.Filter();【练习题】26.综合题定义一个抽象的Role”类,有姓名,年龄,性别等成员变量.要求尽可能隐藏所有变量(能够私有就私有,能够保护就不要公有),再通过GetXXX积SetXXX() 方法对各变量进行读写。具有一个抽象的play()方法,该方法不返回任何值,同时至少定义两个构造方法。Role类中要体现出this的几种用法。.从Role类派生出一个Employee类,该类具有Role类的所有成员(构造方法除外),并扩 展salary成员变量,同时增加一个静态成员变量“职工编号(ID)”。同样要有至少两个

54、构造方 法,要体现出this和super的几种用法,还要求覆盖play()方法,并提供一个final sing(方法。. Managerll8承Employee类,有一个 final 成员变量vehicle.在main()方法中制造Manage和Employee寸象,并测试这些对象的方法abstract class Roleprivate int age;private String name;public Role(int a)this.setAge(a);public Role(String b) this.setName(b);public Role(int a,String b) this(a);this.setName(b);public void setAge(int a)age = a;public void setName(String b) name = b;public int getAge()return age;public String getName()return name;public abstract void play();class Employee extends Roleprivate int salary;private static String ID;public Employee(int a,String i)super(a)

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论