您的当前位置:首页正文

复习题库

2022-05-16 来源:星星旅游


1 Java中对数据库查询结果集进行操作的对象是() (D

A:Connection对象

B:Statement对象

C:DriverManager对象

D:ResultSet对象

2按运算符操作数的数目划分,运算符 ? :的类型是()A

A:三目

B:双目

C:四目

D:单目

3 有关在Java中定义实例方法和类方法的叙述正确的是() (D

A:前者有public修饰,后者没有public修饰

B:前者没有public修饰,后者有public修饰

C:前者有static修饰,后者没有static修饰

D:前者没有static修饰,后者有static修饰

4 Java代码g.drawLine(100,100,100,100)的功能是()B

A:画一个圆

B:画一条线段

C:画一个点

D:代码是错误的

5有Java语句如下,则说法正确的是() C

int []a,b=new int[3]; (1分)

A:此语句是错误的

B:a.length的值为3

C:b.length的值为3

D:a.length和b.length的值都为3

6 以下程序代码的输出结果是()B

System.out.println(100/8); (1分)

A:12.5

B:12

C:4

D:0

7 在Java语言中,一般不作为容器使用的是()

A:JDialog

B:JFrame

C:JTextArea

D:JPanel

8 在Java语言中,把按钮button的标题文字设置为“第一个按钮”的方法是() A

A:button.SetText(\"第一个按钮\")

B:button.GetText(\"第一个按钮\")

C:button.SetLabel(\"第一个按钮\")

D:button.GetLabel(\"第一个按钮\")

9、在Java程序中声明一个数组,错误的是()C

A:int a[];

B:int a[][];

C:float a[10];

D:float [ ]a[ ];

10、在Java程序中有定义:int x[][]=new int[4][5];则x.length和x[3].length的值分别是() A

A:4和5

B:5和4

C:4和3

D:5和3

11 定义一个使用接口Java.lang.Runnable的类,必须要实现的方法是() (1分B

A:start()

B:run()

C:init()

D:paint()

12、如果发生多个线程形成一个等待环,这样,所有线程都陷入相互等待的状态。这种循环等待现象称为() (1分)?

A:互斥

B:同步

C:死锁

D:临界

13、下列关于线程的说法正确的是() (

A:一个线程被创建,它就立即开始运行

B:使用start()方法可以使一个线程立即开始运行

C:当一个线程因为抢先机制而停止运行时,它被放在可运行队列的前面

D:一个正在运行的线程可能因为某些情况而进入阻塞状态

14 在Java程序中有代码如下:

System.out.println(

(new StringTokenizer(\"I am a student\

则输出结果为() (1分) c

A:I am a student

B:2

C:3

D:4

15、定义一个使用接口Java.lang.Runnable的类,必须要实现的方法是()

A:start()

B:run()

C:init()

D:paint()

16、下列关于继承的哪项叙述是正确的?( )

A、在java中允许多重继承

B、在java中一个类只能实现一个接口

C、在java中一个类不能同时继承一个类和实现一个接口

D、java的单一继承使代码更可靠

17、下列关于线程优先级的说法中,正确的是( )。

A、线程的优先级是不能改变的

B、线程的优先级是在创建线程时设置的

C、在创建线程后的任何时候都可以设置

D、B和C

18、对于构造函数,下列叙述正确的是( )。

A、构造函数不允许重载

B、构造函数没有返回类型

C、子类不允许调用父类的构造函数

D、在同一个类中定义的重载构造函数不可以相互调用

19 、JAVA中为字符型输入/输出流提供的读字符的方法所使用的类是( )。C

A、InputStream B、OutputStream C、FIleReader D、FileWriter

20、以下程序代码的输出结果是()D

int x=100;

System.out.println(\"5.5\"+x%8); (1分)

A:5.512

B:5.512.5

C:18

D:5.54

21、下列哪些字符串匹配模式”。boy\\\\w[3]”( )。

A、boy111 B、boy!@# C、boyweo D、boyboyboyboy

22下列哪个关键可用来定义Java常量( )。

A、 public B、static C、final D、void

23、在Java程序中有代码如下:

System.out.println(

(new StringTokenizer(\"I am a student\

则输出结果为() (1分)C

A:I am a student

B:2

C:3

D:4

24、为8位字节流数据提供读操作支持的类是() (1分)

A:FileInputStream

B:FileOutputStrem

C:FileReader

D:FileWriter

25、下列有关抽象类及抽象方法的叙述错误的是() (1分)

A:使用final修饰的类是抽象类

B:使用abstract修饰的方法是抽象方法

C:抽象类必须被继承才能使用,抽象类不可能有实例

D:抽象类可以没有抽象方法,但有抽象方法的类一定是抽象类

26、Java中对数据库查询结果集进行操作的对象是( )。

A、Connection ResultSet

B、Statement C、DriverManager D、

27、在Java中,一个类可同时定义许多同名的方法,这些方法的形式参数的个数、类型或顺序各不相同,传回的值也可以不相同。

这种面向对象程序特性称为( )。

A、隐藏 持此特性

B、覆盖 C、重载 D、Java不支

28、若在某一个类定义中定义有如下的方法:abstract void performdial();该方法属于(

)。

A、本地方法 法

B、抽象方法 C、解态方法 D、最终方

29、J2SE是( )

A、Java企业平台 B、Java标准平台 C、Java小型平台 D、Java小型平台第二版

31、下列哪种操作不会跑出异常()A

A :浮点数除以0得到Infinity D :a[-1]=100 ;

B : i=0/0 ; C : 打开不存在的文件

32、于length()表述正确的是()C

A : 数组有length()方法,String也有length()方法

A : 数组有length()方法,String没有length()方法

A : 数组没有length()方法,String有length()方法

A : 数组没有length()方法,String也没有length()方法

33、在Java程序中有定义:int x[][]=new int[4][5];则x.length和x[3].length的值分别是(

)。

A、4和5 B、5和4 C、4和3 D、5和3

34、下列程序的输出结果是( )。

StringBuffer buf1=new StringBuffer(20);

buf1.append(\"student\");

System.out.println(buf1.length()+\

A、 20,20 B、7,20 C、0,20 D、0,0

35、当使用FileInputStream类中的read()方法时,如果没有读入一个字节数据时,返回值为()

A:0

B:-1

C:true

D:false

36、下列程序的输入结果是( )。

StringBuffer buf1=new StringBuffer(20);

buf1.append(\"student\");

System.out.println(buf1.length() + \

A.20,20 B.7,20 C.0,20 D.0,0

39、一个实现Runnabel接口的类必须要实现的方法是() (

A:start()

B:run()

C:sleep()

D:init()

40、下列有关Java的叙述错误的是() (1分)D

A:强类型语言

B:与平台无关

C:可以使用汉字变量名

D:不检查数组下标越界

41下列有关数组的叙述错误的是() (1分)D

A:数组是将一组相同类型的数据顺序存储,组成一种复合数据类型

B:在Java语言中,数组是一种引用类型,数组名如同对象名一样,是一种引用

C:对于多维数组,从最高维开始,可以对每一维分配不等长的空间

D:在Java语言中,数组元素可以互相赋值,而数组名不能直接赋值

42.当线程A使用某个对象,而此对象又需要线程B修改后才能符合A线程的需要,这时线程A就要等待线程B完成修改工作,这种现象称为() (1分)

A:线程的同步

B:线程的互斥

C:线程的调度

43、StringBuffer类的字符对象的长度是()B

A :固定长度 B :可变长度 C : 长度必须小于16个字符 D :长度必须大于16个字符

44、对于catch子句的排列,下列正确的是()

A :父类在前,子类在后 B :父类在后,子类在前 C : 有继承关系的异常类不能在同一个try内 D :必须有Exception类的Catch捕捉

45、有如下程序段:

int total = 0;

for ( int i = 0; i < 4; i++ ){

if ( i == 1) continue;

if ( i == 2) break;

total += i;

}

则执行完该程序段后total的值为:( )。

A、0 B、1 C、3 D、6

46、有整型数组:int[] x={12,35,8,7,2};,则调用方法Arrays.sort(x)后,数组x中的元素值依次是(

)。

A、2 7 8 12 35 B、12 2 35 8 7 C、35 12 8 7 2 8 7 12 35 2

二、阅读下列程序,写出程序运行结果。

1、class A

{

int x,y;

A(int xx,int yy){x=xx;y=yy;}

}

interface A3202{int f3202(A a);}

interface B3202{int g3202();}

public class C3202 extends A implements A3202,B3202

D、

{

A a=new A(x,y);

C3202(int x,int y)

{

super(x,y);

this.x=x*x;

this.y=y*y;

}

public int f3202(A a){return x*a.x+x*a.y;}

public int g3202(){return x*a.x+x*a.y;}

public static void main(String[] args)

{

int x=10,y=20;

A a=new C3202(x,y);

C3202 c=new C3202(x,y);

System.out.println(a.x+\

System.out.println(c.f3202(a));

System.out.println(c.g3202());

}

}

2、class A

{

B obj;

A()

{

obj=new B();

obj.print();

System.out.println(\"AAA\");

}

class B

{

public void print()

{System.out.println(\"BBB\");}

}

}

public class Class3202

{

public static void main(String arg[])

{A obj=new A();}

考答案:程序运行结果:

BBB

AAA

3、写出下面程序的运行结果。

public class Class34ThreadTest

{

public static void main(String args[])

{

Hello h=new Hello();

Thread t=new Thread(h);

t.start();

}

}

class Hello implements Runnable

{

int i;

public void run()

{

while(true)

{

System.out.println(\"Hello\"+i++);

if(i==5) break;

}

}

})

4、public class AAAAa

{

public static void main(String arg[])

{

String str=\"www.sina.com.con/index.php\";

String regex=\"[./]\";

String s[]=str.split(regex);

for(int i=0;iSystem.out.println(s[i]);

}

}

a和b是两个LinkedList对象。各add一些元素。 List a和 b = new

LinkedList();a.add(\"A\");a.add(\"A\");a.add(\"A\");a.add(\"A\");a.add(\"A\");a.add(\"A\");

b.add(\"b\");b.add(\"b\");b.add(\"b\");b.add(\"b\");b.add(\"b\");b.add(\"b\");

ListIterator aIter = a.listIterator();

Iterator bIter = b.iterator();

while (bIter.hasNext()) {

if (aIter.hasNext())aIter.next();

aIter.add(bIter.next()); }

System.out.println(a);

}

6、import java.io.*;

public class CCCCC

{

public static void main(String args[ ])

{

File file=new File(\"hello.txt\");

char b[]=\"北京欢迎你\".toCharArray();

try{

FileWriter out=new FileWriter(file);//writing

out.write(b);

out.write(\"你好中国\");

out.close();

FileReader in=new FileReader(file);//reading

int n=0;

while((n=in.read(b,0,2))!=-1)

{

String str=new String(b,0,2);

System.out.println(str);

}

in.close();

}

catch(IOException e)

{

System.out.println(e);

}

System.out.println(\"b[]=\"+(new String(b)));

}

}

7、写出下面程序的运行结果

static int x;

static int Add(int y) {

x = x + y;

return x;

}

public static void main(String[] args) {

// TODO Auto-generated method stub

Add(1); System.out.printf(\"\\n%d\

Add(3); System.out.printf(\"\\n%d\",Add(40);

}

8、class ancestorClass

{ private int a=8;

protected int b=15;

void f( )

{System.out.print(a*b);}

void g( ){System.out.print(\"ancestorClass Function g has been called!\");

}

}

public class Test extends ancestorClass

{ int c=5;

public void f( )

{System.out.println(b/c);}

public void testfun( )

{System.out.println(\"son function testfun has been called!\");}

public static void main(String args[ ])

{ ancestorClass sc=new ancestorClass( );

sc.f( );

sc.g( );

sc=new Test( );

((Test)sc).testfun( );

}

}

9、class Test

{float F;

public double getF(float F )

{F++;

return this.F;

}

public static void main(String args[ ])

{System.out.println(new Test( ).getF(10));}

}

10、文件读写

ByteArrayOutputStream out=new ByteArrayOutputStream();

for(int i=1;i<=13;i=i+5){out.write(i); }

ByteArrayInputStream

ByteArrayInputStream(out.toByteArray());

in=new

int n=-1;

while((n=in.read())!=-1){

System.out.printf(\"\\nc\",(char)n);

11、class putOutData extends Thread

{public void run( ) { for(int i=2;i<=10;i++) System.out.print (i+\" \");}

}

class Test

{ public static void main(String args[ ]) throws InterruptedException

{Thread th=new putOutData( );

th.start( );

System.out.print(\"程序结束啦!\");

12、字符串创建时的区别

String ss=\"I Like ahut\";

String ssss = new String(ss);

String sss = \"I Like ahut\";

System.out.printf(\"%b\",ss == ssss);

System.out.printf(\"%b\",ss.equals(sss));

System.out.printf(\"%b\",ssss.equals(sss));

==是比较什么的?Equals是比较什么的?直接复制和new String()的区别

四、简答

1、什么是上转型对象?

2、什么叫接口回调?

3、什么是正则表达式?写出与模式“A[13568]{3}”匹配的几个字符串。

4、程序、线程和进程的关系?

5、、线程有4种状态?

6、FileInputStream流的read()方法和FileReader流的read()方法有何不同?它们的文件输出流分别对应哪个类?

7、java的方法重写继承的方法的规则是什么?覆盖或重写是什么?

8、String 和StringBuffer的区别?

9、子类继承方法时,可以降低方法的访问权限吗?

10、重载是什么?

11、抽象类的特点

12、接口的特点

五、程序设计题

1、编写一个方法string3703,要求在一个字符串数组中找出长度最长的一个元素。其中字符串数组是方法的参数,最长的一个元素是方法的返回值。 (6分)

参考答案:方法如下:

String string3703(String[]a)

{

String maxStr=a[0];

for(int i=1;iif(maxStr.length()maxStr=a[i];

return maxStr;

}

[解析]完整的程序如下:

public class Class3703

{

static String string3703(String[]a)

{

String maxStr=a[0];

for(int i=1;iif(maxStr.length()>a[i].length())

maxStr=a[i];

return maxStr;

}

public static void main(String[] args)

{

String b[]={\"asdf\

System.out.println(string3703(b));

}

}

输出结果为:as

2、 应用程序,求整数文件intfile1.txt中各行整数的和,并把和存入到另一个文件intfile2.txt中。设整数文件中全是整数,整数序列被分成行,各行整数个数不等且用空格分隔。要求程序将文件中各行整数的和及乘积输出在另一个文件中。 (6分)

infile1。Txt Infile2.txt

1 2 3 4 10 24

1 2 3 6 6

5 6 11 30

参考答案:程序如下:

import java.io.*;

import java.util.*;

public class Class3803

{

public static void main(String[]args)

{

RandomAccessFile in,out;

try

{

in=。。。。。 intfile1.txt\使用Filereader+BufferedReader

out=。。。。。\"intfile2.txt//使用FIleWriter +BufferedWriter String s;

while((s=in.readLine())!=null)

{

StringTokenizer token=new StringTokenizer(s);

long s=1;

while(token.hasMoreTokens())

{

自己补充完整

s*nteger.parseInt(token.nextToken());

}

out.write (sum);

}

in.close();out.close();

}

catch(FileNotFoundException e)

{System.out.println(\"文件找不到!\"+e);}

catch(IOException e)

{System.out.println(\"文件读写错!\"+e);}

}

}

3、

接口Shape中包含求面积和周长的方法,

interface Shape{

double 求面积();

double 求周长();

}

要求实现设计圆类和长方形类实现该接口,实现接口的两个方法,并测试之。

Class Cricle 实现接口{}

Class Rectangle实现接口{}

4、:

a) import java.util.*;

b) public class Example

c) {

d) public static void main(String args[])

e) {

f) Integer one=new Integer(1),

g) two=new Integer(2),

h) three=new Integer(3),

i) four=new Integer(4),

j) five=new Integer(5),

k) six=new Integer(6);

l) HashSet A=new HashSet(),

m) B=new HashSet(),

n) tempSet=new HashSet();

o) A.add(one);A.add(two);A.add(three);A.add(four);

p) B.add(one);B.add(two);B.add(five);B.add(six);

q) tempSet=(HashSet)A.clone();

r) A.removeAll(B);//A-B 差集-->A

s) B.removeAll(tempSet);//B-A 的差集

t) B.addAll(A);//(A-B)U(B-A)-->B

u) int number=B.size();

v) System.out.println(\"A和B的对称差集合中有\"+number+\"个元素\");//

w) Iterator iter=B.iterator();

x) while(iter.hasNext()){

y) Integer t=iter.next();

z) System.out.print(t.intValue()+\" \");

aa) }

bb) }

cc) }

4//球两个日子之间的天数

dd) calendar.set(1949,9,1);

ee) long time1949=calendar.getTimeInMillis();

ff) calendar.set(2005,9,1);

gg) long time2005=calendar.getTimeInMillis();

hh) long 相隔天数=(time2005-time1949)/(1000*60*60*24);

ii) System.out.println(\"2005年10月1日和1949年10月1日相隔\"+相隔天数+\"天\");

5、使用bufferedReader和BufferedWriter读写文件并输出到控制台,参考书上的例子。

A.txt文件中

Ahut

Cs

安工大

读出来并写道B。Txt文件中。

Ahut

Cs

安工大

6、县城编程:

s[] = {“a”,“b”,“c”,“d”,“e” };

1)_定义一个线程类,启动多个线程输出该字符串数组的内容;

2)要求每个线程输出完整的字符串“abcde”。顺序不能错。输出内容不能少一个字符。

7.定义线程:实现模拟卖票,要求实现多个线程协作卖票。并输出卖票的过程。

按照上课时所做的题目。

8大整数计算:

jj) 计算1个大整数的阶乘、计算2-3个大整数的最大值、最小值;计算两个大整数的和、差、乘积、商。

9、.编写一个方法array3702(),要求该方法有一个元素类型为int的数组参数,方法返回一个新数组,新数组的长度与参数数组的长度相同,而新数组元素的值是参数数组各元素的一半。-

kk) 参考答案:double[] array3702(int a[])

ll) {

mm) double x[]=new double[a.length];

nn) for(int i=0;ioo) {

pp) x[i]=a[i]/2.0;

qq) }

rr) return x;

ss) }

tt) [解析]完整的程序如下:

uu) public class Class3702

vv) {

ww) static double[] array3702(int a[])

xx) {

yy) double x[]=new double[a.length];

zz) for(int i=0;iaaa) {

bbb) x[i]=a[i]/2.0;

ccc) }

ddd) return x;

eee) }

fff) public static void main(String[]ggg) {

hhh) int a[]={1,2,3,4};

iii) double b[]=array3702(a);

jjj) for(int i=0;iargs)

kkk) System.out.print(b[i]+\" \");

lll) }

mmm) }

nnn) 输出结果为:0.5 1.5 2.0 1.0

因篇幅问题不能全部显示,请点此查看更多更全内容