当前位置:文档之家› 《Java程序设计》练习题

《Java程序设计》练习题

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

《Java程序设计》练习题

一、判断题

1、Java语言采用面向对象的思想编程,具有跨平台、分布式、多线程等优点。()

2、在main方法中可以直接调用非静态的方法。()

3、方法重载就是一个类中有多个同名但有不同形参和方法体的方法。()

4、抽象类可有构造方法,因此也能用new进行实例化。()

5、一个类可继承多个父类,实现多个接口。()

6、用final修饰的类不能被继承。()

7、在Java程序中发生异常时,JVM会找到每个符合条件的catch都执行一次。()

8、一个Java源程序可有多个类,但只仅有一个public类,而且源程序名与public类名相同。()

9、类A和类B在同一个包中,则除了私有成员外,类A可以访问类B的所有成员。()

10、接口中的成员变量全部为常量,方法为抽象方法。()

11、方法中的形参可以和方法所属类的属性同名。 ( )

12、接口无构造器,不能有实例,也不能定义常量。 ( )

13、java的类不允许嵌套定义。()

14、在接口中所有的方法都是抽象方法,所以必须在方法定义之前加上abstract关键字。

()

15、抽象类中不能包含final修饰的方法。()

16、在Java程序中异常分为运行时异常和非运行时异常,非运行异常必须进行处理()

17、System.out和System.err都是标准的输出流,都可以在监视器上打印输出()

18、在JFrame中添加组件时不能直接用add方法。()

19、如果想让Frame窗口能够被关闭,则可以实现WindowListener接口,并且实现windowClosing()方法。()20、GridLayout的构造器可以包含两个参数,分别是指网格的行数和列数,行数为0则表示可以有任意行,列数为0则表示可以有任意列()

21、启动多线程必须调用start()方法, 如果调用run方法则没有启动新的线程()

22、run方法是运行线程的主体,若run方法运行结束,线程就消亡了。()

23、利用File对象可以判断一个文件或目录是否存在。 ( )

24、JFrame,JPanel,JApplet和JButton四种组件都属于容器组件。 ( )

25、BorderLayout是面板的缺省布局管理器。 ( )

26、BorderLayout最多可以使用5个组件。 ( )

27、一个面板(JPanel)不能被加入另一个面板(JPanel)中。 ( )

28、菜单需要一个JMenuBar对象,以使他们能被添加到JFrame。 ( )

29、线程可以用yield使同优先级的线程运行。 ( )

30、System.in是标准输入流,能用read方法读取键盘的输入。 ( )

31、数据流就是数据通信通道,指在计算机的输入输出之间运动的数据序列。( )

32、标签(JLabel)可以在屏幕上显示一个字符或一幅画。()

33、BorderLayout是容器javax.swing.JFrame默认的布局管理器。()

34、编写小应用程序(Applet)一般需要编写两种类型的文件,即Java源文件和Html文件。

()35、要在程序中实现多线程,必须在源程序前面使用import语句显示的导入Thread类。

()

36、通过类https://www.doczj.com/doc/727059073.html,.URL中的成员方法可获得网络资源定位器的相关信息()

37、catch块后必须有finally块。()

38、JTextArea可以用来接收多行文本的输入。()

39、一个线程创建并启动后,它将执行自己的run()方法。()

40、Socket的实例对象调用其成员方法getInputStream来获得该Socket所对应的输入流。

()

51、在Java坐标系统中,X值从左向右增加。()

52、BorderLayout布局管理器把组件排列在北、南、东、西和中间区域。()

53、JTextArea是提供操作单行文本的区域。()

54、异常处理器的排列次序影响处理异常的方法。()

55、线程可以用yield方法使较低优先级的线程运行。()

56、随机存取文件中的记录必须等长。()

57、数据报(DatagramPacket)传输是不可靠的,无法保证包按顺序到达。()

58、用catch(Exception exception)语句可以捕获所有异常和错误。()

59、每个Java线程的优先级都设置在常数1~12之间,默认的优先级设置为常数6。()

60、当Socket连接上面的传输结束后,服务器执行Socket的shutdown方法来关闭连接。

()

二、填空题

1、在JDK操作命令中,编译命令(或编译器)是_____________________,运行命令(或解释

器)是___________________,Java类文件归档命令是________________________,使

Applet应用小程序脱离Web浏览器环境进行运行和调试的命令是

________________________。

2、在Java基本数据类型中,float的缺省值是_________________,boolean的缺省值是

__________________。Java的变量类型分为_______________数据类型和______________数

据类型。

3、已知int x=123,则表达式x/100+x%100/10+x%10的值为___________________,表达式

++x + x++的值为______________________。

4、设 int x=12,y=5; 执行语句(x%y==0)&&(x>y)的值为________________,执行语句

x=x++/--y 后x的值为。

5、某Java源程序中有一个类的定义为:public class MyPrg,则该源程序的文件名应该

为:。

6、将一个字符串s转换为int型整数,需要用到包装类___ _ 的 ___ _ 方法。

7、语句String s = new String("xyz");创建了个String对象。

8、方法是一种仅有方法头,没有具体方法体和操作实现的方法,该方法

必须在抽象类之中定义。方法是不能被当前类的子类重新定义的方法。

9、定义字符串:

String s = new StringBuffer().append("a").append("b").append("c").toString();,

则s的值是____ _。

10、数组在Java语言中是一种__________________形式的数据类型,它存储的是数组的地

址,而不是数组的元素值,System类里的__________________方法是复制数组的一种方法,

它可指定需要复制元素和存放目标数组的位置。

11、创建一个名为 MyPackage 的包的语句是,

该语句应该放在程序的位置为:。

12、在java源程序的类头中使用关键字________声明该类实现某个接口。

13、对象是用________________关键字实例化类之后的结果,______________访问修饰符所声明的类成员,仅能被同包(同路径)或具有继承关系的相关类使用。

14、当一个类获取另一个类中所有的非私有的数据和操作作为它自己的部分或全部成分时,就称为这两个类之间具有______________关系。________________是用来实现类间多重继承功能的结构。

15、用new关键字实例化类之后的结果是__________,接口是指利用___________关键字来声明,其中不包含任何实现语句,仅建立抽象成员方法的一种类。

16、抽象类用关键字___________修饰,抽象类的目的是___________________。

17、Java中所有类都是类的子类。引用ArrayList和Vector 都要加载的语句是______________________________。

18、Throwable的直接子类是_____ ___和___ ______。

19、java通过五个关键字来管理异常处理:try,catch,_______,_______,________。

20、输入流和输出流在Java中对应两个抽象类____________和_____________。InputStream 及其子类读取_____流数据。Reader及其子类用于读取流数据。

21、输入输出异常类的类名是:、数组下标越界异常类的类名是:。

22、用FileInputStream类创建文件(c:\test.txt)对象的语句是____________________________________________,DataInputStream对象提供___________________方法可以按行读取文件内容。

23、创建以读写方式打开文件(c:\test.txt)的RandomAcessFile对象,并使得raf成为该对象的应用变量的语句是;之后,从c:\test.txt文件中读取一个int型整数到变量i中可以使用语句:。

24、在编写Java界面程序时,常用的布局管理器包括流式布局管理器FlowLayout、边界布局管理器BorderLayout、_____________________和__________________。

25、相对于AWT的组件来说,swing中的组件被称作,JFrame是swing 中的顶层容器组件,不能直接在它上面放置其他组件,而必须将组件放置在它内容面板上,获得其内容面板容器的方法是:。容器组件的布局管理器决定放置在它上面的各组件的大小和位置,可以用方法设置容器组件的布局管理器。

26、在Swing GUI层次体系中的顶层容器主要包括 javax.swing. 、javax.swing. 和javax.swing. 。

27、如果一个Java Applet源程序文件只定义有一个类,该类的类名为MyApplet,则类MyApplet必须是类的子类并且存储该源程序文件的文件名为。

28、当小应用程序被调用时,类Applet成员方法被首先调用,当关闭小应用程序时,类Applet成员方法被最后调用。

29、Container 的________方法可以将_______组件加入容器。

30、编写一个线程可以用继承类和实现接口来实现。

31、在执行Java线程的程序中,程序通过调用_______方法启动线程,随后又调用________方法。

32、如果几个并发线程对相同的数据对象进行存取,可能导致数据不一致,为避免发生这种情况,需要编程实现线程同步,在执行访问共享数据的代码时对数据加互斥锁,加锁语句的关键字是_______ ___________,如果编程时不注意,加锁可能导致死锁,避免死锁的一般做法是。

33、Java线程程序可以调用____________方法,使线程进入睡眠状态,可以通过调用___________________方法设置线程的优先级。

34、通过实现接口可以创建一个包含线程体的类,该接口只申明了一个方法:,假定一个线程体对象为rt,则可以用Thread myThread = 语句来创建一个线程对象,并用语句启动myThread 线程对象。

35、Java提供两种套接字,其中使用_______协议的被成为流套接字,使用____协议的被称为数据报套接字。

36、DatagramPacket类的________方法返回一个整数,它指定DatagramPacket的端口;DatagramPacket类的_________方法返回一个整数,它代表DatagramPacket中的字节数。

37、在TCP协议下建立通信程序,在服务器端首先要创建类的实例对象;在客户端,创建类实例对象。

38、https://www.doczj.com/doc/727059073.html,中提供了两个类_________________和_______________,分别用于服务器端和客户端的Socket通信。

39、用Java实现网络编程时,在有连接的Socket通信机制中,服务器端阻塞用Socket对象的_________________方法,而在无连接的Socket通信机制中, 服务器端阻塞用DatagramSocket对象的_____________________方法。

40、基于TCP的Java网络编程中,服务器端阻塞用Socket对象的方法。基于UDP的Java网络编程中, 服务器端阻塞用DatagramSocket对象的方法。

三、选择题

1、编译Java源程序文件将产生相应的字节码文件,这些字节码文件的扩展名为()

A) .java B) .class

C) .html D) .exe

2、Java 编译程序的文件名是()

A) java.exe B) javadoc.exe

C) javac.exe D) jar.exe

3、下述那一个保留字不是类及类成员的访问控制符()

A) public B) private

C) static D) protected

4、下列变量定义合法的是 ( )

A) boolean flag=False; B) int k = 1+‘1’;

C) char c = “b”; D)float radius = 1.2;

5、下面哪个是不合法的变量名称? ( )

A) 2D B) True C) _name D) T1

6、下面哪个定义变量的语句不合规范? ( )

A、 int retireAge=60;

B、 final int RETIREAGE=60;

C、 static int retireAge=60;

D、 private int RETIREAGE=60;

7、下列数组的定义不合法的是: ( )

A) char c[][]=new char[2][3];

B) char c[][]=new char[6][];

C) char [][]c=new char[][4];

D) int []a[] = new int[10][10];

8、下列数组的定义合法的是( )

A) int a = (1,2,3); B) int d[]= (1…3);

C) int []a[] = new int[3][]; D) char [][]c=new char[][4];

9、下述哪个说法是不正确的?( )

A) 局部变量在使用之前无需初始化,因为有该变量类型的默认值

B) 类成员变量由系统自动进行初始化,也无需初始化

C) 参数的作用域就是所在的方法

D) for语句中定义的变量,当for语句执行完时,该变量就消亡了

10、下列说法中,不正确的是( )

A) 一个java源程序编译通过后,得到的结果文件数也只有一个。

B) 一个java源程序经过编译后,得到的文件的扩展名一定是.class。

C) 一个java源程序只能有一个public class类定义,且源文件的名字与public class

的类名相同,扩展名必须是.java。

D) 一个java源程序可以包含多个class类。

11、下列说法中,不正确的是: ( )

A、一个java源程序经过编译后,得到的文件的扩展名一定是.class。

B、一个java源程序编译通过后,得到的结果文件数也只有一个。

C、一个java源程序编译通过后,得到的结果文件数可能有个。

D、一个java源程序编译通过后,不一定能用java解释器执行。

12、对于以下声明:

String s1="hello";

String s2="world";

String s3;

下面的操作合法的是( )

A)s3=s1+s2; B)s3=s1-s2; C)s3=s1&s2; D)s3=s1&&s2;

13、下面的代码合法的是: ( )

A) public abstract method();

B) public abstract void method();

C) public abstract void method(){ };

D) public void method() implements abstract;

14、执行语句:int n = 7; int b = 2 * n++;后,b和n的值分别是 ( )

A) b = 15, n = 8 B) b = 16, n = 8

C) b = 14, n = 8 D) b = 14, n = 7

15、下列哪个不能作为switch表达式的数据类型( )

A) int B) char C) short D) long

16、下面哪一项是Java实现动态多态性的具体手段( )

A) 重载; B) 覆盖(重写)C) 接口D) 抽象类

17、下列哪一个是创建数组的正确指令( )

A) int[] a = new int[10];

B) int[] a = new int(10);

C) int a[];

D) int[] a;

18、System.out.print(“1”+2)打印到屏幕的结果是( )

A) 3

B) 12

C) 1+2

D) 4

19、对于下列代码:

public class Example{

String str=new String("hello");

char ch[]={'d','b','c'};

public static void main(String args[]){

Example ex=new Example();

ex.change(ex.str,ex.ch);

System.out.println(ex.str+"and"+ex.ch[0]);

}

public void change(String str,char ch[]){

str="world";

ch[0]= 'a';

}

}

输出结果是: ( ) A) hello and d B) hello and a

C) world and d D) world and a

20、下列说法哪个是正确的? ( )

A)子类不能定义和父类同名同参数的方法

B)子类只能继承父类的方法,而不能重载

C)重载就是一个类中有多个同名但有不同形参和方法体的方法

D)子类只能覆盖父类的方法,而不能重载

21、如果一个程序段中有多个catch,则程序会按如下哪种情况执行? ( )

A)找到合适的例外类型后继续执行后面的catch

B)找到每个符合条件的catch都执行一次

C)找到合适的例外类型后就不再执行后面的catch

D)对每个catch都执行一次

22、以下哪一项不是File类的功能: ( )

A)创建文件

B)创建目录

C)删除文件

D)拷贝文件

23、下列说法哪个是正确的? ( )

A)BorderLayout是面板的缺省布局管理器

B)当鼠标指针位于一个GUI组件的边上时,发生一个MouseEvent事件

C)一个面板(JPanel) 不能被加入到另一个面板(JPanel)中

D)在BorderLayout中,添加到NORTH区的两个按钮将并排显示。

24、下列类不属于https://www.doczj.com/doc/727059073.html,ng.*包的是( )

A) Math B) System C) Date D) StringBuffer

25、System类属于下列哪个包?( )

A) java.io.* B) https://www.doczj.com/doc/727059073.html,ng.* C) java.util.* D) java.awt.*

26、下列哪个不属于File类中的方法( )

A) exists( ) B) delete( ) C) mkdir( ) D) copy( )

27、下列哪个不属于StringBuffer类中的方法?( )

A) compareTo ( ) B) indexOf( ) C) append( ) D) charAt( )

28、下列接口或类不属于java.util.*包的是( )

A) Collection B) StringTokenizer C) Map D) Character

29、假设int x=4,y=100,下列语句的循环体共执行几次?( )

while(y/x>3){

if(y%x>3) {

x=x+1;

}

else{

y=y/x;

}

}

A) 1次 B) 2次 C) 3次 D) 4次

30、Test.java程序代码如下:

1)public class Test{

2) public static void main(String[] args){

3) System.out.println(args[2]);

4) }

5)}

以上程序编译后用java Test 1 2 3 4运行的输出结果是什么? ( )

A) 1 B) 2 C) 3 D) 4

31、对于异常处理语句try…catch…finally,下面哪个说法是正确的?( )

A) 如果有多个catch语句,对所有的catch都执行一次

B) 如果有多个catch语句,对每个符合条件的catch都执行一次

C) 找到合适的异常类型后就不再执行后面的catch

D) 任何情况下,finally部分都会被执行一次

32、对于异常处理语句try…catch,下面那句话不正确? ( )

A、一个符合条件的catch的处理语句中没有break语句,则执行后会继续执行后续catch

B、不管有没有捕获异常,finally部分都会被执行

C、找到合适的异常类型后就不再执行后面的catch

D、应该先处理子异常类,再处理父异常类。

33、用文件字节输出流对文件进行写操作时,需要先创建文件输出流对象,文件输出数据流

的构造方法是 public FileOutputStream(String name,Boolean append) throws FileNotFoundException,当参数append的值为true时,表示 ( )

A、创建一个新文件

B、在原文件的尾部添加数据

C、覆盖原文件的内容

D、在原文件的指定位置添加数据

34、下列哪种操作不会抛出异常?( )

A) 浮点数除0 B) 浮点数乘0

C) 打开不存在的文件 D) 用负数索引访问数组

35、在java程序中,下列关于线程的说法错误的是( )

A)线程启动调用start方法

B)线程的主体是run方法

C)线程运行中调用sleep方法可以进入阻塞状态

D)在java中,优先级的数值为1的线程可以抢占优先级为5的线程的资源

36、下述哪一组方法,是一个类中方法重载的正确写法? ( )

A、int addValue( int a, int b ){return a+b;}

float addValue ( float a, float b) {return a+b;}

B、int addValue (int a, int b ){value=a+b; }

float addValue ( int a, int b) {return (float)(a+b);}

C、int addValue( int a, int b ){return a+1;}

int addValue ( int a, int b) {return a+b;}

D、int addValue( int a, int b ) {return a+b;}

int addValue ( int x, int y ) {return x+y;}

37、若编译和运行下列代码,出现的结果将是 ( ) class MyClass{

int i = 0;

public int myMethod(int x){

return i+x;

}

public static void main(String args[]) {

System.out.println(myMethod(10));

}

}

A、0

B、10

C、编译出错

D、以上答案都不对

38、以下是接口I的定义:

interface I{

void setValue(int val);

int getValue();

}

以下哪个代码能通过编译?( )

A) class A extends I{

int value;

void setValue(int val){value=val;}

int getValue(){return value;}

}

B) class B implements I{

int value;

void setValue(int val){value=val;}

}

C) interface C extends I{

void increment( );

}

D) interface D implements I{

void increment();

}

39、对于以下类:

class A{}

class B extends A{}

class C extends A{}

public class Test {

public static void main(String args[]) {

A x= new A();

B y=new B();

C z=new C();

//此处插入一条语句

}

}

下面哪个语句可以放到插入行?()

A) x=y; B) z=x; C) z=(C)y; D) y=(A)y;

40、若编译和运行下列代码,出现的结果将是 ( ) public class MyAdd extends Thread{

static int total = 10;

int n;

public MyAdd(int n)

{ this.n=n; }

public void run() {

try{

sleep(n);

total=total+n;

System.out.println(total);

}

catch(Exception e){

System.out.println(“EXCEPTION!”);

}

}

public static void main(String[] args) {

MyAdd t1 = new MyAdd(3000);

MyAdd t2 = new MyAdd(1000);

t1.start();

t2.start();

}

}

A、打印 1010, 4010

B、打印 3010, 4010

C、打印 1010, 3010

D、打印 3010, 1010

41、若编译和运行下列代码,出现的结果将是___________? ( ) public class MyThread implements Runnable {

String myString = "Yes ";

public void run() {

this.myString = "No ";

}

public static void main(String[] args) {

MyThread t = new MyThread();

new Thread(t).start();

for (int i=0; i < 10; i++)

System.out.print(t.myString);

}

}

A、打印 yes yes yes yes yes yes yes yes yes yes

B、打印 no no no no no no no no no no

C、打印 yes no yes no yes no yes no yes no

D、打印结果无法确定

42、下列说法哪个是不正确的? ( )

A、一个组件可以注册多个事件监听器

B、一个监听器只能监听一个组件

C、一个组件可以引发多种事件

D、一个监听器可以监听处理多种事件

43、Java不支持何种继承方式?( )

A) 多重继承

B) 单重继承

C) 多接口实现

D) 单接口实现

44、下面说法错误的是( )

A) 单击CheckBox (复选框)产生ItemEvent事件,并由ItemListener处理。

B) 处理Button和TextField事件监听器接口都是ActionListener。

C) 一个面板(Panel) 可以加入到另一个面板(Panel)中。

D) 在BorderLayout中,添加到NORTH区的两个按钮将并排显示。

45、下列说法错误的是: ( )

A)TCP是面向连接的协议,而UDP是无连接的协议。

B)数据报传输是可靠的,可以保证数据包按顺序到达。

C)Socket是一种软件形式的抽象,用于表达两台机器间一个连接的“终端”。

D)端口(port)并不是机器上一个物理上存在的场所,而是一种软件抽象。

46、下列语句错误的是: ( )

A)ServerSocket svrsoc= new ServerSocket(8000);

B)URL urlBase=new URL(“http://www. https://www.doczj.com/doc/727059073.html,/”) ;

C)File inFile = new File(“C:/ test.txt”);

D)BufferedReader br = new BufferedReader(“C:/ test.txt”);

47、下面说法错误的是: ( )

A) 单击JCheckBox (复选框)产生ItemEvent事件,并由ItemListener处理。

B) 处理JButton和JTextField事件监听器接口都是ActionListener。

C) 处理鼠标事件的事件监听器接口只有MouseListener。

D) 在JTextField和JPasswordField中输入数据后按Enter键会激发一个事件。

48、下列关于接口和抽象类的说法不正确的是?( )

A) 接口也有构造方法

B) 实现接口时,需对接口中的所有方法都要实现

C) 抽象类也有构造方法

D) 抽象类可以派生出子类

49、下列说法哪个是不正确的?( )

A)一个面板(Jpanel) 能被加入到另一个面板(Jpanel)中

B)一个监听器只能监听一个组件

C)Frame,Panel,Applet都属于容器组件。

D)Button和TextField都可用ActionListener接口实现事件处理

50、对于下列代码:

String str1="java";

String str2="java";

String str3=new String("java");

StringBuffer str4=new StringBuffer("java");

以下表达式的值为true的是( )

A) str1= =str2;

B) str1= =str3;

C) str2= =str3;

D) str3= =str4;

51、对于下列代码:

public class SupperClass {

public int sum( int a, int b) {

return a+b;

}

}

class SubClass extends SupperClass { }

下述哪个方法可以加入类SubClass? ( )

A) int sum ( int a, int b ){ return a+b;}

B) public void sum (int a, int b ){ return ;}

C) public float sum ( int a, int b){ return a+b;}

D) public int sum ( int a, int b ) { return a+b;}

52、为AB类的一个无形式参数无返回值的方法method书写方法头,使得用类名AB作为前缀就可以调用它,该方法头的形式为( )

A) static void method( ) B) public void method( )

C) final void method( ) D) abstract void method( )

53、关于JDBC访问数据库的说法错误的是: ( )

A) 建立数据库连接时,必须加载驱动程序,可采用Class.forName()实现

B) 用于建立与某个数据源的连接可采用DriverManager类的getConnection方法

C) 建立数据库连接时,必须要进行异常处理

D) JDBC中查询语句的执行方法必须采用Statement类实现

54、将组件垂直摆放在一列或水平摆放在一行中的布局管理器是 ( )

A) BorderLayout B) FlowLayout C) CardLayout D)BoxLayout

55、下列有关Java Swing组件说法正确的是: ( )

A)创建一个JFrame时,必须创建至少一个菜单,并将它加入JFrame中。

B)JTextArea的文本总是只读的。

C)加载swing组件包的语句是“import java.swing.*; ”。

D)在JFrame中添加组件时不能直接用add方法。

56、下列说法错误的是: ( )

A)程序员必须创建System.in、System.out和System.err对象。

B)在随机存取文件中查找指定记录时不必检查每一条记录。

C)seek方法必须以文件头为基准进行查找。

D)计算机做的所有工作最终是对0和1的处理。

57、下列说法错误的是: ( )

A)TCP是面向连接的协议,而UDP是无连接的协议。

B)数据报传输是可靠的,可以保证包按顺序到达。

C)URL代表的统一资源定位符一共包括五个部分

D)Socket和ServerSocket分别表示连接的Client端和Server端

58、下列语句错误的是: ( )

A)ServerSocket svrsoc= ServerSocket(8000);

B)URL urlBase=new URL(“http://www. https://www.doczj.com/doc/727059073.html,/”);

C)File inFile = new File(“C:/ test.txt”);

D)BufferedReader br = new BufferedReader(“C:/ test.txt”);

59、下面说法错误的是: ( )

A) 单击JCheckBox (复选框)产生ItemEvent事件,并由ItemListener处理。

B) 处理JButton和JTextField事件监听器接口都是ActionListener。

C) 处理鼠标事件的事件监听器接口只有MouseListener。

D) 在JTextField和JPasswordField中输入数据后按Enter键会激发一个事件。

60、对于下列代码:

public class Parent {

public int addValue( int a, int b) {

int s;

s = a+b;

return s;

}

}

class Child extends Parent {

}

下述哪些方法可以加入类Child? ( )

A) int addValue( int a, int b ){// do something...}

B) public void addValue (int a, int b ){// do something...}

C) public int addValue( int a ){// do something...}

D) public int addValue( int a, int b ) {//do something...}

61、对于下列代码:

1) class Person {

2) public void printValue(int i, int j) {//... }

3) public void printValue(int i){//... }

4) }

5) public class Teacher extends Person {

6) public void printValue() {//... }

7) public void printValue(int i) {//...}

8) public static void main(String args[]){

9) Person t = new Teacher();

10) t.printValue(10);

11) }

第10行语句将调用哪行语句? ( )

A) line 2 B) line 3 C) line 6 D) line 7

62、编译和运行下面的应用程序,并在命令行界面输入12345,则回车后屏幕输出的结果是()。

public class A {

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

BufferedReader buf=new BufferedReader(

new InputStreamReader(System.in));

String str=buf.readLine();

int x=Integer.parseInt(str);

System.out.println(x%1000);

}

}

A) 345 B)5 C) 123 D) 12345

63、以下程序段输出结果的是()。

public class A implements B {

public static void main(String args[]) {

int i;

A c1 = new A();

i= c1.k;

System.out.println("i="+i);

}

}

interface B {

int k = 10;

}

A) i=0 B) i=10 C) 程序有编译错误 D) i=true

64、下面的程序段执行后输出的结果是()

StringBuffer buf=new StringBuffer("Beijing2008");

buf.replace(0,7,”Hangzhou”)

System.out.println(buf.toString());

A) Hangzhou2008 B) Hangzhoug2008 C)Hangzhou008 D) Beijing2008

65、应用程序的main方法中有以下语句,则输出的结果是 ( )。

String s1="Abc",s2="abc";

int b1=https://www.doczj.com/doc/727059073.html,pareTo (s2);

System.out.println(b1);

A) false B)-32 C) 32 D) 0

66、下面的程序段的功能是( )。

File file1=new File("e:\\xxx\\yyy");

file1.mkdir();

A)在当前目录下生成子目录:\xxx\yyy B)生成目录: e:\xxx\yyy

C)在当前目录下生成文件xxx.yyy D)以上说法都不对

67、网络资源定位器对应于Java的类https://www.doczj.com/doc/727059073.html,.URL,通过其成员方法()获得端口。

A) getHost()

B) getProtocol()

C) getPort()

D) getRef()

68、下面关于Java中线程的说法不正确的是( )?

A)调用join()方法可能抛出异常InterruptedException。

B)sleep()方法是Thread类的静态方法。

C)调用Thread类的sleep()方法可终止一个线程对象。

D)线程启动后执行的代码放在其run方法中。

69、给Java线程设定优先级的成员方法是()。

A) getPriority()

B) setPriority()

C) getTread()

D) setTread()

70、编写小应用程序(Applet)需要()源程序文件和()文本文件。

A) HTML、Java

B) Java、HTML

C) Applet、txt

D) Java、txt

71、JTextArea实现了可以处理()文本信息的文本框,但其不能自动进行()处理。

a) 单行、滚屏

b) 多行、编辑

c) 多行、滚屏

d) 单行、编辑

72、常规菜单是由()、()和菜单项组成。

a)JMenuItem、JCheckBoxMenuItem

b)JButton、JRadioButton

c)JPopupMenu、JMenuItem

d)JMenuBar、JMenu

73、GUI组件的左上角坐标是(),一个坐标系由X坐标和()坐标构成。

a) (1,1)、Y

b) (0,1)、X

c) (0,0)、Y

d) (1,0)、X

74、Color类定义了颜色()和颜色(),用于控制Java程序中的颜色。

a) 常量、内容

b) 常量、方法

c) 方法、对象

d)方法、数据

75、Swing组件是()组件。AWT组件由于捆绑在本地平台上,所以称为()组件。

A)重量级、轻量级

B)高级、低级

C)低级、高级

D)轻量级、重量级

76、JFrame和JApplet不是()的子类,因此它们没有()方法。

A)JComponent、paintComponent

B)JComponent、paint

C)JApplet、paintComponent

D)JApplet、paint

77、程序员将可能发生异常的代码放在()块中,后面紧跟着一个或多个()块。

a)catch、try

b)try、catch

c)try、exception

d)exception、try

78、RandomAccessFile类的()方法可用于从指定流读取整数。

a) readLine

b) readByte

c) readInteger

d) readInt

79、ServerSocket构造函数的第()个参数指定了可以等待连接到服务器的最多客户机数目。

a) 1 b) 3 c) 4 d) 2

80、FlowLayout布局管理器按照组件加入容器的次序从()到()排列组件。

a) 上、下 b) 右、左

c) 左、右 d) 前、后

四、程序阅读题

1、阅读下面的程序:

①public class Test{

② public static void main(String[] a){

③ int i = Integer.parseInt(a[0]);

④ switch (i) {

⑤ case 1:System.out.println("Frist season");break;

⑥ case 2:System.out.println("Second season");

⑦ case 3:System.out.println("3th season");break;

⑧ case 4:System.out.println("Last season");

⑨ }

⑩ }

?}

上面的程序编译是否成功?如果编译出错,指出哪行出错,并说明理由;如果编译正确,用java Test 2 运行得到的输出结果是什么?

2、阅读下面的程序:

1)public class Test{

2) public static void main(String[ ] args) {

3) int x,y=2,i=0,j=0;

4) if(args.length<2) System.exit(-1);

5) x = Integer.parseInt(args[1]);

6) switch(x){

7) case 2:switch(y){

8) case 1:i++;break;

9) case 2:j++;break;

10) default:i++;j++;

11) }

12) case 3:i++;j++;break;

13) default:i++;j++;

14) }

15) System.out.println("i="+i);

16) System.out.println("j="+j);

17) }

18)}

上面的程序编译是否成功?如果编译出错,指出哪行出错,并说明理由;如果编译正确,用java Test 1 2 3 运行得到的运行结果是什么?

3、写出下列程序代码的运行结果:

public class Test {

public static void main(String args[]) {

int x = 10, y = 0;

for(int i=2;i

if(x%i= =0) y++;

}

switch(y) {

case 0: System.out.print(0);

case 1: System.out.print(1);break;

case 2: System.out.print(2);

case 3: System.out.print(3);break;

default: System.out.print(4);

}

}

}

4、写出下列程序代码的运行结果:

class Person{

public Person(){

System.out.println("hi!");

}

public Person(String s){

this();

System.out.println("I am "+s);

}

}

public class Who extends Person{

public Who(){

this("I am Tony");

}

public Who(String s){

super(s);

System.out.println("How do you do?");

}

public static void main(String args[]){

Who w = new Who("Tom");

}

}

5、阅读下面的程序,程序保存为Test.java:

1)public class Test

2){

3) short mValue;

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

5) {

6) int a = 32;

7) int b = 56;

8) Test os = new Test(a+b);

9) os.Show( );

10) }

11) protected Test(short aValue) { mValue = aValue; }

12) public void Show( ) { System.out.println(mValue); }

13)}

上面的程序编译是否成功?如果编译出错,指出哪行出错,并说明理由;如果编译正确,运行结果是什么?

6、阅读下面的程序:

class test

{

public static void main(String[] args)

{

int i = 1;

int All = 0;

for (;i<=10;i++)

{

if (i%6==0) break;

if(i%2==0) {i=i+2;continue;}

All = All + i;

}

System.out.println(All);

}

}

上面的程序编译是否成功?如果编译出错,指出哪行出错,并说明理由;如果编译正确,运行结果是什么?

7、阅读下面的程序:

1)public class test

2){

3) public static void main(String argv[])

4) {

5) Bird b = new Bird();

6) b.Fly(3);

7) }

8)}

9)class Bird{

10) static int Type = 2;

11) private void Fly(int an_Type){

12) Type = an_Type;

13) System.out.println("Flying..."+Type);

14) }

15)}

上面的程序编译是否成功?如果编译出错,指出哪行出错,并说明理由;如果编译正确,运行结果是什么?

8、写出下列程序代码的运行结果:

public class Example{

String str=new String("Hello");

char ch[]={'J','a','v', 'a'};

public static void main(String args[]){

Example ex=new Example();

ex.change(ex.str,ex.ch);

System.out.println(ex.str);

System.out.println(new String(ex.ch));

}

public void change(String str,char ch[]){

str="World";

ch[0]= 'Y';

}

}

9、阅读下面的程序TestMonth.java:

public class TestMonth{

public static void main(String []args){

try{

int month=Integer.parseInt(args[0]);

if(month<0||month>12){

throw new ArithmeticException("没有"+month+"月份!");

}

System.out.println("您输入的月份为"+month+"月份");

}catch(ArrayIndexOutOfBoundsException e){

System.out.println("请输入月份!");

}catch(ArithmeticException e){

System.out.println("捕获ArithmeticException异常");

System.out.println(e.toString());

}

}

}

已知ArrayIndexOutOfBoundsException和ArithmeticException都是https://www.doczj.com/doc/727059073.html,ng.*下的异常类,编译TestMonth.java后,用java TestMonth 13的运行结果是什么?

10、写出下列程序代码的运行结果:

class userException extends Exception{

userException(){}

userException(String str){

super(str);

}

}

class MyException {

final static int ARRAY_MAX_LENGTH=10;

void judge(int []a){

try{

if(a.length

System.out.println("数组的长度没有超过规定的最大值!");

}

else{

throw new userException("数组可能越界!");

}

}catch(userException e){

System.out.println(e.toString());

}

finally{

System.out.println("退出返回!");

}

}

public static void main(String agrs[]){

try{

int a[]=new int[10];

MyException myE=new MyException();

myE.judge(a);

}catch(Exception e){

System.out.println(e.toString());

}

}

}

11、阅读下面代码片段,写出输出结果。(如果代码有错,请写出错误原因)public class ExceptionExample {

public static void main(String[] args) {

int a = 8;

int b = 2;

int c = 0;

try{

c = a/(b-2);

System.out.println("计算结果:"+ c);

}catch(ArithmeticException arithmeticException) {

System.out.println("捕获了一个零除异常");

}catch(Exception exception) {

System.out.println("捕获了一个异常");

}

}

}

12、阅读下面代码片段,找出其中的错误并改正其中的错误。

import java.awt.*;

import java.awt.event.*;

import javax.swing.*;

public class ButtonTest extends JFrame {

private JButton plainButton, fancyButton;

public ButtonTest() {

super( "Testing Buttons" );

Container container = getContentPane();

container.setLayout( new FlowLayout() );

Java程序设计-实验报告1-模板 (1)

实验报告 课程名称Java程序设计 实验项目实验一类和对象 系别_________计算机_________ 专业/班级_______计算机类/1402______ 姓名_____李馨雪________ 实验日期______2015.10.10______ 成绩_______________________ 指导教师

一、实验题目:实验一类和对象 二、实验内容: (1)用类描述计算机中CPU的速度和硬盘的容量。要求Java应用程序有4个类,名字分别是PC、CPU、HardDisk和Test,其中Test是主类。 1)PC类与CPU类和HardDisk类关联的UML图如图所示。 其中,CPU类要求getSpeed()返回speed的值,setSpeed(int m)方法 将参数m的值赋值给speed。 HardDisk类要求getAmount()返回amount的值,setAmount(int m)方 法将参数m的值赋值给amount。 PC类要求setCPU(CPU c)将参数c的值赋值给cpu,要求setHardDisk (HardDisk h)方法将参数h的值赋值给HD,要求show()方法能显示 cpu的速度和硬盘的容量。 2)主类Test的要求 main()方法中创建一个CPU对象cpu,其speed设置为2200; main()方法中创建一个HardDisk对象disk,其amount设置为200; main()方法中创建一个PC对象pc, pc调用setCPU方法,实参是cpu;调用setHardDisk方法,实参是 disk;调用show方法。 (2)设计一个动物声音“模拟器”,希望模拟器可以模拟许多动物的叫声,要求如下: 1)编写接口Animal,有2个抽象方法cry()和getAnimaName(); 2)编写模拟器类Simulator,该类有一个playSound(Animal animal)方法,其形参是Animal类型,可以调用实现Animal接口的类所重写的cry()方法播放具体动物的声音,调用重写方法显示动物种类的名称; 3)编写实现Animal接口的Dog类和Cat类。具体的UML图如下所示:4)编写主类Application,其main方法中至少包含如下代码: Simulator si=new Simulator();

java程序设计基础(第3版)实验指导答案 第三章

实验10 import java.util.*; public class shiyan10 { public static void main(String[] args) { int a=0,b=0,c=0,max=0; Scanner reader=new Scanner(System.in); System.out.println("从键盘输入第一个整数"); a=reader.nextInt(); System.out.println("从键盘输入第二个整数"); b=reader.nextInt(); System.out.println("从键盘输入第三个整数"); c=reader.nextInt(); if(a>b) max=a; else max=b; if(c>max) max=c; System.out.println("最大的数是"+max); } }//在程序中输入三个整数,比较它们的大小,输出最大的数 实验11 public class shiyan11 { public static void main(String[] args) { int s=0; for(int i=0;i<100;i++) { s=s+i; i++; } System.out.println("1+3+5+···+99="+s); } }//用for循环语句求1+3+5+···+99的值 实验12 import java.util.*; public class shiyan12 {

public static void main(String[] args) { int a=0,i=1,s=0; Scanner reader=new Scanner(System.in); while(a<50||a>100) { System.out.println("从键盘输入一个50~100的整数"); a=reader.nextInt(); } System.out.println("你输入的数是"+a); while(i<=a) { s=s+i; i++; } System.out.println("1+2+3+···+"+a+"="+s); } } //编写从键盘输入一个范围在50~100的整数,如果不正确,则继续输入;然后求1到输入整数的累加 实验13 public class shiyan13 { public static void main(String[]args) { int i=100,s=0; do { s=s+i; i--; } while(i>0); System.out.println("100+99+98+···+2+1="+s); } } //用do-while语句求100+99+···+2+1的值 实验14 import java.util.*; public class shiyan14 { public static void main(String[] args)

JAVA程序设计习题库及答案

第一章JAVA语言概论 一、选择题 1。下列不属于java语言鲁棒性特点的是:A.java能检查程序在变异和运行时的错误 B。java 能运行虚拟机实现跨平台 C。java 自己操纵内存减少了内存出错的可能性D。java 还实现了真数组,避免了覆盖数据的可能2.java语言的执行模式是: A。全编译型 B.全解释型 C.半编译和半解释型 D.同脚本语言的解释模式 3.下列关于虚拟机说法错误的是: A。虚拟机可以用软件实现 B.虚拟机部可以用硬件实现 C.字节码是虚拟机的机器码 D.虚拟机把代码程序与各操作系统和硬件分开 4。java语言是1995年由()公司发布的 A.Sun B。Microsoft C.Borland D.Fox Software 5.下列不是虚拟机执行过程特点的是 A。双线程

B.多线程 C.动态链接 D.异常处理 6.java以JVM为基础,最下层是移植接口,由适配器和()组成A.网卡 B。Java os C。Java基本类 D。Java 应用程序和applet小程序 7。java程序的执行过程中用到一套JDK工具,其中javac.exe指A.java语言编译器 B.java字节码解释器 C.java文档生成器 D.java类分解器 8.java的API结构中,不属于类库主要包括的核心包的是 A.java包 B。javax C.javadoc包 D.org扩展包 9.每个java的编译单元可包含多个类或界面,但是每个编译单元最多只 能有()类或者界面是公共的 A.一个 B。两个 C。四个 D。任意多个

10.在当前的java实现中,每个编译单元就是一个以()为后缀的文件 A。java B.class C。doc D.exe 二、填空题 1. 1991年,SUN公司的Jame Gosling和Bill Joe等人,为电视、控制烤面包机等家用电器的交互操作开发了一个____软件,它是java的前身. 2. java是一个网络编程语言,简单易学,利用了____的技术基础,但又独立于硬件结构,具有可移植性、健壮性、安全性、高性能。 3. java可以跨平台的原因是____ 4. JVM的执行过程有三个特点:多线程,_____,异常处理; 5.JAVA程序的安全性体现在多个层次上,在_____,有语法检查;在解释层上,有字节码校验器、测试代码段格式和规则检查,访问权限和类型转换和法性检查,操作数堆栈的上溢或下溢,代码参数类型合法性等;在平台层上,通过配置策略,可设定访问资源域,而无需区分本地或远程。 6。 JAVA的产品主流操作系统平台是Solaris、_____和Macintosh. 7. JAVA系统运行时,通过______机制周期性的释放无用对象所使用的内存,完成对象的清除。 8。在JAVA语言中,将后缀名为______的源代码文件编译后形成后缀名为.c lass的字节码文件。 9。 JAVA语言的执行模式是半编译和______. 10. JAVA类库具有_____的特点,保证了软件的可移植性。 11。在编写执行JAVA程序的过程中需要用到一些工具,SUN公司为我们提供了一套JDK工具,它主要包括:javac.exe、java。exe、_____、ja vap.exe、jkb。exe 12.JAVA程序包括源代码(.java文件)、______、由归档工具jar生成的。jar文件、对象状态序列化.ser文件.

Java程序设计在线作业-单选题2

Java程序设计在线作业2 一、单选题(共 10 道试题,共 30 分。) 1. 下列程序的输出结果是import java.io.*; public class abc { public static void main(String args[]) { String s1="Hello!"; String s2=new String("World!"); System.out.println(s1.concat(s2)); } } A. false B. Hello! C. Hello!Wofld! D. 12 2. 在浏览器中执行applet 程序,以下选项中的哪个方法将被最先执行()。 A. init() B. start() C. destroy() D. stop() 3. Java语言的类型是() A. 面向对象语言 B. 面向过程语言 C. 汇编程序 D. 形式语言 4. 下列哪一项不属于Awt布局管理器?() A. GridLayout B. CardLayout C. BorderLayout D. BoxLayout

5. 下面代码的执行结果是什么?( )<% x=3; %><% int x=5; %><%! int x=7; %> x = <%=x%>, <%=this.x%> A. x = 3, 5 B. x = 3, 7 C. x = 5, 3 D. x = 5, 7 6. Java Applet 源程序文件的扩展名为()。 A. .java B. .class C. .html D. .exe 7. 在Java Applet程序用户自定义的Applet子类中,一般需要重载父类的()方法来完成一些画 图操作。() A. start() B. stop() C. init() D. paint() 8. 阅读下面的代码,第10行的语句将调用哪个方法?() 1. class Person { 2. public void printValue(int i, int j) {/*…*/ } 3. public void printV alue(int i){/*...*/ } 4. } 5. public class Teacher extends Person { 6. public void printValue() {/*...*/ } 7. public void printValue(int i) {/*...*/} 8. public static void main(String args[]){ 9. Person t = new Teacher(); 10. t.printValue(10); 11. } 12. } A. 行2 B. 行3 C. 行6

java 程序设计 实验五

C H A N G Z H O U U N I V E R S I T Y 实验报告 课程名称:JAVA程序设计 学生姓名:文浩班级计算机141 学号14416122 学院(系):信息数理学院指导教师:吕猛 实验时间:2016 年12 月 6 日实验名称:实验五基于Swing的图形用户界面开发实验

实验五基于Swing的图形用户界面开发实验 一实验容 (1)完成开发界面如图所示,实现如下功能 ①选中“查看已有名片”按钮,程序处于查看状态,可以在“名片列表”中选择要查看的名片,程序在“名片详实信息”栏显示该名片的详实信息,此状态中名片信息处于不可编辑状态 ②选中“添加新名片”按钮,程序处于添加状态,所有关于明天信息的项目都处于可编辑状态,设置完成相关信息后,单击“添加”按钮,在“名片列表”中出现新添加名片的名称。单击“清空”按钮可以清空还没提交的容 ③在查看状态和添加状态下,都可以通过点击“爱好”、“学历”单选按钮以显示名片的不同附加信息 (备注:名片附加信息部分,当点击“爱好”按钮时显示的如图1所示,当点击“学历”按钮时显示如图2所示。) 图1

图2 (2)记事本设计与实现 如图所示(1)编程实现如图所示的界面(2)实现文件、编辑、格式、查看,帮助菜单(3)实现记事本的基本功能

二实验目的 (1)理解组件的分类 (2)掌握容器、布局管理器、普通组件的使用 (3)理解事件处理机制的工作原理 (4)掌握事件的添加和功能代码的编写方法 三实验过程 (1)问题分析 答:名片的设计除了使用最基本的组件,如JButton,Jlist,JCheckBox,JTextField, JRadioButton, CardLayout以外,最主要的是逻辑事件的编写,在成功布局完见面后,就需要编写事件处理。首先,由于是名片信息,保存着一个人的基本信息,所以可以用一个类来表示,如PersonInf类,其次,由于是多个人的信息,可以通过ArrayList 来存放类;其次就是当点击按钮的时候,正确添加和显示信息,此处用到cardLayout 布局,可以减少界面的复杂度,在使用JList的时候,除了加滚动条意外,还需要listModel 获取数据等。 (2)代码编写 答: (1) public class PersonInf { public String yourname; public String address1;

《JAVA语言程序设计》期末考试试题及答案(应考必备题库)

《JA V A语言程序设计》期末考试试题及答案2(应考必备题库) 一.判断题 1.Java的源代码中定义几个类,编译结果就生成几个以.class为后缀的字节码文件。(√)2.Java程序里,创建新的类对象用关键字new,回收无用的类对象使用关键字free。(×)1.Java的源代码中定义几个类,编译结果就生成几个以.class为后缀的字节码文件。(√)2.Java程序里,创建新的类对象用关键字new,回收无用的类对象使用关键字free。(×3.Java有垃圾回收机制,内存回收程序可在指定的时间释放内存对象。(×)4.构造函数用于创建类的实例对象,构造函数名应与类名相同,返回类型为void。(×)5.在异常处理中,若try中的代码可能产生多种异常则可以对应多个catch语句,若catch 中的参数类型有父类子类关系,此时应该将父类放在后面,子类放在前面。(√)6.拥有abstract方法的类是抽象类,但抽象类中可以没有abstract方法。(√)7.Java的屏幕坐标是以像素为单位,容器的左下角被确定为坐标的起点。(×)8.静态初始化器是在其所属的类加载内存时由系统自动调用执行。(√)9.在Java中对象可以赋值,只要使用赋值号(等号)即可,相当于生成了一个各属性与赋值对象相同的新对象。(×) 二.单项选择题 1.Java application中的主类需包含main方法,以下哪项是main方法的正确形参?() A、String args B、String ar[] C、Char arg D、StringBuffer args[] 2.以下关于继承的叙述正确的是()。 A、在Java中类只允许单一继承 B、在Java中一个类只能实现一个接口 C、在Java中一个类不能同时继承一个类和实现一个接口 D、在Java中接口只允许单一继承 3.paint()方法使用哪种类型的参数? () A、Graphics B、Graphics2D C、String D、Color 4.以下哪个不是Java的原始数据类型() A、int B、Boolean C、float D、char

Java程序设计上机实验

班级号一学号_姓名一题号java(多文件应压缩为rar): 实验1:熟悉上机环境,编写并运行简单的java程序(3学时)实验目的 (1)熟悉Java程序开发环境J2SDK+JCreator的安装及使用 ⑵熟悉Java Application 和Applet程序的结构及开发步骤 ⑶熟练掌握if语句的使用 ⑷掌握Math.sqrt()等常用数学函数的用法 ⑸熟悉System.out.print()的用法 实验内容及要求 按Java Application 和Applet两种方式分别编写程序,求 一元二次方程ax2+bx+c=0的根(系数在程序中给定),并输出。 思考并验证 (1)分别给定以下几组系数,给出输出结果 a=1,b=5,c=3 a=4, b=4, c=1 a=2, b=3, c=2 : + i ________ +_ _______ i ⑵如果程序的public类的类名和源文件的文件名不一样会有什

么问题? (3) 将类的public 修饰去掉是否可行?接着再将类名换为其它是 否可行?这说明了什么? (4) 将程序中main 前面的public 去掉,重新编译执行你的程序,你看到 了什么信息? (5) 将程序中main 前面的static 去掉,重新编译执行你的程序,你看到 了什么信息?为什么? (6) 本次上机中,你还遇到了什么问题,是如何解决的?

班级号一学号_姓名一题号java (多文件应压缩为rar ): 实验 2:控制流程 1(3 学时 ) 实验目的 (1) 进一步熟悉使用 if 语句 (2) 掌握循环语句实现循环的方法 实验内容及要求 输出时,只使用下面的语句: System.out.print( “ ”); // 不换行 System.out.print( “* ”); // 并且不换行 System.out.print( “+”); // 并且不换行 System.out.println( “*”;) // 并换行 编写程序输出(注:在图形的中心处有一个加号 ' +'): 思考并验证 下面程序片段给出了从键盘输入一个整数的方法: import java.io.*; 输出一个空格, 并且 输出一个字符' * ', 输出一个字符' +', 输出一个

java程序设计基础实验27

实验27 类的构造方法1 实验要求:编写一个Java程序,在程序中定义Student类,Student类有三个构造方法,分别对不同的属性进行初始化 编写程序如下 class Student //定义类Student. { String name; int age; public Student() //定义无参的构造方法。 { System.out.println("Student()构造方法被调用"); } public Student(String c) //定义有一个参数的构造方法。 { name=c; System.out.println("Student(String newName)构造方法被调用"); } public Student(String a,int b) //定义有两个参数的构造方法。 { name=a; age=b; System.out.println("Student(String newName,intnewAge)构造方法被调用"); } public static void main(String[] args) { Student volu1=new Student(); //创建Student类的一个对象,不传入参数 Student volu2=new Student("张三"); //创建Student类的一个对象,传入一个参数:”张三” Student volu3=new Student("张三",15); //创建Student类的一个对象,传入两个参数:”张三”、15 } } 运行结果如下

程序分析如下: 程序中的Student类有三个构造方法,分别对不同的属性进行初始化。

Java程序设计习题附答案(一)

Java程序设计题库 第一部分绪论 1、下列关于Java语言的特点,描述错误的是(C) A.Java是跨平台的编程语言B.Java支持分布式计算 C.Java是面向过程的编程语言D.Java支持多线程 2、Java语言具有许多优点和特点,下列选项中,哪个反映了Java程序并行机制的特点?(B) A、安全性 B、多线性 C、跨平台 D、可移植 3、Java JDK中调试器的命令是(C)。 A、javac B、java C、jdb D、avah 4、运行jar文件中class文件需要在java命令后面加的参数为(A)。 A、-cp B-g C-d D-verbose 5、下面哪项在java中是不合法的标识符?(C) A、$user B、point C、You&me D、_endline 6、下面关于Java语言说法正确的是(ABCD)。 A、Java语言是面向对象的、解释执行的网络编程语言。 B、Java语言具有可移植性,是与平台无关的编程语言。 C、Java语言可对内存垃圾自动收集。 D、Java语言编写的程序虽然是“一次编译,到处运行”,但必须要有Java的运行环境。 7、在Java程序设计中,程序员创建()文件,然后编译器把它们转化为()文件。( B) A、源, HTML B、源, 字节代码 C、字节代码, 源 D、HTML, 字节代码 8、Java的JVM是指(B)。 A、由Java操作的家用设备(通常是一个漂亮的小烤箱) B、Java字节代码的解释程序 C、Java源代码的编译器 D、运行Java 所需的硬件设备 9、在Java中,关于CLASSPA TH环境变量的说法不正确的是(A)。 A、CLASSPATH一旦设置之后不可修改,但可以将目录添加到该环境变量中。 B、编译器用它来搜索各自的类文件。 C、CLASSPATH是一个目录列表。 D、解释器用它来搜索各自的类文件。 10、一个可以独立运行的Java应用程序(D)。

java程序设计试题库

《Java语言程序设计基础教程》 练习思考题参考答案 第1章Java程序设计概述 1、1单项选择题 1.编译Java Application源文件将产生相应得字节码文件,扩展名就是什么 A、、java ???? B、、class ?C、、html??? D、、exe 解答:B 2.Java语言具有许多优点与特点,下列选项中,哪个反映了Java中“一次编 译,随处运行”得特点. ?A、简单性????B、平台无关性 C、面向对象性???? D、安全性 解答:B 3.Java语言具有许多优点与特点,下列选项中,哪个反映了Java中并行机制得 特点。 ?A、多线程???B、平台无关性 C、面向对象性??? D、安全性 解答:A 4。在Java语言中,下列哪些语句关于内存回收得说明就是正确得? ?A.程序员必须创建一个线程来释放内存; B.内存回收程序负责释放无用内存; C.内存回收程序允许程序员直接释放内存; D.内存回收程序可以在指定得时间释放内存对象 解答:B 5.一个Java源文件中最多只能有多少个public类。 ?A、1个?B、2个

C、3个? D、任意多个 解答:A 6。下面哪一个不就是Java语言所具有得特点。 A、没有全局变量,在类得定义外部没有任何得变量定义; ?B、不直接支持指针操作,而使用更安全得引用类型; C、支持子类对父类得多继承; D、具有自动垃圾收集功能; 解答:C 7。下面哪一个不就是Java开发工具包JDK得组成部分. ?A、Java得编译器; B、Java得解释器;? ?C、Java得API继承类库; ?D、Eclipse开发工具; 解答:C 8。JDK提供得编译器就是()。 ?A、java、exe???B、javac、exe C、javap、exe??? D、javaw、exe 解答:B 9。作为Java应用程序入口得main方法,其声明格式可以就是() A、public voidmain(String[]args) B、public static void main(String []args) C、public static void Main(String* args) D、public int main(String []args) 解答:B 10.下列说法正确得就是( A ) A、JAVA程序得main方法必须写在类里面 B、JAVA程序中可以有多个main方法 C、JAVA程序中类名必须与文件名一样 D、JAVA程序得main方法中如果只有一条语句,可以不用{}(大括号)括起来 11。下列哪些语句关于Java内存回收得说明就是正确得? ( B) A、程序员必须创建一个线程来释放内存

《java程序设计》作业答案

《JA V A程序设计》作业答案 一、选择题 1、编译HelloWorld.java的正确命令是: C) javac HelloWorld.java 2、正确运行HelloWorld.java的正确命令是: A)java HelloWorld 3、下面程序代码,使用多行注释正确的是: C)/* int k=9; int j=8; k = k + j; */ 4、long型的取值范围是: D)-263~263-1 5、下面不属于Java保留字的是: C)malloc 6、下面属于非法的Java标识符的是: D) abc-d 7、对与System.out.println()语句解释合理的是: C)执行后输出一个空行 8、阅读下面的代码,回答问题, for( m = 0 ; m > -2 ; m -- ){….} For循环执行多少次: C)2 9、阅读下面的代码,回答问题, for( m = 0; m < 5; m++ ) { System.out.print( m + "," ); if( m == 3 ) break; } 执行结果是: C)0,1,2,3, 10、阅读下面的代码,回答问题, public class Ex { int x = 1; void m() { int x = 3; System.out.print( "x= " + x); } public static void main( String[] args ) { Ex ex = new Ex();

ex.m(); } } 执行结果是: B)x=3 11、下面语句在编译时不会出现错误信息的是: a) float f = 1.3; b) char c = "a"; c) byte b = 257; d) boolean b = null; e) int i = 10; 12、编译和运行下面的代码,会有什么结果产生: public class MyClass { public static void main(String arguments[]) { amethod(arguments); } public void amethod(String[] arguments) { System.out.println(arguments); System.out.println(arguments[1]); } } a) 错误,静态方法不能直接引用非静态方法b) 错误,主方法有错误 c) 错误,数据定义有错误d) 方法amethod必须被声明为String型 13、编译期间会出错的是: a) import java.awt.*; package Mypackage; class Myclass {} b) package MyPackage; import java.awt.*; class MyClass{} c) /*This is a comment */ package MyPackage; import java.awt.*; class MyClass{} 14、byte型的变量的表示范围为: a) -128 to 127 b) (-2 power 8 )-1 to 2 power 8 c) -255 to 256 d) 依赖Java虚拟机而定 15、在命令行运行命令:java myprog good morning 会有什么结果显示出来: public class myprog{ public static void main(String argv[]) { System.out.println(argv[2]) } } a) myprog b) good c) morning

Java程序设计实验报告分析

学生实验报告 (理工类) 课程名称: JAVA程序设计专业班级: 13电子信息工程(2)学生学号: 1305102056 学生姓名:许伟铭 所属院部:软件工程学院指导教师:王倩倩 20 15 ——20 16 学年第 2 学期 金陵科技学院教务处制

实验报告书写要求 实验报告原则上要求学生手写,要求书写工整。若因课程特点需打印的,要遵照以下字体、字号、间距等的具体要求。纸张一律采用A4的纸张。 实验报告书写说明 实验报告中一至四项内容为必填项,包括实验目的和要求;实验仪器和设备;实验内容与过程;实验结果与分析。各院部可根据学科特点和实验具体要求增加项目。 填写注意事项 (1)细致观察,及时、准确、如实记录。 (2)准确说明,层次清晰。 (3)尽量采用专用术语来说明事物。 (4)外文、符号、公式要准确,应使用统一规定的名词和符号。 (5)应独立完成实验报告的书写,严禁抄袭、复印,一经发现,以零分论处。 实验报告批改说明 实验报告的批改要及时、认真、仔细,一律用红色笔批改。实验报告的批改成绩采用百分制,具体评分标准由各院部自行制定。 实验报告装订要求 实验批改完毕后,任课老师将每门课程的每个实验项目的实验报告以自然班为单位、按学号升序排列,装订成册,并附上一份该门课程的实验大纲。

实验项目名称:JAVA编程基础实验学时: 4 同组学生姓名:————实验地点: 1514/A203 实验日期: 2016.04.08 实验成绩: 批改教师:王倩倩批改时间:

一、实验目的和要求 (1)熟练掌握JDK1.7及Eclipse Kepler Service Release 1(下简称Eclipse)编写调试Java应用程序及Java小程序的方法; (2)熟练掌握Java应用程序的结构; (3)了解Java语言的特点,基本语句、运算符及表达式的使用方法; (4)熟练掌握常见数据类型的使用; (5)熟练掌握if-else、switch、while、do-while、for、continue、break、return 语句的使用方法; (6)熟练掌握数组和字符串的使用; (7)调试程序要记录调试过程中出现的问题及解决办法; (8)编写程序要规范、正确,上机调试过程和结果要有记录,不断积累编程及调试经验; (9)做完实验后给出本实验的实验报告。 二、实验仪器和设备 奔腾以上计算机,Windows 操作系统,装有JDK1.7和Eclipse软件。 三、实验过程 (1)分别使用JDK命令行和Eclipse编译运行Java应用程序。记录操作过程。 Java应用程序参考如下: 思考:1. 适当添加注释信息,通过javadoc生成注释文档; 2. 为主方法传递参数“Hello world”字符串,并输出; 3. 压缩生成".jar"文件。 (2)分别使用JDK命令行和Eclipse编译Java Applet,并建立HTML文档运行该Applet。 记录操作过程。 Java小应用程序参考如下:

java程序设计习题集

Java程序设计习题集 第一章Java基础知识 §1.1Java概述 1.完成在Windows 2000操作系统下环境变量的配置 2.创建一个Java程序,输出自己的基本信息:名字和年龄。 3.概述Java语言的版本发展过程。 4.简述Java语言的运行机制。 5.在自己的机器上用JDK开发运行环境完成第一个Java程序的编辑、编译、运行过程。 6.简述Java语言的特点,Java虚拟机的概念及作用。 §1.2 Java基本语法 1.什么是变量?什么是常量? 2.什么叫表达式,Java语言中共有几种表达式? 3.下面哪些表达式不合法?为什么? HelloWorld 2Thankyou _First -Month 893Hello non-problem HotJava implements $_MyFirst 4. 以下的选项中能正确表示Java语言中的一个整型常量的是( )。 A) 12. B) -20 C) 1,000 D) 4 5 6 5. 以下选项中,合法的赋值语句是( )。 A) a = = 1; B) ++ i; C) a=a + 1= 5; D) y = int ( i ); 6. 若所用变量都已正确定义,以下选项中,非法的表达式是( )。 A) a != 4||b==1 B) 'a' % 3 C) 'a' = 1/2 D) 'A' + 32 7. 若有定义int a = 2;则执行完语句a += a -= a * a; 后,a的值是( )。 A) 0 B) 4 C) 8 D) -4 8. 在Java语言中,逻辑常量只有true 和 ___________ 两个值。 9. Java语言中的浮点型数据根据数据存储长度和数值精度的不同,进一步分为float 和 __________两种具体类型。 10. Java语言是( )。 A.面向问题的解释型高级编程语言 B.面向机器的低级编程语言 C.面向过程的编译型高级编程语言 D.面向对象的解释型高级编程语言 11. 下列的变量定义中,错误的是( )。 A) int i; B) int i=Integer.MAX_VALUE; C) static int i=100; D) int 123_$; 12. 以下的变量定义语句中,合法的是( )。 A) float $_*5= 3.4F; B) byte b1= 15678; C) double a =Double. MAX_VALUE; D) int _abc_ = 3721L; 13. 以下字符常量中不合法的是( )。 A) '|' B) '\'' C) "\n" D) '我' 14. 若以下变量均已正确定义并赋值,下面符合Java语言语法的语句是( )。 A) b = a!=7 ; B) a = 7 + b + c=9; C) i=12.3* % 4; D) a = a + 7 = c + b;

Java程序设计课程作业

Java程序设计课程作业 第一章绪论 1、安装Java SDK到你的电脑中。 2、选择安装一种Java开发工具到你的电脑中。Jcreater、NetBeans、Eclipse 3、编译并运行一个“Hello World”Java程序。 程序代码: // public class App2_1 { public static void main(String[]args) { System.out.println("hello Word"); } } 4、编译并运行一个Java Applet程序。 答:编译成功,不过浏览器不显示自己的Applet程序,还在学习中,错误的原因是自己电脑上java的安全设置的原因,修改后运行成功。 第二章Java语法基础 1、下列表达式是否有错?若有错,请说明何处出现何种错误;若无错,请给出其值。 (1) 3+4<<2^-8 没有错误,运行结果为-28 (2) 36>>2*4&48<<8/4+2 运行结果为0

有错误,||这个运算规律是两边均为boolean型 (4) 2*4&&0<2||4%2 有错误,||这个运算规律是两边均为boolean型 2、任意准备一份学生成绩表,其中包括至少3门课程、每门课程至少10名同学的成绩。请编写程序完成以下功能:(1) 统计并输出各门课程的平均成绩。(2) 输出等级表:优、良、中、及格及不及格。 import java.util.*; class student{ String num; doublemath; doubleenglish; doublechinese; } publicclass Test{ publicstaticvoid main(String[]agrs){ student stu[]=new student[11]; for(int i=0;i<10;i++) stu[i]=new student(); Scanner reader=new Scanner(System.in); System.out.println("请依次输入十个同学的数学,英语。语文的成绩:"); for(int i=0;i<=10;i++){ System.out.println("第"+(i+1)+"同学的数学,英语。语文的成绩:"); stu[i].math=reader.nextInt(); stu[i].english=reader.nextInt(); stu[i].chinese=reader.nextInt(); } double sum=0; for(int i=0;i<10;i++) sum=sum+stu[i].math; float A=(float)sum/10; System.out.println("数学平均成绩:"+A); //int sum;

Java程序的设计实验报告

信息科学与工程学院 课程设计 题目:图书管理系统 姓名:晓雨颖 学号: 201312140115 201312140120 班级: 13级本科四班物联网 课程: Java程序设计 任课教师梦琳 2014年12月20日

课程设计任务书及成绩评定

目录 1前言 (3) 1.1设计目的 (4) 1.2设计任务 (4) 1.3运行环境 (4) 2总体设计 (5) 2.1设计原理............................................. 错误!未定义书签。3详细设计实现.. (5) 3.1 代码 (5) 3.2 登陆后事件处理 (12) 4心得体会................................................ 错误!未定义书签。

1前言 Java的前身是Oak,它一开始只是被应用于消费性电子产品中。后来它的开发者们发现它还可以被用于更大围的Internet上。1995年,Java语言的名字从Oak编程了Java。1997年J2SE1.1发布。1998年J2SE1.2发布,标志Java2的诞生。十多年来,Java编程语言及平台成功地运用在网络计算及移动等各个领域。Java的体系结构由Java语言、Java class、Java API、Java虚拟机组成。它具有简单、面向对象、健壮、安全、结构中立、可移植和高效能等众多优点。Java支持多线程编程,Java运行时系统在多线程同步方面具有成熟的解决方案。Java的平台标准有Java ME,Java SE和Java EE。Java发展到今天,它的卓越成就及在业界的地位毋庸置疑。目前在众多的支持Java的开发工具中主要的7有Java Development Kit,NetBeans,Jcreator,JBuilder,JDeveloper和Eclipse等。其中Java Development Kit 简称JDK是大多开发工具的基础。以上的每种开发工具都有优缺点,对于开发者来说,重要的是要根据自己的开发规模、开发容和软硬件环境等因素来选择一种合适的开发 工具。

java实验报告1(程序设计基础)

2012—2013学年第 1 学期 合肥学院数理系 实验报告 课程名称:《面向对象程序设计》 实验项目:程序设计基础 实验类别:综合性□设计性□验证性√ 专业班级:10信息与计算科学班 姓名:学号: 实验地点:校内机房 实验时间:2012.10.22 —2012.10.28 指导教师:钱泽强成绩:

一、实验目的 熟悉Java的编程环境;通过编程掌握Java程序的调试;提高学生的分析问题、解决问题的能力;理解Java语言的基本结构和程序设计方法。 二、实验内容 1、安装并配置JDK,使用Eclipse创建Java程序,并调试运行; 2、了解 Java Application应用程序和Java Applet程序; 3、通过编程掌握Java的基本,并提高分析问题和解决问题的能力。 三、实验方案(程序设计说明) [题目1] 安装Eclipse并配置JDK。 [题目2] 使用Eclipse创建Application程序,并调试运行。 public class test1 { public static void main(String []args) { System.out.println("hello"); } } [题目3] 在Eclipse中创建Applet程序并调试运行。 import java.awt.*; import java.applet.*; public class test2 extends Applet { public void paint(Graphics g) { g.drawString("hello",20,20);} } [题目4] 掌握输入和输出,编写程序求任意两个实型数据的和。 [题目5] 掌握数组的使用,编写程序求一组整型数据的最大值。 四、实验程序和运行结果 请附页记录正确的源程序 五、实验总结 六、教师评语及成绩

大学《java程序设计》考试题库及答案

若有定义int a=2,b=2; 则表达式(a++)+(++b) 的值是( )。 A. 5 监听器接口的方法返回值的类型是()。C. void 在浏览器中执行applet 程序,以下选项中的哪个方法将被最先执行()。 D. init() 以下哪个不是Java的原始数据类型() B. Boolean 向Applet传递参数的正确描述是()。C. C. PARAM name="age,value=20" 阅读下列代码; public class Test{ String s="One World One Dream"; public static void main(String args[]){ System.out.println(s); } } 其运行结果是_ C. 编译时出错//除非创建Text类的对象 如果容器组件p的布局是BorderLayout,则在p的下边中添加一个按钮b,应该使用的语句是()。 A. p.add(b,"South"); 编译和运行下面的应用程序,并在命令行界面输入12345 ,则回车后屏幕输出的结果是( )。public class A { public static void main(String args[]) throws IOException{ BufferedReader buf=new BufferedReader( new I nputStreamReader(System.in)); String str=buf.readLine(); int x=Integ er.parseInt(str); System.out.println(x/100); } } B. 123 构造函数何时被调用?() B. 创建对象时 以下哪项可能包含菜单条()。 D. Frame

相关主题
文本预览
相关文档 最新文档