JAVA习题-附完整答案(共12页)_第1页
JAVA习题-附完整答案(共12页)_第2页
JAVA习题-附完整答案(共12页)_第3页
JAVA习题-附完整答案(共12页)_第4页
JAVA习题-附完整答案(共12页)_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、JAVA程序设计习题一、 选择题1使用Java语言编写的源程序保存时的文件扩展名是( B )。 (A).class (B).java (C).cpp (D).txt2设int a=-2,则表达式a3的值为( )。 (A)0 (B)3 (C)8 (D)-13设有数组的定义int a = new int3,则下面对数组元素的引用错误的是( C )。(A)a0; (B)aa.length-1; (C)a3; D)int i=1; ai;4在类的定义中可以有两个同名函数,这种现象称为函数( D )。(A)封装 (B)继承 (C)覆盖 (D)重载5在类的定义中构造函数的作用是(D )。(A)保护成员变量

2、 (B)读取类的成员变量 (C)描述类的特征 (D)初始化成员变量6下面关键字中,哪一个不是用于异常处理语句( B )。(A)try (B)break (C)catch (D)finally7类与对象的关系是( A )。(A)类是对象的抽象 (B)对象是类的抽象 C)对象是类的子类 D)类是对象的具体实例 8下面哪一个是Java中不合法的标识符( D )。 (A)$persons (B)twoNum (C)_myVar (D)*point9为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为( A )。(A)static void

3、 method( ) (B)public void method( ) (C)final void method( ) (D)abstract void method( )10欲构造ArrayList类的一个实例,此类继承了List接口,下列哪个方法是正确的( C )。(A)ArrayList myList=new Object( ) (B)List myList=new ArrayList( )(C)ArrayList myList=new List( ) (D)List myList=new List( )11.Java源文件和编译后的文件扩展名分别为(B )(A) .class和 .ja

4、va (B).java和 .class (C).class和 .class (D) .java和 .java 12.在Java Applet程序用户自定义的Applet子类中,一般需要重载父类的( D )方法来完成一些画图操作。(A) start( ) (B) stop( ) (C) init( ) (D) paint( )13.对于一个Java源文件,import, class定义以及package正确的顺序是: A(A) package,import,class (B) class,import,package (C) import,package,class (D) package,cl

5、ass,import14.下面哪个是非法的:A(A) int I = 32; (B) float f = 45.0; (C) double d = 45.0; (D) char c = u;15Java语言使用的字符码集是D (A) ASCII (B) BCD (C) DCB (D) Unicode 16. 如果一个类的成员变量只能在所在类中使用,则该成员变量必须使用的修饰是C(A) public (B) protected (C) private (D) static17.下面关于main方法说明正确的是B(A) public main(String args ) (B) public st

6、atic void main(String args ) (C) private static void main(String args ) (D) void main()18.哪个关键字可以对对象加互斥锁?( B )(A) transient (B) synchronized (C) serialize (D) static19.关于抽象方法的说法正确的是( )(A)可以有方法体 (B) 可以出现在非抽象类中 (C) 是没有方法体的方法 (D) 抽象类中的方法都是抽象方法20.java.io包的File类是 (A)字符流类 (B) 字节流类 (C) 对象流类 (D) 非流类21Java a

7、pplication中的主类需包含main方法,以下哪项是main方法的正确形参?( B )A、String argsB、String argsC、Char argD、StringBuffer args22以下代码段执行后的输出结果为( A )int x=3; int y=10;System.out.println(y%x);A、-1B、2C、1D、323以下关于继承的叙述正确的是( A )。A、在Java中类只允许单一继承B、在Java中一个类只能实现一个接口C、在Java中一个类不能同时继承一个类和实现一个接口D、在Java中接口只允许单一继承24. 若有定义:byte x=11,22,3

8、3,-66;其中0k3,则对x数组元素错误的引用是( C )A)x5-3B)xkC)xk+5D)x025paint()方法使用哪种类型的参数? ( A ) A、Graphics B、Graphics2D C、String D、Color26以下哪个不是Java的原始数据类型( B )A、intB、BooleanC、floatD、char27在Java中,一个类可同时定义许多同名的方法,这些方法的形式参数的个数、类型或顺序各不相同,传回的值也可以不相同。这种面向对象程序特性称为(C )A) 隐藏 B) 重写C) 重载D) Java不支持此特性28 以下有关构造方法的说法,正确的是:( A )A

9、一个类的构造方法可以有多个B 构造方法在类定义时被调用C 构造方法只能由对象中的其它方法调用。D 构造方法可以和类同名,也可以和类名不同29在浏览器中执行applet 程序,以下选项中的哪个方法将被最先执行( A )。A、init()B、start() C、destroy() D、stop()30给出下面代码,关于该程序以下哪个说法是正确的?( C )public class Person static int arr = new int5;public static void main(String a) System.out.println(arr0); A、编译时将产生错误B、编译时正确

10、,运行时将产生错误C、输出零D、输出空31、有以下方法的定义,请选择该方法的返回类型( D )。ReturnType method(byte x, double y)return (short)x/y*2;A、byteB、shortC、intD、double32下列类定义中哪些是合法的抽象类的定义?( C )A、abstract Animalabstract void growl(); B、class abstract Animalabstract void growl(); C、abstract class Animalabstract void growl(); D、abstract cl

11、ass Animalabstrac t void growl()System.out.println(“growl”);33有以下程序片段,下列哪个选项不能插入到行1。( D )1.2.public class Interesting3./do sth 4. A、import java.awt.*;B、package mypackage;C、class OtherClass D、public class MyClass 34. 设有下面两个赋值语句: a = Integer.parseInt(“12”); b = Integer.valueOf(“12”).intValue(); 下述说法正确

12、的是( D )。A、a是整数类型变量,b是整数类对象。B、a是整数类对象,b是整数类型变量。C、a和b都是整数类对象并且值相等。D、a和b都是整数类型变量并且值相等。35在编写Java Applet程序时,需在程序的开头写上( B )语句。A、import java.awt.* ; B、import java.applet.Applet ;C、import java.io.* ; D、import java.awt.Graphics ;36下列哪一项不属于Swing的顶层容器?( B )A)JAppletB)JTreeC)JDialogD)JFrame37. 为了使包ch4在当前程序中可见,可

13、以使用的语句是( A )。A)import ch4.*; B)package ch4.*;C)ch4 import; D)ch4 package;38. 请问所有的异常类皆继承哪一个类?( B )。A)java.io.ExceptionB)java.lang.ThrowableC)java.lang.ExceptionD)java.lang.Error39进行Java基本的GUI设计需要用到的包是( C )。A)java.ioB)java.sqlC)java.awtD)java.rmi40. 当点击鼠标或者拖动鼠标时,触发的事件是下列的哪一个?( D )A)KeyEventB)ActionEv

14、entC)ItemEventD)MouseEvent二、 填空题:1数组x定义:String x =new int32; x0 0 =”abc”, x0 1=”12345”;则 x.length 的值为_6_,x01.length( ) 的值为_5_。2、Java语言的变量由变量名、_变量类型_、变量属性、_变量初值_组成。3、当程序中需要抛出异常时,应该使用_throw_子句,当需要在方法中声明可能抛出的异常类型,应该使用_throws_子句。4、java.applet包中的_Applet_类定义了Applet与其运行环境之间的一个标准接口。5、Java语言中提供的GUI功能主要由java.

15、awt包和_javax.swing_包中的类和接口实现。6、Java源程序文件和字节码文件的扩展名分别为_.java_和_.class_。7、Java语言的类型检查机制要求对于没有返回值的方法,在其前面必须加_void_进行说明。8、 类是Java语言的一种_复合_数据类型。9、 在Java语言中,所有的对象均通过_new_运算符分配内存,并对内存进行自动管理。10、每个Java Application程序可以包括许多方法,但是必须有且只能有一个_main_方法,统一格式为_public static void mian(String args)_,它是程序执行的入口。11、 若要在程序中定义

16、一个公用的int型的类成员变量MAX_LENGTH,且该变量的值保持常数值1000,则定义该变量的语句是_public final int MAX_LENGTH=1000_。12、 子类必须通过_super_关键字调用父类有参数的构造函数。13、 在Java语言中,所有的类都是类_object_的子类。14、 在Java程序中,通过类的定义只能实现单重继承,但通过_接口_ 的定义可以实现多重继承关系。15、 如果在Java程序中,需要使用javautil包中的所有类,则应该在程序开始处加上语句_import java.tuil.*;_。16、 下列程序的运行结果是_01234_public c

17、lass ex2 public static void main(String args) for(int cnt=0;cnt10;cnt+)if(cnt=5)break;System.out.print(cnt);17、 下列程序的运行结果是_4_import java.io.*;public class ATest public static void main(String args) SubClass sb = new SubClass( ); System.out.println(sb.fun( ); class SuperClass int a =24 , b =5 ; class

18、 SubClass extends SuperClass int fun( ) return a%b; 18、 分析下列程序,填上空白处的语句class point /定义坐标类 int x,y; test(int a,int b) x=a;y=b;class rec_extends point_/定义长方形类int length,width;rec(int a1,int b1,int l,int w)super(a1,b1);length=l;width=w;class testpublic static void main(String args)_rec r1=new r1(0,0,10

19、,20);_/定义名为r1的对象同时初始化坐标为0,0,长度为10,宽度为20r1.print();19、Java 源文件中最多只能有_1_个公共类,其它类的个数不限。 20、在 Java 中所有实现的多维数组,实际上是由一维数组构成的_数组的数组_。21、设 x =15 ,则表达式 ( x + + )4 的值是_3_。22、_抽象_方法是一种仅有方法头,没有具体方法体和操作实现的方法,该方法必须在抽象类之中定义。23、 _run()_方法用于定义线程的执行体. _start()_方法用于启动线程.24、String str1=”abc”;String str2=new String(“abc

20、”); System.out.println(str1=str2); 则程序运行后输出结果为:_1_25、Java语言中,有一个类是所有类或接口的父类,这个类的名称是 _object_。26、当启动 Applet 程序时,首先调用的方法是_init()_。27、Java语言是一种完全的_面向对象的_程序设计语言。28. 如果一个Java Applet源程序文件只定义有一个类,该类的类名为MyApplet,则类MyApplet必须是_类的子类并且存储该源程序文件的文件名为 。29. 设 int x = 2 ,则表达式 (x+)/3 的值是_0_。30. Java提供的访问权限修饰符有4个,即:p

21、ublic、_private_、protected和友元。31. Java中有两种常用的字符串类,一个是String,另一个是_StringBuffer_。32. Java实现多线程的方法有两种,一种方法是通过创建_Thread_类的子类实现多线程,另一种方法是定义一个实现_Runnable_接口的类。33. Java不支持多继承。但它允许一个类同时实现多个_接口_,这就相当于部分实现了多继承。34. Java源文件中,_import_语句位于package语句之后、类定义之前。35. _FileOutpuStream_类是OutputStream类的子类,用来处理以文件作为数据输出的数据流。

22、三、编程题:1编写一个输出Hello World!的程序,用两种方式实现(Application、Applet)。Application(2分) public class Hello public static void main(string args) System.out.println(“Hello World!”); Applet(4分) import java.awt.Graphics; import.java.applet.Applet; public class HelloApplet extends Applet public void paint(Graphics g) g

23、.drawString(“Hello World!”,20.20); 2编写一个Java Application,接收从键盘输入的10个整数,并输出其中的最大、最小以及平均值。要求:将计算功能定义在一个类中,由主类接收输入,再用数组的方式传递给实现计算的类的方法,再输出结果。package test;import java.awt.BorderLayout;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.io.IOException;import java.util.Array

24、s;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JOptionPane;import javax.swing.JTextField;public class QuestionTwo public static void main(String args) throws IOException MyFrame frame = new MyFrame(); frame.setVisible(true); class MyFrame extends

25、JFrame implements ActionListener /* */ private static final long serialVersionUID = 1L; private JButton buttonShow; private JTextField inputField; public MyFrame() init(); private void init() / 设置窗体外观 setSize(500, 500); / new出新组件 JLabel label = new JLabel(请在些输入数字,以空格分隔.); inputField = new JTextField

26、(); buttonShow = new JButton(显示最大值及最小值.); / 布局 setLayout(new BorderLayout(); add(label, BorderLayout.EAST); add(inputField, BorderLayout.CENTER); add(buttonShow, BorderLayout.SOUTH); / 增加事件监听 buttonShow.addActionListener(this); Override public void actionPerformed(ActionEvent event) if (event.getAct

27、ionCommand().equals(buttonShow.getActionCommand() String inputString = inputField.getText(); if (null = inputString | 0 = inputString.trim().length() showMessage(请先按要求输入整数!); String numStrs = inputString.split( ); Integer nums = new IntegernumStrs.length; int realIndex = 0; int index = 0; for (Strin

28、g numStr : numStrs) try numsrealIndex+ = Integer.parseInt(numStr); catch (Exception e) showMessage(第 + (index + 1) + 个数输入的不是整数!跳过); realIndex-; index+; Arrays.sort(nums, 0, realIndex); showMessage(最小的数为: + nums0); showMessage(最大的数为: + numsrealIndex - 1); private void showMessage(String message) JOpt

29、ionPane.showMessageDialog(this, message); 3编写一个程序,使用复数类Complex验证两个复数 1+2i 和3+4i 相加产生一个新的复数 4+6i 。复数类Complex必须满足如下要求: (1) 复数类Complex 的属性有:RealPart : int型,代表复数的实数部分ImaginPart : int型,代表复数的虚数部分(2) 复数类Complex 的方法有:Complex( ): 构造函数,将复数的实部和虚部都置0Complex( int r , int i ): 构造函数,形参 r 为实部的初值,i为虚部的初值。Complex com

30、plexAdd(Complex a): 将当前复数对象与形参复数对象相加,所得的结果仍是一个复数值,返回给此方法的调用者。String ToString( ) : 把当前复数对象的实部、虚部组合成 a+bi 的字符串形式,其中a 和 b分别为实部和虚部的数据。import java.applet.*;import java.awt.*;public class ok extends Applet Complex a,b,c; public void init() a=new Complex(1,2); b=new Complex(4,6); c=new Complex(); public vo

31、id paint(Graphics g) c=plexAdd(b); g.drawString(第一个复数:+a.toString(),10,50); g.drawString(第二个复数:+b.toString(),10,70); g.drawString(两复数之和:+c.toString(),10,90); class Complex int RealPart,ImaginPart; Complex()RealPart=0;ImaginPart=0; Complex(int r,int i) RealPart=r; ImaginPart=i; Complex complexAdd(Com

32、plex a) Complex temp=new Complex(); temp.ImaginPart=ImaginPart+a.ImaginPart; temp.RealPart=RealPart+a.RealPart; return temp; public String toString() return (RealPart+ImaginPart+i); 4.求10个数中的最大值并输出。 class max public static void main(String args) int a=new int10; for(int i=0;i10;i+) try byte buf=new

33、byte10; System.out.println(请输入第+(i+1)+个数据); System.in.read(buf); String str=new String(buf,0); ai=Integer.parseInt(str.trim(); catch(Exception e) int max=a0; for(int i=1;i10;i+) if(maxs2.sum() s1.print(); else s2.print(); 6.编写一个Application,接受用户输入的帐号和密码,给三次输入机会.(8分) import javax.swing.*;importjava.aw

34、t.*;importjava.awt.event.*;publicclass Lx9_6 extends JFrame implements ActionListenerJLabel jl1,jl2,jl3;int n=0;JPasswordField jp1,jp2;JButton jb1,jb2;JPanel p; /JFrame f;public Lx9_6() super(Lx9_6演示);/Container c=getContentPane();jl1=new JLabel(请输入您的密码:,JLabel.CENTER);jl2=new JLabel(请输入密码!);jl3=new

35、 JLabel(您有三次输入机会,JLabel.LEFT);jp1=new JPasswordField(8); p=new JPanel(); jb1=new JButton(提交); jb1.setActionCommand(tijiao); jb2=new JButton(取消); jb2.setActionCommand(quxiao);p.setBorder(BorderFactory.createTitledBorder(密码设置); p.setLayout(new GridLayout(2,2); p.add(jl1); p.add(jp1); p.add(jb1); p.add

36、(jb2); jb1.addActionListener(this); jb2.addActionListener(this);/f.add(p); getContentPane().add(p,BorderLayout.NORTH); getContentPane().add(jl2,BorderLayout.CENTER); getContentPane().add(jl3,BorderLayout.WEST); publicvoid actionPerformed(ActionEvent e) if(e.getActionCommand().equals(tijiao)n+;System

37、.out.print(n); if(e.getSource()=jb1) if(jp1.getPassword().length0) if(String.valueOf(jp1.getPassword().equals(123456) jl2.setText(密码输入成功!);n-; else jl2.setText(密码输入不对,请重新输入!); jp1.setText(); elsejl2.setText(密码不能为空!); jp1.setText(); ; if(e.getSource()=jb2) jp1.setText(); jl2.setText(请输入!); jl3.setText(第+n+次输入!); if(n3)System.exit(0); public static void main(String a) Lx9_6 f=new Lx9_6(); f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); f.setSize(400,200); f.setVisible(true); 7.定义一个圆类circle,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论