Java面向对象编程练习题 下载本文

2、写出运行结果: 。 public class ExamA {

private static int arr[] = new int[5]; public static void main(String args[]) { for(int i=arr.length-1;i>=0;i--) arr[i] = 2*i+1; String output = \ int sum = 0;

for(int i=0;i

output += \ }

output += \ System.exit(0); } }

3、写出运行结果: 。 public class Person{ String name; int age;

public Person(String name,int age){ this.name=name; this.age=age; }

public static void main(String[]args){ Person c=new Person(\} }

4、写出运行结果: 。

public?? class?? abc{

public?? static?? void??? main(String?? args[ ]) {

SubSubClass?? x = new?? SubSubClass(10 , 20 , 30); x.show(); } }

class?? SuperClass{???

int?? a,b;

SuperClass(int aa , int?? bb){??

a=aa;?? b=bb;?? }

void?? show( ){??

b=\

}

}

class??? SubClass??? extends??? SuperClass{??

int c;

SubClass(int?? aa,int?? bb,int?? cc){ ??? super(aa,bb); c=cc; } }

class SubSubClass extends SubClass{

int a;

SubSubClass(int aa,int bb,int cc){

super(aa,bb,cc); a=aa+bb+cc; }

void show(){

b=\ c=\ } }

5.下面是一个类的定义,请将其补充完整 class ______{ String name; int age;

Student(______ name, int a){ _____.name=name; age=a; }

}

6.下面是一个类的定义,请将其补充完整

class ______{ String s;

______ int a=3; A(String s){ this.s=s; }

static int getA(){

return a;

} }

四、编程题

1.按要求编写一个

Java应用程序:

(1)定义一个接口CanCry,描述会吼叫的方法public void cry()。

(2)分别定义狗类(Dog)和猫类(Cat),实现CanCry接口。实现方法的功能分别为:

打印输出“我是狗,我的叫声是汪汪汪”、“我是猫,我的叫声是喵喵喵”。

(3)定义一个主类G,

①定义一个void makeCry(CanCry c)方法,其中让会吼叫的事物吼叫。

②在main方法中创建狗类对象(dog)、猫类对象(cat)、G类对象(g),用g

调用makecry方法,让狗和猫吼叫。 2、编写一个Java程序,并满足如下要求:

1)编写一个Car类,具有:

属性:品牌(mark)——String类型 功能:驾驶(void drive( ))

2)定义Car类的子类SubCar,具有:

属性:价格(price)、速度(speed)——int型

功能:变速(void speedChange(int newSpeed)),把新速度赋给speed

3)定义主类E,在其main方法中创建SubCar类的两个对象:aodi和benchi的对象并

测试其对象的特性。

4)输出效果如下:

3.某公司正进行招聘工作,被招聘人员需要填写个人信息,编写“个人简历”的封装类。包括如下属性和对属性进行操作的方法。

String xm;// 姓名

String xb;// 性别 int nl;// 年龄

String jtzz;// 家庭住址 String xl;// 学历

(1)两个数的加、减、乘、除。 (2)求某数的相反数、倒数、绝对值。 (3)取两数中较大的和较小的。

(4)对浮点数(double型)的计算功能。如:给定浮点数d,取大于或等于d的最小整数,取小于或等

于d的最大整数,计算最接近d的整数值,计算d的平方根、自然对数log(d)等。 (5)计算以double型数a为底数,b为指数的幂。

5.编写一个抽象类Shape,声明计算图形面积的抽象方法。再分别定义Shape的子类Circle(圆)和Rectangle

(矩形),在两个子类中按照不同图形的面积计算公式,实现Shape类中计算面积的方法。 6.定义一个接口,接口中有3个抽象方法如下。

(1)“long fact(int m);”方法的功能为求参数的阶乘。

(2)“long intPower(int m,int n);”方法的功能为求参数m的n次方。

(3)“boolean findFactor(int m,int n);”方法的功能为判断参数m加上参数n的和是否大于100。 定义类实现该接口,编写应用程序,调用接口中的3个方法,并将调用方法所得的结果输出。

7.创建一个接口IShape,接口中有一个求取面积的抽象方法“public double area()”。定义一个正方形类

Square,该类实现了IShape接口。Square类中有一个属性a表示正方形的边长,在构造方法中初始化该

4.编写程序,提供实现各种数学计算的方法。包括如下几项。

边长。定义一个主类,在主类中,创建Square类的实例对象,求该正方形对象的面积。 8.定义一个人类,包括属性:姓名、性别、年龄、国籍;包括方法:吃饭、睡觉,工作。

(1)根据人类,派生一个学生类,增加属性:学校、学号;重写工作方法(学生的工作是学习)。 (2)根据人类,派生一个工人类,增加属性:单位、工龄;重写工作方法(工人的工作是……自己想吧)。 (3)根据学生类,派生一个学生干部类,增加属性:职务;增加方法:开会。 (4)编写主函数分别对上述3类具体人物进行测试。