还剩7页未读,继续阅读
文本内容:
传智播客Java基础综合测试题第一关
1.动手完成Java开发包的安装,并设置环境变量Path
2.编写一个程序,要求程序运行后在屏幕上输出***************************Thisismyfirstjavaprogram!***************************
3.编写一个程序,该程序从命令行接收4个参数,并将接收的4个参数打印输出到屏幕第二关
1.指出下列哪些变量名称是不合法的?tomSalaryfloat1peoplepeople1price_per_mprice-per_m$root@test
2、写出intmin=xyy:x的等价if语句Ifxy{min=y}elsemin=x;
3、利用javaAPI帮助文档,找到一个可以将给定的字符串转化为小写的方法StringtoLowerCase
4、打印出成绩等级,如果成绩大于等于90分,输出“优秀”,如果成绩大于等于80分,输出“良好”,如果大于等于70分,输出“中等”,如果大于等于60分,输出“及格”,其它输出“不及格”
5、用冒泡和选择两种方式对数组进行排序第三关
1、选择题1程序TestSketch.java代码如下,4个选项中正确的描述是()ClassA{}ClassBextendsA{}PublicclassTestSketch{PublicstaticvoidmianString[]args{Aa=newA;Bb=Ba;}}A.通过编译并正常运行B.编译时出现异常C.编译通过,运行时出现异常D.编译器报告找不到TestSketch.java2下面有关类Demo的描述正确的有()PublicclassDemoextendsBase{Privateintcount;PublicDemo{}Protectedvoidassone{Count++;}}A.当创建一个Demo类的实例对象时,count的值为0B.当创建一个Demo类的实例对象时,count的值是不确定的C.Base类型的对象中可以包含改变count值的方法D.Demo的子类对象可以访问count3阅读下面的程序,正确的选项为()Classperson{Stringname;Stringnickname;PublicpersonStringsStringt{name=s;nickName=t;}PublicStringtoString{returnname+“nickname=“+nickName;}}publicclassTeacherextendsPerson{Stringrank;PublicTeacherStringsStringtStringr{superst;rank=r;}publicStringtoString{returnname+”nickname=”+nickName+”rank=”+rank;}publicstaticvoidmainStringargs[]{persona=newPerson“Tom””Tiger”;personb=newTeacher“Jack””Horse””Professor”;Teacherc=newTeacher“Bobby””Elephant””Lecture”;}}•编译时会出现错误•运行时会出现错误•运行结果为aisTomnickname=TigerbisJacknickname=Horserank=ProfessorcisBobbynickname=Elephantrank=LectureD.运行结果为aisTomenickname=TigerbisJacknickname=HorsecisBobbynickname=Elephantrank=Lecturer
2.假如我们在开发一个系统时需要对员工进行建模,员工包含3个属性姓名、工号以及工资经理也是员工,除了含有员工的属性外,另为还有一个奖金属性请使用继承的思想设计出员工类和经理类要求类中提供必要的方法进行属性访问(从各个对象向上抽取的方式思考)
3、定义一个自己的数学类MyMath.类中提供静态方法max该方法接受3个同类型的参数(例如整型),返回其中的最大值Intsum=0;abcMax=sum=aba:bcsum:c;classMyMath{publicstaticintmaxintaintbintc{intmax=0;ifab{max=a;}elsemax=b;ifmaxc{max=c;}returnmax;}}
4、定义一个Car类,保证该类对象在内存中只存在一个写出例程classPerson{privateStringname;privateintage;privatestaticPersonp=newPersonzhangsan18;privatePersonStringninta{this.name=n;this.age=a;}publicstaticPersongetPerson{returnp;}publicstaticStringgetNamePersonp{returnp.name;}publicstaticintgetAgePersonp{returnp.age;}}publicclassTestSketch{publicstaticvoidmainString[]args{}}第四关
1、接口和抽象类的区别
2、选择题
1.在使用interface声明一个接口时,可以使用()修饰符修饰该接口A.privateB.protectedC.privateorprotectedD.public2虽然接口和抽象类不能创建对象,但它们的对象引用仍可指向该类型的对象这种说法()A.正确B.不正确C.不能确定D.接口和抽象类不能说明其对象引用
3.接口中说明了一组公共的抽象方法,其中是否包含公共的静态方法?答案是()A.可以B.不可以C.不能肯定D.因静态方法不能被改写,故不能出现在接口中4)当我们说明一个类C实现一个接口I,下面说法()不正确A.接口I是类C一个超类型B.类C也实现了接口I的超接口C.类C的子类也实现接口ID.接口I类型的对象引用所指定的对象一定是类C或其子类的一个对象
3.填空题1我们可以通过______接口______,使得处于不同层次,甚至互不相关的类具有相同的行为,然后由每个类分别去实现这些行为2接口声明的关键字是______________3在声明类的同时,我们可通过关键字__________________实现接口4使用类实现接口时,必须__________该接口的所有方法6创建包的关键字是____________7引入包grade的best类,可使用语句____________________________第五关
1.下面这种捕获异常的方式适当么?说明理由Try{…}catchExceptione{..}catchFileNotFoundExceptiona{…}
2.编写程序,越界访问数组元素的下标,捕获并打印异常信息
3.描述模板方法设计模式写出例程第六关
1.编写一个线程使得4个线程同时运行publicclassTest{publicstaticvoidmainString[]args{Threadt1=newThreadnewA;Threadt2=newThreadnewB;Threadt3=newThreadnewC;Threadt4=newThreadnewD;t
1.start;t
2.start;t
3.start;t
4.start;}}classAimplementsRunnable{publicvoidrun{forinti=0;i50;i++{}}}classBimplementsRunnable{publicvoidrun{forinti=0;i50;i++{}}}classCimplementsRunnable{publicvoidrun{forinti=0;i50;i++{}}}classDimplementsRunnable{publicvoidrun{forinti=0;i50;i++{}}}
2.请在程序中创建一个HashSet实例对象,并向这个对象中添加三个自定义的Student类的实例对象(Student类有两个属性,姓名和年龄)要求如果两个Student对象相当,即两个Student对象的姓名和年龄相等时,必须保证HashSet里面只能有一个对象publicclassTest{publicstaticvoidmainString[]args{HashSeths=newHashSet;hs.addnewStudentzhangsan20;hs.addnewStudentlisi20;hs.addnewStudentwangwu30;hs.addnewStudentzhaoliu25;hs.addnewStudentzhaoliu25;Iteratoriter=hs.iterator;Studentstr=null;whileiter.hasNext{str=Studentiter.next;}}}classStudent{Stringname;intage;StudentStringnameintage{this.name=name;this.age=age;}publicStringgetName{returnname;}publicintgetAge{returnage;}publicinthashCode{returnname.hashCode+age*17;}publicbooleanequalsObjectobj{Studentstu=Studentobj;}publicStringtoString{returnname+:::::::+age;}}
3.请利用System.getProperties方法,打印出java虚似机的环境信息
4.简述ArrayList、Vecor、LinkedList之间的区别?Collection和Map之间的区别?HashSet和TreeSet之间的区别?HashTable和HashMap之间的区别?然后编程向HashSet中保存自定义的类(Student),并取出打印
5.写一个程序,允许用户依次输入多个姓名和住址,并能将用户的输入保存到文件中用户输入”quit”表示输入完毕,程序退出
6.有五个学生,每个学生有3门课的成绩,从键盘输入以上数据(包括姓名,三门课成绩),计算出总成绩,并把学生的信息和计算出的总分数存放在磁盘文件stud.txt中第七关
1、写一个程序,允许用户依次输入多个姓名和住址,并能将用户的输入保存到文件中用户输入”quit”表示输入完毕,程序退出
2、File类型的对象既可以表示文件,也可以表示目录编写一个程序,当用户输入一个文件或是目录信息后,该程序能够完成如下工作
1.判断该文件或目录是否存在
2.如果不存在则给出出错信息
3.如果存在,则给出其相对路径、绝对路径、文件长度
4.如果存在并且是文件,则显示文件内容
5.如果存在并且是目录,则显示目录内的所有文件名publicclassTest{publicstaticvoidmainString[]args{Inputin=newInput;in.dealInput;}}classInput{publicvoiddealInput{BufferedReaderbufr=newBufferedReadernewInputStreamReaderSystem.in;Strings=null;try{s=bufr.readLine;}catchIOExceptione{e.printStackTrace;}ifs!=null{Filefile=newFiles;iffile.isFile{相对路径是+file.getPath+\r\n+文件长度是+file.length+KB;try{Stringline=null;BufferedReaderbuf=newBufferedReadernewInputStreamReadernewFileInputStreams;BufferedWriterbufw=newBufferedWriternewOutputStreamWriterSystem.out;whileline=buf.readLine!=null{bufw.writeline;bufw.newLine;bufw.flush;}buf.close;bufw.close;}catchIOExceptione{e.printStackTrace;}}elseiffile.isDirectory{String[]lists=file.list;forStringstr:lists{}}elseifs.equals{}}else{}}}
3、编写一个程序,在控制台接收数据,程序会让用户输入名字,并检查用户的输入不允许输入空名字一旦用户完成输入,程序会向该用户发出问候“Hello你输入的名字”
4、请编写一个字符输入流的包装类,通过这个包装类对底层字符输入流进行包装,让程序通过这个包装类读取某个文本文件(例如,一个java源文件)时,能够在读取的每行前面都加上有行号和冒号第八关
1.填空题1我们使用java.net包中有两个类___________和________________,分别用于在客户机和服务器上创建Socket通信2我们可分别使用Socket的方法______________和_________________来创建输入/输出流3在服务器端程序中,可使用ServerSocket对象的__________方法,接收来自客户机程序的连接请求,待通信任务完毕后,用Socket对象的____________方法来关闭通信Socket4我们可以通过_____________________类来建立数据报通信的Socket;用______________________类来创建数据报文包5我们可通过DatagramPacket类的方法____________从实例中取得报文的Byte数组编码;而通过_____________来返回一个发送或接收此数据报包文的机器的IP地址6我们可通过调用DatagramSocket对象的____________方法来完成接收数据报的工作,通过调用DatagramSocket对象的____________方法实现发送数据报7待通信任务完毕后,用DatagramSocket对象的____________方法来关闭数据报通信Socket
2、利用Socket套接字进行面向连接通信的编程客户端发送文件;服务器端接收并显示客户机地址,然后返回信息“文件已收到”给客户端
3、客户端输入并发送用户名;服务器端接收并显示其用户名,并检验它们的正确性,错则返回“对不起你不是我们的用户”,对则返回“你好,欢迎光临”。