Java附录实训参考答案Word文档下载推荐.docx
- 文档编号:19738751
- 上传时间:2023-01-09
- 格式:DOCX
- 页数:29
- 大小:23.57KB
Java附录实训参考答案Word文档下载推荐.docx
《Java附录实训参考答案Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《Java附录实训参考答案Word文档下载推荐.docx(29页珍藏版)》请在冰豆网上搜索。
max=e[0].age;
if(e[i].age>
max)max=e[i].age;
max=e[0].salary;
if(e[i].salary>
max)max=e[i].salary;
returnmax;
publicstaticvoidmain(String[]args){
e[0]=newEmployee("
张三"
1,25,1500);
e[1]=newEmployee("
李四"
2,30,2800);
e[2]=newEmployee("
王五"
3,45,4500);
e[3]=newEmployee("
刘六"
4,28,2400);
e[4]=newEmployee("
赵七"
5,32,3000);
if==2){
if(args[0].equals("
))
{if(args[1].equals("
min"
)){
最小年龄是"
+minimum("
));
elseif(args[1].equals("
max"
最大年龄是"
+maximum("
avg"
平均年龄是"
+average("
else
"
输入不正确,请正确输入!
elseif(args[0].equals("
if(args[1].equals("
)){
最低工资是"
最高工资是"
elseif(args[1].equals("
平均工资是"
else"
}
}
实训8类的继承
实验内容
1.编写一个程序,第一创建一个员工类(employee),包括假设干的成员。
然后利用关键字extends另外创建“老板”类(manager),说明Java类的继承的关系。
2.编写一个小程序,在超类中概念一个以上的访问权限为private的成员变量和方式,和访问权限为非private的方式。
创建子类,试图访问超的这些成员,并说明所产生的现象。
3.编写一个程序,挪用超类的构造函数来创建一个子类对象,子类能继承超类的构造函数吗?
1.
classEmployee{
privateintid;
privateStringname;
publicvoidsetId(intid){
=id;
}
publicvoidsetName(Stringname){
=name;
classManagerextendsEmployee
{
publicvoidsetId(byteid){
privateintdepartmentID;
publicvoidsetDepartmentID(intid){
departmentID=id;
publicclassExtendsExam1{
publicstaticvoidmain(String[]args)
{
Employeee=newManager();
2.
classA{
privateinta=10;
intid=1;
privatevoidgo(){
publicfun(){
return20;
}
classBextendsA{
publicclassExtendsExam2{
="
+;
()="
+());
3.
classSuperClass{
intx;
SuperClass(){
x=3;
inSuperClass:
x="
+x);
voiddoSomething(){
in()"
classSubClassextendsSuperClass{
SubClass(){
super();
x=5;
inSubClass:
x="
voiddoSomething(){
();
="
++"
+x);
publicclassExtendsExam3{
publicstaticvoidmain(Stringargs[]){
SubClasssub=newSubClass();
();
实训9重载和覆盖
1.编写一程序,要求创建一个类,类体包括有voidreceive(inti)、voidreceive(intx,inty)、voidreceive(doubled)、voidreceive(Strings)等方式,另外创建一个一个类文件挪用该类里的不方式,从而实现重载方式。
2.编写一个程序,要求创建一个类,类体提供两个以上的自概念构造器,复制其中一个构造函数的某方面成效到另一个构造函数中,并在程序主入口处挪用构造器来创建不同的对象实例。
3.编写一个程序,创建SuperClass,在那个类里成立一个终态方式,另创建一个类SubClass继承于SuperClass类,在该类中创建一个方式去覆盖超类的终态方式,然后试图挪用该终态方式,并对所产生的现象作出说明。
classMethodOverload{
voidreceive(inti)
excutedreceive(inti)"
voidreceive(intx,inty)
excutedreceive(intx,inty)"
voidreceive(doubled)
excutedreceive(doubled)"
voidreceive(Strings)
excutedreceive(Strings)"
publicclassMethodOverloadExam1
publicstaticvoidmain(Stringargs[])
MethodOverloadmo=newMethodOverload();
(1);
(2,3);
;
("
veryinteresting,isn’tit?
classConstuctorOverloadExam{
intx,y;
ConstuctorOverloadExam()
{x=0;
y=0;
ConstuctorOverloadExam(intx,inty)
{=x;
=y;
classSuperClass
{inti=1;
publicfinalintfun()
{return1;
publicvoidgo()
classSubClassextendsSuperClass
inti=2;
publicintfun()
{return2;
publicclassMethodOverrideExma
SuperClasss=newSubClass();
实训10接口的实现
1.编写一个程序,概念两个接口,接口能够不书写代码,另外概念两个接话柄现单继承和多继承。
2.概念一个接口Volume,其中包括一个计算体积的抽象方式calculateVolume(),然后设计Circle和Rectangle两个类都实现接口的方式calculateVolume(),别离计算球体和长方形的体积。
publicinterfaceA
{publicvoidfuna();
publicintgetFuna();
publicinterfaceB
publicvoidfunb();
publicintgetFunb();
publicinterfaceCextendsA
{}
publicinterfaceInterfaceExam1extendsA,B
interfaceVolume
floatcalculateVolume();
classCircleimplementsVolume
privatefloatx;
privatefloaty;
privatefloatradius;
Circle(floatx,floaty,floatradius)
{=x;
this.radius=radius;
publicfloatcalculateVolume()
return((float)Math.PI*radius*radius);
classRectangleimplementsVolume
privatefloatwidth;
privatefloatheight;
Rectangle(floatwidth,floatheight)
{
=width;
=height;
return(width*height);
publicclassInterfaceExam2
publicstaticvoidmain(String[]args)
Circlec=newCircle(3,4,8);
Crcle'
sarea="
Rectangler=newRectangle(4,6);
Rectangle'
实训11String类和StringBuffer类
1.编写一个应用程序,判定两个字符串是不是相同,并进一步按字典顺序比较字符串的大小。
2.编写一个应用程序,利用StringBuffer对象实现对字符串的编辑操作,包括:
替换字符串中的某些字符,删除串中某些字符,在字符串中插入或尾部加入新的字符串,翻转字符串等。
1.
classStringExample{
publicstaticvoidmain(stringarg[]){
Strings1=newString("
ABCDE"
Strings2=newString("
Abcde"
if(s2)){
s1与s2相同"
);
else{
s1与s2不同"
if(s2)){
按字典顺序,s1大于s2"
else{
按字典顺序,s1小于s2"
"
indexOf(s1)="
+('
B'
lastIndexOf(s1)="
replace(s1)="
'
F'
2.
classStringBufferExample{
StringBufferstr=newStringBuffer("
(3,5,"
123"
theta=;
radiansis"
+(theta)+"
degrees."
x=pi*120/;
deg="
+deg+"
cos(x)="
+(x));
sin(x)="
tan(x)="
acos(x)="
asin(x)="
atan(x)="
x=;
exp(x)="
log(x)="
sqrt(x)="
实训13异样处置
1.异样类型不匹配的程序。
编写一个catch语句中声明的异样类型不匹配的程序。
2.包括多个catch子句的异样处置程序。
程序要求:
在try子句中设计通过两个catch子句别离来捕捉异样,在try块中同时设置两个异样的小程序。
3.程序要求:
编写一个在try块或catch块中有return语句的程序,然后再在try块或catch块中加入()方式。
4.程序要求:
编写一个描述异样层次结构由低到高的捕捉顺序的小程序。
5.依照所给throws和throw关键字的利用格式,编写一个具有声明抛弃异样的小程序。
publicclassExceptionExam2
publicstaticvoidmain(String[]args)
{
try
{inti=0;
i=3/i;
catch(AarryIndexOutOfBoundsExceptione)
异样是:
finally
finally语句被执行"
结论:
该程序说明,若是试图捕捉一个不同类型的异样,将会发生意想不到的情形。
publicclassExceptionExam3
int[]a=newint[3];
a[3]=4;
catch(ArithmeticExceptione)
发生了异样1"
发生了异样2"
finally
Finally"
说明:
捕捉异样的顺序和不同catch语句的顺序有关,当捕捉到一个异样时,剩下的catch语句就再也不进行匹配。
因此,在安排catch语句的顺序时,第一应该捕捉最特殊的异样,然后再慢慢一样化。
也确实是一样先安排子类,再安排父类。
3.
publicclassExceptionExam4
try
a[2]=4;
return;
发生了异样"
publicclassExceptionExam5
publicstaticvoidgo()throwsIOException
{}
go();
catch(IOExceptione){}
catch(RuntimeExceptione){}
catch(Exceptione){}
catch(Errore){}
catch(Throwablee){}
Catch块的顺序从小到大。
层次相同的没有顺序要求。
5.
publicclassExceptionExam6extendsException
publicExceptionExam15(Stringmsg)
super(msg);
publicstaticvoidmain(String[]args)throwsException
thrownewExceptionExam6("
用户自行产生异样"
声明抛弃异样是在一个方式声明中的throws子句中指明的;
throws子句中同时能够指明多个异样,说明该方式将不对这些异样进行处置,而是声明抛弃它们。
实训14文件属性的访问
编写一个程序,使它能够像DOS操作系统命令Dir的功能,列出指定目录内所有文件和目录的相关信息。
import.*;
importclassJdir{
publicstaticvoidmain(Stringargs[]){
Stringdir;
intx=0,y=0;
longsum=0;
try{
dir=args[0];
}catch(ArrayIndexOutOfBoundsExceptione){
dir="
./"
Filef=newFile(dir);
if(!
()){
文件或目录不存在!
(0);
elseif()){
Filels[]=();
Datefd;
for(inti=0;
fd=newDate(ls[i].lastModified());
\t"
if(ls[i].isDirectory()){
<
DIR>
\t\t"
x++;
else{
y++;
sum+=ls[i].length();
+ls[i].length()+"
else{
Datefd=newDate());
y++;
sum=();
\n\t"
+y+"
个文件\t\t\t"
+sum+"
字节"
+x+"
个目录\t"
实训15文本文件的读写
编写一个程序,能够完成对一个文本文件的复制功能。
源文件名和目标文件名都在命令行中指定,同时在屏幕上输出该文件的内容。
classCopyFile
publicstaticvoidmain(String[]args){
Stringfile1="
file2="
intch;
longcnt=0;
if==2)
{if(args[0].equals(args[1])){
源文件名和目标文件名不能相同!
file1=args[0];
file2=args[1];
}else
请指定源文件名和目标文件名!
FileInputStreamfis=newFileInputStream(file1);
FileOutputStreamfos=newFileOutputStream(file2);
cnt=();
while((ch=())!
=-1){
(ch);
();
catch(FileNotFoundExceptione){
源文件:
未找到!
(-1);
catch(IOExceptione){
}
\n复制文件完成,共"
+cnt+"
个字节!
实训16随机文件的读写
编写一个程序,结合教材本章例子8-6所创建的文件,能够实现对学生记录的随机访问,要求输入记录号,读出该记录对应的学生信息。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Java 附录 参考答案