《Java程序设计》练习题.docx

上传人:b****5 文档编号:3244836 上传时间:2022-11-21 格式:DOCX 页数:14 大小:21.90KB
下载 相关 举报
《Java程序设计》练习题.docx_第1页
第1页 / 共14页
《Java程序设计》练习题.docx_第2页
第2页 / 共14页
《Java程序设计》练习题.docx_第3页
第3页 / 共14页
《Java程序设计》练习题.docx_第4页
第4页 / 共14页
《Java程序设计》练习题.docx_第5页
第5页 / 共14页
点击查看更多>>
下载资源
资源描述

《Java程序设计》练习题.docx

《《Java程序设计》练习题.docx》由会员分享,可在线阅读,更多相关《《Java程序设计》练习题.docx(14页珍藏版)》请在冰豆网上搜索。

《Java程序设计》练习题.docx

《Java程序设计》练习题

《Java程序设计》练习题一

一、单项选择题

1、下列是继承Thread类后得到的子类,请选择正确的一项。

(C)

A、classA4extendsThreadB、classA4implementsThread

{{

voidrun()publicvoidrun()

{{

//…..//…..

}}

}}

C、classA4extendsThreadD、classA4extendsThread

{{

publicvoidrun()run()

{{

//…//…

}}

}}

2、下列关于Unicode-亨符的说法中,不正确的一项是(C)。

A、Unicode字符集比ASII字符集丰富B、Unicode字符是16位无符号数

C、字符常量’a’以八进制数表示为’\142’D、字符常量’a’以八进制数表示为’\14l’

3、在Java语言中,那一个是最基本的元素?

(C)

A、方法B、包C、对象D、接口

4、while循环和do……while循环的区别是:

(C)

A、没有区别,这两个结构任何情况下效果一样

B、while循环比do……while循环执行效率高

C、while循环是先循环后判断,所以循环体至少被执行一次

D、do……while循环是先循环后判断,所以循环体至少被执行一次

5、下列说法中,错误的一项是(A)。

A、MouseAdapter是鼠标运动适配器B、WindowAdapter是窗口适配器

C、ContainerAdapter是容器适配器D、KeyAdapter是键盘适配器

6、在JavaApplet程序用户自定义的Applet子类中,一般需要重载父类的(C)方法来完成主类实例的初始化工作。

A、start()B、stop()C、init()D、paint()

7、下列哪一项不是Applet的生命周期方法?

(B)

A、start()B、getCodeBase()C、destroy()D、init()

8、Frame的默认的布局管理器是下列哪一个(D)

A、FlowLayoutB、CardLayout

C、GridLayoutD、BorderLayout

9、下列说法中,正确的一项是(C)。

A、双精度数强制转换成单精度数后,其数值精度会提高

B、Java语言中的布尔变量可以和整型变量相互强制转换

C、强制转换是将存储长度长的数据转换为长度短的数据

D、强制转换是将存储长度短的数据转换为长度长的数据

10、下列代码的执行结果为:

(A)

publicclassTest

{

publicstaticvoidmain(String[]args)

{

System.out.println(5/2);

}

}

A、2B、2.0C、.50D、2.5

11、使用方法(D)来启动线程。

A、sleep方法B、interrupt方法C、run方法D、start方法

12、如果在关闭Socket时发生一个I/O错误,会抛出(A)

A、IOExceptionB、UnknowHostException

C、SocketExceptionD、MalFormedURLExcepton

13、下列描述中,哪一项不属于finally语句应陔执行的功能(C)?

A、释放资源B、关闭文件C、分配资源D、关闭数据库

14、哪个布局管理器使用的是组件的最佳尺寸(B)

A、FlowLayoutB、GridLayout

C、BorderLayoutD、CardLayout

15、为了区分重载多态中同名的不同方法,要求(C)。

A、调用时用类名或对象名做前缀B、返回值类型不同

C、形式参数个数或者类型不同D、形式参数名称不同

16、创建一个标识有“关闭”按钮的语句是(D)。

A、TextFieldb=newTextField(“关闭”);

B、Labelb=newLabel(“关闭”);

C、Checkboxb=newCheckbox(“关闭”);

D、Buttonb=newButton(“关闭”);

17、下列哪一个包给出了Runnable接口的定义?

(C)

A、iava.uti1B、java.IoC、java.1angD、java.sql

18、main()方法是JavaApplication程序执行的入口点,关于main()方法的方法头下面哪一项母合法的?

(B)

A、publicstaticvoidmain()B、publicstaticvoidmain(Stringargs[])

C、publicstaticintmain(Stnng[]arg)D、publicVoidmain(Stnngarg[])

19、下列哪一个类实现了线程组?

(B)

A、java.lang.ObjictB、java.1ang.ThreadGroup

C、Java.1ang.ThreadD、java.1ang.Runnable

20.下列各选项中,哪一个不是JAVA的合法标识符?

(A)

A、1dsfB、qa21C、$_aD、_ss11

二、简答题(2*5分=10分)

1、列举四种线程进入不可运行状态的原因。

答:

1)调用了sleep()方法(睡眠,静态方法);

2)调用了suspend()方法(挂起,已过时);

3)为等候一个变量,调用wait()方法(等待);

4)输入输出流(I/0)中发生线程阻塞;

5)调用yield()方法(暂停)

2、简述编写并执行一个Java程序的步骤。

答:

主要分为三步:

(1)编写源程序。

一般使用记事本等文本编辑器编辑java源程序,扩展名为.java;

(2)编译:

利用java的编译器javac.exe对源程序进行编译生成以.class为后缀的文件;

(3)解释执行:

需要java解释器来解释执行,若是java小程序,需要浏览器或java自带的appletviewer.exe程序,若是java应用程序,需要java.exe程序。

三.程序结果题(2*5分=10分)

1、以下程序的运行结果是什么?

publicclasstest1

{

publicstaticvoidmain(String[]args)

{

System.out.println(10/2);

System.out.println(10/2.0);

System.out.println(10.0/2);

}

}

答案:

5

5.0

5.0

2、classT1extendsThread

{

publicvoidrun()

{

inta=0;

do{

System.out.print(a+"\t");

a++;

}while(a<3);

}

}

publicclasstest{

publicstaticvoidmain(String[]args){

T1t=newT1();

t.start();

}

}

 

答案:

012

 

四、编程题(40分)

1、编写打印下列图形的程序:

(10分)

###

###

####

1、答案:

publicclassTest_17_1{

publicstaticvoidmain(String[]args){

inti,j;

for(i=1;i<=4;i++){

for(j=1;j<=i;j++){

System.out.print("#"+"");

}

System.out.println();

}

}

}

2、编写一各Java程序,查找1~100之间的素数并将运行结果输出。

(10分)

2、[解答]:

publicclassTest_14{

publicstaticvoidmain(String[]args){

intm,k,i,n=0;

booleanflag;

for(m=1;m<=100;m=m+2){

flag=true;

k=(int)Math.sqrt(m);

for(i=2;i<=k;i++)

if(m%i==0){

flag=false;

break;

}

if(flag){

System.out.print(m+"");

n=n+1;

}

if(n%10==0)

System.out.println();

}

}

}

3、编写一个输出"HelloWorld!

"的程序,用两种方式实现(Application、Applet)。

(20分)

3、[解答]:

1)

 publicclassaa

{

publicstaticvoidmain(Stringargs[])

{

System.out.println("Hello,World!

");

}

}

2).

//

//

importjava.awt.Graphics;

importjava.applet.Applet;

publicclassaaextendsApplet{

Strings;

publicvoidinit(){

s="HelloWorld!

";

}

publicvoidpaint(Graphicsg){

g.drawString(s,25,25);

}

}

 

《Java程序设计》练习题二

一、单项选择题(20*2=40分)

1、下列不属于Java保留字的一个是(B)。

A、elseB、UnicodeC、charD、static

2、下列方法中哪一个不能用于获取异常信息(C)?

A、toString()B、getMessage()

C、drawline()D、printStackTrace()

3、现有一个整型数组a[4],它的所有数组元素是(D)。

A、a0.a1,a2.a3B、a[0],a[1],a[2],a[3],a[4]

C、a[1],a[2],a[2],a[4]D、a[0],a[1],aE2],a[3]

4、下列不属于java.awt包中的基本概念的一项是(C)。

A、容器B、构件C、线程D、布局管理器

5、下面关于java中类的说法哪个是不正确的(C)

A、类体中只能有变量定义和成员方法的定义,不能有其他语句。

B、构造函数是类中的特殊方法。

C、类一定要声明为public的,才可以执行。

D、一个java文件中可以有多个class定义。

6、下列哪个不是面向对象程序设计方法的特点?

(D)

A、抽象B、继承C、多态D、结构化

7、能构成多分支的语句是(C)。

A、for语句 B、while语句

C、switch语句   D、do—while语句

8、对于双精度浮点类型,常数NaN是由哪个包装类提供的?

(D)

A、java.1ang.IntegerB、java.1ang.Float

C、java.1ang.LongD、java.1ang.Double

9、抽象方法:

(C)

A、可以有方法体B、可以出现在非抽象类中

C、是没有方法体的方法D、抽象类中的方法都是抽象方法

10、下列标识符中,合法的一个是(D)。

A、$#@!

$B、$--$C、2$$2D、$22$

11、InputStream和Reader的区别在于:

(B)

A、前者带有缓冲,后者没有

B、每次读入的字节数不同

C、前者是块读写,后者是字节读写

D、二者没有区别

12、已知定义:

inta[]={1,2,3,4,5,6,7,8,9,10};,为了打印输出数组a的最后一个元素,下面正确的代码是(B)。

A、System.out.println(a[10]);B、System.out.println(a[9]);

C、System.out.println(a[a.1ength]);D、System.Out.println(a(8));

13、下列说法中错误的一项是(D)。

A、Applet参数的名字必须区分大小写

B、Applet参数的值都是字符串类型的值

C.应该为Applet参数设置一个默认值,可以避免Applet工作不正常

D、获得参数的方法getParameter()可以不放在init()方法中进行

14、下列关于注释语句的描述中,正确的一项是(C)。

A、以//开始的是多行注释语句

B、以/*开始,*/结束的是单行注释语句

C、以/**开始,*/结束的是可以用于生成帮助文档的注释语句

D、以/**开始,*/结束的是单行注释语句

15、下列哪一项不属于Applet中的显示方法?

(A)

A、update()B、repaint()C、drawLine()D、paint()

16、哪个关键字可以对对象加互斥锁?

(B)

A、transient

B、synchronized

C、serialize

D、static

17、JApplet的默认布局管理器是(B)。

A、FlowLayoutB、BorderLayoutC、GridLayoutD、BoxLayout

18、下列API不属于java.1ang.Math类的一个是(C)。

A、random()B、abs()C、drawLine()D、sin()

19、Java语言属于下列哪一种语言?

(B)

A、面向机器的语言B、面向对象的语言

C、面向过程的语言D、面向操作系统的语言

20、下列哪一项不是Applet的生命周期方法?

(B)

A、start()B、getCodeBase()C、destroy()D、init()

二、简答题(2*5分=10分)

1、Applet程序运行需要经过哪几步?

(1)编写Applet源程序.java

(2)编译生成.class文件

(3)在HTML文件中加入Applet标记

(4)在浏览器中打开相应的HTML网页从而运行Applet程序

2、简述public、private和protected的含义。

(1)public:

公共、公开,可被任何类访问;可以用来修饰类、类中的成员和类中的方法;一个类被public修饰,表明它可以被所有的其他类所访问和引用,包括创建该类的对象,访问该类内部可见的成员和调用它可见的方法;

(2)private:

私有;private只能用来修饰类中的成员和类中的方法;用private修饰的成员或方法,只能被该类自身所访问和修改,而不能被任何其他类,包括该类的子类来访问和引用;

(3)protected:

保护;只用来修饰类中的成员和类中的方法;用protected修饰的成员可以被三种类所引用:

本身、同一个包内的其他类、该类的子类;它主要是用于类的继承,即子类可以访问父类中的protected成员和方法。

三.程序结果题(2*5分=10分)

1、publicclassex24{

publicstaticvoidmain(String[]args){

inta=2;

intb=3;

intc=7;

intd=a>c?

a:

c;

d=d>>2>b?

d:

b;

System.out.println(b);

}

}

答案:

3

2、publicclasstest{

publicstaticvoidmain(String[]args){

int[][]a=newint[3][3];

for(inti=1;i<4;i++)

for(intj=1;j<4;j++)

a[i-1][j-1]=(i

i/j:

j/i);

}

};

答案:

100010001

四、编程题(40分)

1、设一字符串中包含有大写字母的字符,也有下写字母的字符,编写一程序,将其中的大小写字母的字符分别输出。

(10分)

[解答]:

publicclasstest1{

publicstaticvoidmain(String[]args){

Strings="sdQfEKJsfjEKjhjsjQHdFfKjSDFsdf";

Strings1="",s2="",s3;

for(inti=0;i

s3="ABCDEFGHIJKLMNOPQRSTUVWXYZ";

if(s3.indexOf(s.charAt(i))!

=-1){

s1=s1+s.charAt(i);

}else{

s2=s2+s.charAt(i);

}

}

System.out.println("大写字母:

");

System.out.println(s1);

System.out.println("小写字母:

");

System.out.println(s2);

}

}

2、编写程序找出所有的水仙花数并输出。

水仙花数是三位数,它的各位数字的立方和等于这个三位数本身,例如371就是一个水仙花数:

371=3*3*3+7*7*7+1*1*1。

(10分)。

public class Narcissus

{

   public static void main(String args[])

   {

      int i,j,k,n=100,m=1;

      //while

      while(n<1000)

      {

         i=n/100;

         j=(n-i*100)/10;

         k=n%10;

         if((Math.pow(i,3)+Math.pow(j,3)+Math.pow(k,3))==n)

             System.out.println("找到第"+ m++ +"个水仙花数:

"+n);

      }

     //end while

     //for

     m=1;

     for(n=100;n<1000;n++)

     {

       i=n/100;

       j=(n-i*100)/10;

       k=n%10;

       if((Math.pow(i,3)+Math.pow(j,3)+Math.pow(k,3))==n)

          System.out.println("找到第"+ m++ +"个水仙花数:

"+n);

      }

      //end for

  }

}

3、定义一个表示教师的教师类,包括的域有身份证号、姓名、性别、年龄,包括的方法有获得身份证号、姓名、性别、年龄及修改年龄。

编写Java程序创建teacher类的对象及测试其方法的功能。

(20分)

答案:

程序代码段如下:

classteacher{

privateStringid;

privateStringname;

privateStringsex;

privateintage;

teacher(Stringid,Stringname,Stringsex,intage)

{this.id=id;

this.name=name;

this.sex=sex;

this.age=age;

}

publicStringgetId()

{returnid;}

publicStringgetName()

{returnname;}

publicStringgetSex()

{returnsex;}

publicintgetAge()

{returnage;}

voidsetAge(intage)

{this.age=age;}

}

publicclassex34

{publicstaticvoidmain(Stringargs[])

{teachertea=newteacher("1501051873","李兵","男",23);

System.out.println("该教师的信息:

"+"\n身份证号:

"+tea.getId()+"\n姓名:

"+

tea.getName()+"\n性别:

"+tea.getSex()+"\n年龄:

"+tea.getAge());

tea.setAge(35);

System.out.println("修改后的年龄为:

"+tea.getAge());

}

}

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 小学教育 > 英语

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1