admin管理员组文章数量:1530251
2024年7月31日发(作者:)
一、判断题(每小题1分,共10分)
1.Java1.5的编译器和以前版本一样,可以向下兼容。
2.Java支持多继承。
3.任何类都有构造函数,如果没有构造函数,就不能创建该类的对象。
4.一个类如果实现了某个接口,那么它必须覆盖该接口中的所有方法。
5.用“+”可以实现字符串的拼接,用- 可以从一个字符串中去除一个字符子串。
6.容器是用来组织其他界面成分和元素的单元,它不能嵌套其他容器。
7.Java中数组的元素可以是简单数据类型的量,也可以是某一类的对象。
8.重载的方法可以通过它们的返回值类型的不同来区分。
9.面向对象的软件开发方法用类把数据和基于数据的操作封装在一起,并且类之间可以存在
继承关系。
10.Java 源程序的文件名必须和公共类的类名相同。
二、单项选择题(每小题1分,共20分)下列各题A、B、C、D四个选项中,只有一个选项时
正确的。
1.下面属于Java 关键字的是( )。
A、NULL B、IF C、DO D、while
2.类JPanel默认的布局管理器是( )
A、GridLayout B、BorderLayout
C、FlowLayout D、CardLayout
3.在Java中,能实现多重继承效果的方式是( )
A、内部类 B、适配器 C、接口 D、同步
4.下列关于Java Application与Applet的说法中,正确的是( )
A、都包含main( )方法 B、都通过“appletviewer”命令执行
C、都通过“javac”命令编译 D、都嵌入在HTML文件中
5.关于以下代码所画图形的说明,正确的是( )
or();
ne(10,10,10,50);
or();
ct(100,100,150,150);
A、 一条40像素长的垂直红线,一个边长为150像素的红色四方形
B、 一条40像素长的垂直黑线,一个边长为150像素的红色四方形
C、 一条50像素长的垂直黑线,一个边长为150像素的红色四方形
D、 一条50像素长的垂直红线,一个边长为150像素的红色四方形
6.在Java中,所有类的根类是( )
A、 B、
C、 D、
7.当启动Applet程序时,首先调用的方法是( )
A、stop( ) B、init( ) C、start( ) D、destroy( )
8.下列关于线程优先级的说法中,正确的是( )
A、线程的优先级是不改变的
B、线程的优先级是在创建线程时设置的
C、在创建线程后的任何时候都可以设置
D、B和C
9.关于以下application的说明,正确的是( )。
1) class StaticStuff
2) {
3) static int x;
4) static { x+=5;}
5) public static void main(String args[ ])
6) {
7) n(“x=” + x);
8) }
9) static { x/=5;}
10)}
A、4行与9行不能通过编译,因为缺少方法名和返回类型
B、9行不能通过编译,因为只能有一个静态初始化器
C、编译通过,执行结果为:x=1
D、能通过编译,但程序运行结果不可预知,因为变量x没有初始化
10.在Java 1.5中,如果没有明显的使用“-scoure”参数,javac默认使用该参数,并取值为( )
A、1.1 B、1.5 C、1.3 D、1.4
11.下面叙述正确的是( )。
A、栈不能进行插入元素的操作,而队列可以。
B、栈和队列都不能在中间位置进行插入操作。
C、链表不能进行插入操作。
D、数组不能进行插入操作。
12.当浏览器重新返回Applet所在的页面时,将调用Applet类的方法是( )
A、start( ) B、init( ) C、stop( ) D、destroy( )
13.若数组a定义为int[][] a = new int[3][4],则a是( )
A、一维数组 B、二维数组 C、三维数组 D、四维数组
语言使用的字符码集是( )
A、ASCII B、BCD C、DCB D、Unicode
15.下列语句序列执行后,k 的值是( )。
int i=6, j=8, k=10, n=5, m=7;
if( i A、9 B、10 C、11 D、12 ()方法的返回类型是:( ) A、int B、void C、boolean D、static 17.下面属于Java线程同步方法的方法有( ) A、joiny() B、run() C、wait() D、destroy() 18.若有循环: int x=5,y=20; do{ y-=x; x++; }while(++x<--y);则循环体将被执行( )。 A、0次 B、1次 C、2次 D、3次 19.为了使包sos在当前程序中可见,可以使用的语句是( )。 A、import sos.*; B、package sos.*; C、sos import; D、sos package; 20.有以下方法的定义,请选择该方法的返回类型( )。 ReturnType method(byte x, float y) { return (short)x/y*2; } A、byte B、short C、int D、float 三、填空题(每空2分,共20分) 1.表达式1/2*3的计算结果是_________。 2.结构化程序设计的三种基本流程控制结构是:顺序结构、循环结构和_______________。 putStream是字节流;BufferedWriter是字符流;ObjectOutputStream是____________。 4.组件不能独立的显示出来,必须将组件放在一定的____________中才能显示。 5.在编译源文件时没有约定,用SDK1.5的编译器生成的字节码只能在安装了_______________ 或 JRE1.5的平台环境中运行。 小程序的源文件名为,为运行该小程序,应将小程序嵌入网页文件中,其html 的关键代码如下,请将其补充完整: 7.方法调用(-9,11)返回的结果是_______。 8.顺序执行以下两个语句的输出结果是:___________________。 String s = "我喜欢学习Java!"; n(( )); 9._______________是由若干个节点组成的一种数据结构。 10. Java语言中, 通常把可能发生异常的方法调用语句放到try块中,并用紧跟其后的_____块 来捕获和处理异常。 四、程序阅读题(共30分) 1.阅读程序,回答问题 1): public class A { 2): public static void main(String args[]) { 3): int x=1; 4): for(int i=1;i<=5;i++) { 5): if(i%2==0) 6): continue; 7): x*=i; 8): } 9): n("x="+x); 10): } 11): } (1)这是那一类java程序?(3分) (2)程序输出的结果是什么?(3分) 2.阅读下面的程序(或程序片段),回答问题 。 import cs; import ; public class BreakTest extends Applet { public void paint( Graphics g ) { int count, xPos = 25; for ( count = 1; count <= 10; count++ ) { if ( count == 8 ) break; ring( " " + count, xPos, 25 ); xPos += 10; } } } 问题: 1)程序的输出结果是什么?(3分) 2)方法调用ring( " " + count, xPos, 25 );的第一个实参中为什么要有串 " " ?(3分) 3.写出下列程序的功能(3分) import .*; import ; public class Applet1 extends Applet { public void paint( Graphics g ) { ne( 30,5,100,45 ); ct( 30,50,50,20 ); al( 30,80,50,40 ); } } 4.阅读程序,根据程序功能,在指定的空白处填上适当的语句或语法成分,使程序完整。下面程 序的功能是输出数组各元素的和。(每空3分) import cs; import ; public class SumArray extends Applet { float[] a; a = new _______[6]; float sum=0.0f; public void init( ) { for ( int j = 0; j < ; j++ ) a[j] = j+1; for ( int i = 0 ; i < ; i++ ) sum+ = a[i]; } public void paint( Graphics g ) { ring( "Total of array elements: " + ________ , 25, 25 ); } } 5.阅读程序,回答问题 1): public class A { 2): public static void main(String args[]) { 3): X x=new X(); 4): Y y=new Y(); 5): (); 6): (); 7): } 8): } 9): 10): class X { 11): public void showX() { 12): n("aaaaa"); 13): } 14): } 15): 16): class Y { 17): X a=new X( ) { 18): public void showX() { 19): n("bbbbb"); 20): } 21): }; 22): public void showY() { 23): (); 24): } 25): } 程序第5,6行的方法调用输出的结果如何?(3分) 6.阅读程序,回答问题 1): public class A { 2): public static void main(String[] args) { 3): long first=1,second=1,third; 4): (first + " " + second + " "); 5): for(int i = 3; i <= 6; i++) { 6): third = first + second; 7): (third + " "); 8): first = second; 9): second = third; 10): } 11): } 12): } (1)程序第5~10行的for循环共循环几次?(3分) (2)程序输出的结果是什么?(3分) 五、编程题(20分) 2.有下面一段Server段程序,目的是能够同时服务多个客户,客户的请求是一句话(一个 String)。如果这个请求的内容是字符串"plain"的话,服务器仅将"hello"字符串返回给用户。否 则将用户的话追加到当前目录的文本文件中(路径为""),并向用户返回"OK"。 注意Server并发的处理多用户,被共享,要求不能出现数据不一致。Server的程序如 下文件: public class Server{ public static void main(String args[]){ MemoController memoController = new MemoController(); try{ ServerSocket ss = new ServerSocket(1999); while (true){ Socket s = (); try{ UserThread t = new UserThread(s, memoController); (); }catch(Exception e){ tackTrace(); } } }catch(Exception e){ tackTrace(); }finally{ (); } } } 类UserThread程序如下: 文件: public class UserThread extends Thread{ Socket s; MemoController memo; public UserThread (Socket s, MemoController memo){ this.s = s; = memo; } public void run(){ try{ BufferedReader br = new BufferedReader(new InputStreamReader (utStream())); PrintWriter pw = new PrintWriter(new OutputStreamWriter (putStream())); String req = ne(); if (("plain")){ n("hello"); }else{ (req); n("OK"); } (); (); (); (); }catch(Exception e){ tackTrace(); } } } 请根据题目的要求和现有的, 的程序,完成类 的程序。(10分)
版权声明:本文标题:java自测题1 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://m.elefans.com/dianzi/1722422518a932143.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论