Java基础上机题Word文件下载.docx
《Java基础上机题Word文件下载.docx》由会员分享,可在线阅读,更多相关《Java基础上机题Word文件下载.docx(16页珍藏版)》请在冰点文库上搜索。
用于对对象的初始化,outPut()用于输出学生信息。
其次,再定义一个主类——
TestClass,在主类的main方法中创建多个Student类的对象,使用这些对象来测
试Student类的功能。
3.编写一个Java应用程序,该应用程序包括2个类:
Print类和主类E。
Print
类里有一个方法output()功能是输出100~999之间的所有水仙花数(各位数字的
立方和等于这个三位数本身,如:
371=33+73+13。
)在主类E的main方法中来
测试类Print。
4.编写Java应用程序。
首先,定义一个Print类,它有一个方法voidoutput(int
x),如果x的值是1,在控制台打印出大写的英文字母表;
如果x的值是2,在
控制台打印出小写的英文字母表。
其次,再定义一个主类——TestClass,在主类
的main方法中创建Print类的对象,使用这个对象调用方法output()来打印出大
小写英文字母表。
11.按要求编写Java应用程序。
(1)建立一个名叫Cat的类:
属性:
姓名、毛色、年龄
行为:
显示姓名、喊叫
(2)编写主类:
创建一个对象猫,姓名为“妮妮”,毛色为“灰色”,年龄为2岁,在屏幕上输
出该对象的毛色和年龄,让该对象调用显示姓名和喊叫两个方法。
12.创建一个三角形类,成员变量三边,方法求周长,创建类主类A来测试它。
13.按要求编写Java应用程序。
(1)创建一个叫做People的类:
姓名、年龄、性别、身高
说话、计算加法、改名
编写能为所有属性赋值的构造方法;
(2)创建主类:
创建一个对象:
名叫“张三”,性别“男”,年龄18岁,身高1.80;
让该对象调用成员方法:
说出“你好!
”
计算23+45的值
将名字改为“李四”
5.按要求编写Java应用程序。
(1)创建一个叫做机动车的类:
车牌号(String),车速(int),载重量(double)
功能:
加速(车速自增)、减速(车速自减)、修改车牌号,查询车的载重量。
编写两个构造方法:
一个没有形参,在方法中将车牌号设置“XX1234”,速
度设置为100,载重量设置为100;
另一个能为对象的所有属性赋值;
在主类中创建两个机动车对象。
创建第一个时调用无参数的构造方法,调用成员方法使其车牌为“辽
A9752”,并让其加速。
创建第二个时调用有参数的构造方法,使其车牌为“辽B5086”,车速为150,
载重为200,并让其减速。
输出两辆车的所有信息
14.创建一个Point类,有成员变量x,y,方法getX(),setX(),还有一个构造方
法初始化x和y。
创建类主类A来测试它。
15.首先,编写一个类ChongZai,该类中有3个重载的方法voidprint();
再编写一个主类来测试ChongZai类的功能。
二、数组相关(共4题)
1.已知2个一维数组:
a[]={3,4,5,6,7},b[]={1,2,3,4,5,6,7};
把数组a与数组b
对应的元素乘积再赋值给数组b,如:
b[2]=a[2]*b[2];
最后输出数组b的元素。
2.找出如下数组中最大的元素和最小的元素,
a[][]={{3,2,6},{6,8,2,10},{5},{12,3,23}}
6.按要求编写Java应用程序。
编写一个名为Test的主类,类中只有一个主方法;
在主方法中定义一个大小为50的一维整型数组,数组名为x,数组中存放着{1,
3,5,…,99}输出这个数组中的所有元素,每输出十个换一行;
在主方法中定义一
个大小为10*10的二维字符型数组,数组名为y,正反对角线上存的是‘*’,其余
位置存的是‘#’;
输出这个数组中的所有元素。
7.从键盘上输入一个正整数n,请按照以下五行杨辉三角形的显示方式,
输出杨辉三角形的前n行。
请采用循环控制语句来实现。
(三角形腰上的数为1,其他位置的数为其上一行相邻两个数之和。
)
1
11
121
1331
14641
15101051
三、继承相关(共13题)
1.实现如下类之间的继承关系,并编写Music类来测试这些类。
8.创建如下三个类:
(People类中的三个方法分别输出一些信息,ChinaPeople
和AmericanPeople类重写父类的三个方法)。
12.编写一个Java应用程序,该程序包括3个类:
A类、B类和主类E。
其中
类B是类A的子类,在子类B中新增了成员变量和成员方法,并且隐藏了父类
A的成员变量和重写了父类A的成员方法。
在主类E的main方法中,创建类B
的对象并赋给父类A的对象a,使用上转型对象a来测试上转型对象的一些特性。
2.编写一个Java应用程序,该程序包括3个类:
Monkey类、People类和主类
E。
要求:
(1)Monkey类中有个构造方法:
Monkey(Strings),并且有个publicvoidspeak()
方法,在speak方法中输出“咿咿呀呀......”的信息。
(2)People类是Monkey类的子类,在People类中重写方法speak(),在speak方法
中输出“小样的,不错嘛!
会说话了!
”的信息。
(3)在People类中新增方法voidthink(),在think方法中输出“别说话!
认真思考!
的信息。
(4)在主类E的main方法中创建Monkey与People类的对象类测试这2个类的功
能。
3.编写一个类A,该类创建的对象可以调用方法f输出小写的英文字母表。
然
后再编写一个A类的子类B,要求子类B必须继承类A的方法f(不允许重写),
子类B创建的对象不仅可以调用方法f输出小写的英文字母表,而且可以调用子
类新增的方法g输出大写的英文字母表。
最后编写主类C,在主类的main方法
中测试类A与类B。
17.实现一个名为Person的类和它的子类Employee,Employee有两个子类Faculty
和Staff。
(1)Person类中的属性有:
姓名name(String类型),地址address(String类型),
电话号码telphone(String类型)和电子邮件地址email(String类型);
(2)Employee类中的属性有:
办公室office(String类型),工资wage(double
类型),受雇日期hiredate(String类型);
(3)Faculty类中的属性有:
学位degree(String类型),级别level(String类型);
(4)Staff类中的属性有:
职务称号duty(String类型)。
4.编写一个Car类,具有final类型的属性品牌,具有功能drive;
定义其子类Aodi和Benchi,具有属性:
价格、型号;
具有功能:
变速;
定义主类E,在其main方法中分别创建Aodi和Benchi的对象并测试对象的特
性。
5.按要求编写一个Java应用程序:
(1)编写一个矩形类Rect,包含:
两个protected属性:
矩形的宽width;
矩形的高height。
两个构造方法:
1.一个带有两个参数的构造方法,用于将width和height属性初化;
2.一个不带参数的构造方法,将矩形初始化为宽和高都为10。
两个方法:
求矩形面积的方法area()
求矩形周长的方法perimeter()
(2)通过继承Rect类编写一个具有确定位置的矩形类PlainRect,其确定位置用
矩形的左上角坐标来标识,包含:
添加两个属性:
矩形左上角坐标startX和startY。
带4个参数的构造方法,用于对startX、startY、width和height属性
初始化;
不带参数的构造方法,将矩形初始化为左上角坐标、长和宽都为0
的矩形;
添加一个方法:
判断某个点是否在矩形内部的方法isInside(doublex,doubley)。
如在矩
形内,返回true,否则,返回false。
提示:
点在矩形类是指满足条件:
x>
=startX&
&
x<
=(startX+width)&
y<
startY&
y>
=(startY-height)
(3)编写PlainRect类的测试程序
创建一个左上角坐标为(10,10),长为20,宽为10的矩形对象;
计算并打印输出矩形的面积和周长;
判断点(25.5,13)是否在矩形内,并打印输出相关信息。
6.定义类Human,具有若干属性和功能;
定义其子类Man、Woman;
在主类Test中分别创建子类、父类和上转型对象,并测试其特性。
7.编写一个Animal类,具有属性:
种类;
吃、睡。
定义其子类Fish
和Dog,定义主类E,在其main方法中分别创建其对象并测试对象的特性。
8.按要求编写一个Java应用程序:
(1)定义一个类,描述一个矩形,包含有长、宽两种属性,和计算面积方法。
(2)编写一个类,继承自矩形类,同时该类描述长方体,具有长、宽、高属性,
和计算体积的方法。
(3)编写一个测试类,对以上两个类进行测试,创建一个长方体,定义其长、
宽、高,输出其底面积和体积。
9.编写一个Java应用程序,设计一个汽车类Vehicle,包含的属性有车轮个数
wheels和车重weight。
小车类Car是Vehicle的子类,其中包含的属性有载人数
loader。
卡车类Truck是Car类的子类,其中包含的属性有载重量payload。
每个
类都有构造方法和输出相关数据的方法。
最后,写一个测试类来测试这些类的功
10.编写一个Shape类,具有属性:
周长和面积;
定义其子类三角形和矩形,分别具有求周长的方法。
定义主类E,在其main方法中创建三角形和矩形类的对象,
并赋给Shape类的对象a、b,使用对象a、b来测试其特性。
四、包和访问权限(共5题)
1.按要求编写Java应用程序:
①创建项目testpackage
在该项目下创建包pack1和包pack2
在pack1下创建类A和类B
在pack2下创建类B和类C
在pack1.B的main方法中创建一个类A的对象a
在pack2.C的main方法中创建一个类A的对象a
②在pack2.B中添加方法f如下:
publicvoidf(){
System.out.println("
执行pack2包中的类B的方法f"
);
}
在pack2.C中创建pack2.B的对象b,并调用方法f
③在类A中添加如下三个成员变量:
int型的私有变量i
float型的变量f
double型的公有变量d
在pack1.B的main方法中为对象a的成员变量f和d分别赋值为2和3
在pack2.C的main方法中为对象a的成员变量d赋值为3
2.新建2个包:
a和b;
在包a中新建一个类A,在类A中编写2个方法:
一
个方法求2个正整数的最大公约数,一个方法求2个正整数的最小公倍数;
在包
b中新建一个主类B,在类B的main方法中调用类A中的2个方法进行求2个
正整数的最大公约数和最小公倍数。
3.在包a中编写一个类Father,具有属性:
年龄(私有)、姓名(公有);
工作(公有)、开车(公有)。
在包a中编写一个子类Son,具有属性:
年龄(受保护的)、姓名;
玩(私有)、学习(公有)。
最后在包b中编写主类Test,在主类的main方法中测试类Father与类Son。
4.在包a中新建一个类A,在类A中有一个intadd(intm)方法,用来求1+2+…+m
的和。
在包b中新建一个类B,在类B中有一个intcheng(intn)方法,用来求n!
的结果。
在包c中新建一个主类C,调用A、B中的方法输出1+2+…+30的和,
以及10!
的计算结果。
5.定义类B的超类A属于包c,再创建类B属于另外一个包d。
类A中包含
一个方法run,类B重写类A的方法run,最后在类B的main方法中分别创建A
类和B类的对象a和b,调用run方法。
五、接口(共7题)
1.编写2个接口:
InterfaceA和InterfaceB;
在接口InterfaceA中有个方法void
printCapitalLetter();
在接口InterfaceB中有个方法voidprintLowercaseLetter();
后写一个类Print实现接口InterfaceA和InterfaceB,要求printCapitalLetter()方法
实现输出大写英文字母表的功能,printLowercaseLetter()方法实现输出小写英文
字母表的功能。
再写一个主类E,在主类E的main方法中创建Print的对象并赋
值给InterfaceA的变量a,对象a调用printCapitalLetter方法;
最后再在主类E
的main方法中创建Print的对象并赋值给InterfaceB的变量b,对象b调用
printLowercaseLetter方法。
2.按要求编写Java程序:
(1)编写一个接口:
InterfaceA,只含有一个方法intmethod(intn);
(2)编写一个类:
ClassA来实现接口InterfaceA,实现intmethod(intn)接口方
法时,要求计算1到n的和;
(3)编写另一个类:
ClassB来实现接口InterfaceA,实现intmethod(intn)接口
方法时,要求计算n的阶乘(n!
);
(4)编写测试类E,在测试类E的main方法中使用接口回调的形式来测试实现
接口的类。
3.中国特色社会主义的体制中有这样的现象:
地方省政府要坚持党的领导和按
照国务院的指示进行安全生产。
请编写一个java应用程序描述上述的体制现象。
要求如下:
(1)该应用程序中有一个“党中央”接口:
CentralPartyCommittee,该接口中
有个“坚持党的领导”方法:
voidpartyLeader()
(2)该应用程序中有一个“国务院”抽象类:
StateCouncil,该抽象类中有个“安
全生产”的抽象方法:
abstractvoidsafetyInProduction()
(3)该应用程序中有一个“省政府”类:
Province,该类继承StateCouncil抽象
类并且实现CentralPartyCommittee接口;
在实现partyLeader()方法时输出“我们
各省人民一定坚持党的领导!
”;
在重写safetyInProduction()方法时输出“我们各
省人民一定按照国务院的指示进行安全生产!
”。
(4)该应用程序中有一个主类E,在主类E的main方法中创建Province类的对
象,来测试Province类的功能。
4.定义一个交通工具收费接口,然后定义列车类来实现这个接口。
收费规则自
己定义,并输出收费结果。
5.看下图实现如下接口和类,并完成Adventure中的主方法。
6.利用接口做参数,写个计算器,能完成+-*/运算
(1)定义一个接口Compute含有一个方法intcomputer(intn,intm);
(2)设计四个类分别实现此接口,完成+-*/运算
(3)设计一个类UseCompute,含有方法:
publicvoiduseCom(Computecom,intone,inttwo)
此方法要求能够:
1.用传递过来的对象调用computer方法完成运算
2.输出运算的结果
(4)设计一个测试类,调用UseCompute中的方法useCom来完成+-*/运算
7.按要求编写一个Java应用程序程序:
(1)定义一个接口CanFly,描述会飞的方法publicvoidfly();
(2)分别定义类飞机和鸟,实现CanFly接口。
(3)定义一个测试类,测试飞机和鸟,在main方法中创建飞机对象和鸟对象,
再定义一个makeFly()方法,其中让会飞的事物飞。
并在main方法中调用该方法,
让飞机和鸟起飞。
六、异常
1.编写一个异常类MyException,再编写一个类Student,该类有一个产生异常
的方法publicvoidspeak(intm)throwsMyException,要求参数m的值大于1000
时,方法抛出一个MyException对象。
最后编写主类,在主类的main方法中用
Student创建一个对象s,该对象调用speak方法。