Java程序设计

1.

i,j 为类 x 中定义的 double 型变量名,下列 x 类的构造函数中不正确的是(

A

double x(double k )
{
i=k;
return i;
}





 

B

x(double m, double n )
{
i=m;
j=n; 
}





 

C

x( )
{
i=0;
j=0; 
}





 

D

x(double k )
{
i=k;
}


 

参考答案

A

2.

package语句的作用是(

A

引入一个包

B

创建一个包

C

既能引入一个包,又能创建一个包

D

以上皆不对

参考答案

B

3.

在某类的子类中,下述方法中必须要实现的方法是(

A

Public double methoda();

B

Static void methoda (double d1);

C

Public native double methoda();

D

Abstract public void methoda();

参考答案

D

4.

关于下列程序结果正确的是(

public class MyClass{

static int i;

public static void main(String argv[]){

System.out.println(i);

}

}

A

Error Variable i may not have been initialized

B

Null

C

1

D

0

参考答案

D

5.

以下哪个表达式是不合法的(

A

String x=”Hello”; int y=9; x+=y;

B

String x=”Hello”; int y=9; if(x= =y) { };

C

String x=”Hello”; int y=9; x=x+y;

D

String x=null; int y=(x!=null)&&(x.length()>0) ? x.length() : 0;

参考答案

B

6.

下列选项中为java关键字的是(

A

default

B

Run

C

Integer

D

implement

参考答案

A

7.

下列哪个方法可以获得一个事件的ID号(

A

int getID()

B

String getSource()

C

int returnID()

D

int eventID()

参考答案

A

8.

给定程序如下

public static void main(String args[]) {

Float f=new Float(4.2f);

Float c;

Double d=new Double(4.2);

float fl=4.2f;

c=f;

}

下列选项中( )的值为真.

A

f.equals(d)

B

c=f

C

c==d

D

c.equals(f)

参考答案

D

9.

若所用变量都已正确定义,以下选项中,非法的表达式是( )。

A

a!=4||b==1;

B

'a' % 3;

C

'a'=1/2;

D

'A' + 32;

参考答案

C

10.

给定File f=new File("aa.txt");可以实现向文件尾部读写的是( )。

A

RandomAccessFile f1=new RandomAccessFile(f,"r");

B

RandomAccessFile f1=new RandomAccessFile(f,"a");

C

RandomAccessFile f1=new RandomAccessFile(f,"rw");

D

RandomAccessFile f1=new RandomAccessFile(f,"w");

参考答案

C

11.

下列说法不正确的是(

A

java语言里的线程是没有优先级的

B

String类在java.lang包中

C

java语言支持类的序列化

D

能序列化的类必须实现java.io.Serializable接口

参考答案

A

12.

一个类的成员变量如果要使其可以被同一个包中其它类访问,应该选取的修饰符为(

A

protected

B

public

C

缺省(没有)

D

private

参考答案

C

13.

传递给public static void main方法的String数组的下标为0的元素为(

A

应用程序的名称

B

所传递参数的个数

C

所传递参数中的第一个

D

以上均不对

参考答案

C

14.

以下由do-while语句构成的循环执行的次数是(

int k = 0;

do {

++k;

}while ( k < 1 );

A

一次也不执行

B

执行1

C

无限次

D

有语法错,不能执行

参考答案

B

15.

容器被重新设置大小后,哪种布局管理器的容器中的组件大小不随容器大小的变化而改变? ( )

A

CardLayout

B

FlowLayout

C

BorderLayout

D

GridLayout

参考答案

B

16.

如果有类Person和其子类ManWoman,则如果程序中出现语句Woman w=new Man();下列说法正确的是( )。

A

语句错误

B

语句正确

C

编译正确但运行错误

D

以上均不对

参考答案

A

17.

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

A

线程只能通过继承类Thread创建.

B

执行suspend方法将使线程停止并不能被重新start.

C

线程与进程实际是同一个概念.

D

线程的终止可以通过两种方式实现:自然撤销或被停止.

参考答案

D

18.

使用FlowLayout作为布局管理器,则向容器中添加对象component的正确方法是(

A

add(component);

B

add("Center", component);

C

add(x, y, component);

D

set(component);

参考答案

A

19.

下列哪个不是整数类型的变量(

A

-10

B

045

C

0xa1

D

67f

参考答案

D

20.

下列哪个选项不会出现编译错误?(

A

float f = 1.3;

B

char c = "a";

C

byte b = 257;

D

int i = 10;

参考答案

D

21.

main方法是Java Application程序执行的入口点,关于main方法的方法头以下哪项是合法的?(

A

public static void main()

B

public static void mainString[ ] args

C

public static int mainString[ ] arg

D

public void mainString arg[ ]

参考答案

B

22.

以下程序

boolean a=false;

boolean b=true;

boolean c=(a&&b)&&(!b);

int result=c==false?1:2;

执行完后,cresult的值是(

A

c=false;result=1;

B

c=true;result=2;

C

c=true;result=1;

D

c=false;result=2;

参考答案

A

23.

给定以下程序段

insert code public class foo {

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

printWriter out = new PrintWriter (new java.io.outputStreamWriter (System.out), true) ;

out.printIn(“Hello”);

}

}

要使程序能正确运行,insert code处必须添加( )语句

A

import java.io.PrintWriter;

B

include java.io.PrintWriter;

C

import java.io.OutputStreamWriter;

D

include java.io.OutputStreamWriter;

参考答案

A

24.

下列哪个类或接口是类FilterOutputStream 的构造方法的输入参数(

A

InputStream

B

OutputStream

C

File

D

RandomAccessFile

参考答案

B

25.

在一个应用程序中有如下定义:int a[]={1,2,3,4,5,6,7,8,9,10};为了打印输出数组a的最后一个元素,下面正确的代码是(

A

System.out.println(a[10]);

B

System.out.println(a[9]);

C

System.out.println(a[a.length]);

D

System.out.println(a[8]);

参考答案

B

26.

通过下列( I/O类可以实现对文件类File的添加,更新操作。

A

RandomAccessFile

B

Outputstream

C

DataOutputstream

D

InputStream

参考答案

A

27.

给定程序

class Base{ public void Base() {

System.out.println("Base");

}

}

public class In extends Base{

public static void main(String argv[]) {

In i=new In();

}

}

则下列说法正确的是(

A

出现编译错误

B

编译通过但是无输出信息

C

输出”Base”

D

运行时产生异常

参考答案

B

28.

下面哪些赋值语句是错误的?(

A

float f = 11.1;

B

double d = 5.3E12;

C

char c ='\r';

D

Boolean b=true;

参考答案

A

29.

Java语言是( )。

A

面向问题的解释型高级编程语言

B

面向机器的低级编程语言

C

面向过程的编译型高级编程语言

D

面向对象的解释型高级编程语言

参考答案

D

30.

在某个类A中存在一个方法:void GetSort(int x),以下能作为这个方法的重载的声明的是(

A

void GetSort(float x)

B

int GetSort(int y)

C

double GetSort(int y)

D

void Get(int x,int y)

参考答案

A

31.

若已定义 byte[ ] x= {11,22,33,-66} ; 其中0≤k≤3,则对x数组元素错误的引用是( )

A

x[5-3]

B

x[k]

C

x[k+5]

D

x[0]

参考答案

C

32.

System下列包( )中。

A

java.util

B

java.io

C

java.awt

D

java.lang

参考答案

D

33.

下列语句中错误的是(

A

StringBuffer sb=new String(‘a’)

B

StringBuffer sb1=new StringBuffer();

C

StringBuffer sb2=new StringBuffer(20);

D

StringBuffer sb3=new StringBuffer(“sss”);

参考答案

A

34.

下列二维数组定义不正确的是(

A

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

B

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

C

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

D

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

参考答案

B

35.

在单一文件中importclasspackage的正确出现顺序是(

A

package, import, class

B

class, import, package

C

import, package, class

D

package, class, import

参考答案

A

36.

编译,运行下列代码后的结果是(

public class Test {

public static void main (String args []) {

int age;

age = age + 1;

System.out.println("The age is " + age);

}

}

A

编译,运行后没有输出

B

编译,运行后输出:The age is 1

C

能通过编译,但运行时产生错误

D

不能通过编译

参考答案

D

37.

构造函数在( )时被调用

A

类定义时

B

使用对象的属性时

C

使用对象的方法时

D

对象被创建时

参考答案

D

38.

如果要向文件file.txt中添加数据,应如何构建输出流(

A

OutputStream out=new FileOutputStream(“file.txt”);

B

OutputStream out=new FileOutputStream(“file.txt”, “append”);

C

FileOutputStream out=new FileOutputStream(“file.txt”, true);

D

FileOutputStream out=new FileOutputStream(new file(“file.txt”));

参考答案

C

39.

下列哪个标识符不是Java中的保留字(

A

if;

B

then;

C

goto;

D

case;

参考答案

C

40.

如果通过命令行java myprog good morning 运行下列程序,结果正确的是( )。 


 

A

myprog

B

good

C

morning

D

Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 2 at myprog.main(myprog.java:4)

参考答案

D

41.

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

A

找到合适的异常类型后继续执行后面的catch

B

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

C

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

D

对每个catch都执行一次

参考答案

C

42.

x,y 均为已定义的类名,下列声明对象x1的语句中正确的是(

A

public x x1= new y( );

B

x x1=x( );

C

x x1=new x( );

D

int x x1;

参考答案

C

43.

假定有一个可能引起异常的方法,用什么方式告诉方法的调用者要捕获该异常?(

A

throw Exception

B

throws Exception

C

new Exception

D

不用特别指定

参考答案

B

44.

既能作为类的修饰符, 也能作为类成员的修饰符的是(

A

public

B

extends

C

float

D

static

参考答案

A

45.

假定组件List定义为List l=new List(5,true),则下列描述正确的是(

A

该列表的最大容量为5

B

该列表可显示5,并且为多选模式

C

该列表可显示5,并且为单选模式

D

以上均不对

参考答案

B

46.

下列语句执行后,a的值是( int a=13; a%=a/5;

A

3

B

13

C

169

D

1

参考答案

D

47.

下列方法定义中,正确的是(

A

int x( ){ char ch='a'; return (int)ch; }

B

void x( ){ ...return true; }

C

int x( ){ ...return true; }

D

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

参考答案

A

48.

下面是有关子类继承父类构造函数的描述,其中正确的是(

A

创建子类的对象时,先调用子类自己的构造函数,然后调用父类的构造函数.

B

子类无条件地继承父类不含参数的构造函数.

C

子类必须通过super关键字调用父类的构造函数

D

子类无法继承父类的构造函数.

参考答案

C

49.

下列类头定义中,错误的是(

A

class x{}

B

public x extends y{ }

C

public class x extends y{}

D

class x extends y implements y1 { }

参考答案

B

50.

下列关于事件监听器说法正确的是(

A

一个组件一次只能设置一个监听器

B

时间监听器可以从组件中删除

C

只要设置一个事件监听器就可对组件中的多种事件进行响应

D

进行事件处理时,必须使用try-catch结构

参考答案

B

51.

给定下列程序段: public void method(){ (1) if (someTestFails()){ (2) } (3) }如果要使该方法抛出一个IOException当且仅当someTestFails()返回值为真时,则下列说法正确的是(

A

(1)处添加 IOException e;

B

(2)处添加 throw e;

C

(2)处添加throw new IOException( );

D

(3)处添加throw new IOException( );

参考答案

C

52.

用于定义类成员的访问控制权的一组关键字是( )

A

class, float, double, public

B

float, boolean, int, long

C

char, extends, float, double

D

public, private, protected

参考答案

D

53.

下列哪种情况无法使当前线程停止执行(

A

线程执行过程中的异常被抛出发生

B

线程执行了sleep()方法.

C

产生了一个新线程

D

具有更高优先级的线程准备就绪

参考答案

C

54.

paint()方法使用( )作为起输入参数。

A

Graphics

B

Graphics2D

C

String

D

Color

参考答案

A

55.

下列说法错误的是( )。

A

Java Application命名必须与公共类名相同

B

自定义Applet通常是类Applet的子类

C

Applet中也可以有main()方法

D

一个Java Application文件中可以定义多个类

参考答案

C

56.

关于事件监听器下述说法正确的是(

A

一个对象最多可以设置一个监听器

B

每个监听器的返回值可以用于激活其它的监听器

C

如果一个对象可设置多个监听器,则每个监听器执行顺序是固定的.

D

AWT, 每个监听器的方法都必须取得一个输入参数,该参数是java.awt.AWTEvent 子类的一个实例.

参考答案

D

57.

给出下列声明String s=”Example”,则下列选项中( )不是合法的代码

A

S[3]=”x”;

B

int I=s.length();

C

String t=”For”+s;

D

String t=s.toLowerCase();

参考答案

A

58.

当某区域被毁坏或需要清除时,AWT会自动调用下列哪个方法(

A

paint()

B

repaint()

C

update()

D

destoy()

参考答案

A

59.

下式中给字符串数组正确赋值的语句是( )。

A

String temp [] = new String {"j", "a", "z"};

B

String temp [] = { "j " " b" "c"};

C

String temp = {"a", "b", "c"};

D

String temp [] = {"a", "b", "c"};

参考答案

D

60.

给出下列代码段:

if(x>4){

System.out.println(“Test 1”);

} else if(x>9){

System.out.println(“Test 2”);

} else {

System.out.println(“Test 3”);

}

哪一个范围的x取值可以产生输出信息:”Test 3”

A

小于0

B

59之间

C

大于等于10

D

以上均不对

参考答案

A

61.

在编写异常处理的Java程序中,每个catch语句块都应该与( )语句块对应,使得用该语句块来启动Java的异常处理机制.

A

if – else

B

switch

C

try

D

throw

参考答案

C

62.

String s=”Example String”;下列对s的操作中( )是错误的

A

int i=s.length();

B

s[3]=”x”;

C

String short_s=s.trim();

D

String t=”root”+s;

参考答案

B

63.

可以替换一个Container对象布局的方法( )。

A

setLayout(aLayoutManager);

B

addLayout(aLayoutManager);

C

layout(aLayoutManager);

D

setLayoutManager(aLayoutManager);

参考答案

A

64.

Java应用中main()方法的参数形式正确的是(

A

String args

B

String ar[]

C

Char args[][]

D

DStringBuffer arg[]

参考答案

B

65.

以下赋值语句中( )是错误的.

A

float f=1/3;

B

int i=1/3;

C

float f=1.01;

D

double d=999d;

参考答案

C

66.

下列选项不是类修饰符protected特征的是(

A

可被本类访问

B

可被子类访问

C

可被同一包中其它类访问

D

可被不同包中非子类访问

参考答案

D

67.

下列哪个选项不能使当前线程停止执行?(

A

一个异常被抛出

B

线程执行了sleep()调用

C

高优先级的线程处于可运行状态

D

当前线程产生了一个新线程

参考答案

D

68.

Java中合法标识符是( )

A

3d_game

B

%passwd

C

userName

D

this

参考答案

C

69.

下列标识符不合法的是(

A

2variable

B

variable2

C

_whatavariable

D

_3_

参考答案

A

70.

public class returnIt{

returnType methodA(byte x, double y) {

return x/y * 2;

}

}

中的方法methodA( )方法的返回值类型为(

A

Int

B

Byte

C

Short

D

double

参考答案

D

71.

为了使包sos在当前程序中可见,可以使用的语句是( ).

A

import sos.*

B

package sos.*

C

include sos

D

sos package

参考答案

A

72.

下面关于Applet的说法正确的是(

A

Applet也需要main方法

B

自定义Applet可以继承自java.awt.Applet

C

Applet能访问本地文件

D

Applet程序不需要编译

参考答案

B

73.

编译并运行下列程序的正确结果是(

public class EqualsTest{

public static void main(String args[]){

Object A=new Long(7);

Long L=new Long(7);

if(A.equals(L)) System.out.println("Equal");

else System.out.println("Not Equal");

}

}

A

Equal.

B

Not Equal

C

.编译错误

D

以上均不对.

参考答案

A

74.

如果一个类对象要永久保存,则必须实现接口( )。

A

Runnable

B

Enumeration

C

Serializable

D

Object

参考答案

C

75.

StringBuffer str=new StringBuffer(25);
String s=”Hello”,

若执行语句str.append(s),str.length()str.capacity()的返回值为(

A

5,5

B

25,5

C

5,25

D

25,25

参考答案

C

76.

关于下列程序

public class Q {

public static void main(String argv[]){

int anar[]= new int[]{1,2,3};

System.out.println(anar[1]);

}

}

以下结论正确的是(

A

发生编译错误

B

1

C

2

D

数组长度未指定

参考答案

C

77.

下列语句不正确的是( )。

A

int a[][]=new int[][3];

B

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

C

String s[][]=new String[2][];

D

String s[][]={{"can","I"},{"help","you"}};

参考答案

A

78.

下列对常量MAX定义正确的是(

A

public int MAX =100;

B

static int MAX =100;

C

final public int MAX =100;

D

public final static int MAX =100;

参考答案

D

79.

下列InputStream构造方法正确的是(

A

InputStream in=new FileReader(“file.txt”);

B

InputStream in=new FileInputStream(“file.txt”);

C

InputStream in=new InputStreamFileReader (“file.txt”, “read”);

D

FileInputStream in=new FileReader(new File(“file.txt”));

参考答案

B

80.

如果定义一个线程类,它继承自Thread,则我们必须重写其中的( )方法

A

run

B

start

C

yield

D

stop

参考答案

A

1.

java语言中的逻辑变量可以和整型变量相互强制转换。

正确

错误

参考答案

错误

2.

Java语言支持类的序列化.

正确

错误

参考答案

正确

3.

字符串 "\'a\'" 的长度是5.

正确

错误

参考答案

错误

4.

数组的下标从1开始计数。

正确

错误

参考答案

错误

5.

事件源不能自己监听自己产生的事件.

正确

错误

参考答案

错误

6.

socket类在java.lang.

正确

错误

参考答案

错误

7.

Java中的消息包括消息的接收者,接受者所用方法,方法所需参数三个部分.

正确

错误

参考答案

正确

8.

声明为final的方法不能被重写。(

正确

错误

参考答案

正确

9.

静态变量使用前必须初始化。(

正确

错误

参考答案

正确

10.

Default子句只能出现在case子句后.

正确

错误

参考答案

错误

11.

保留字 this 代表当前对象.

正确

错误

参考答案

正确

12.

复合语句虽然由多条语句构成,但从功能上可视为一条语句,是一个整体。()

正确

错误

参考答案

正确

13.

通过类FileOutputStream可以实现对文件的随机处理.

正确

错误

参考答案

错误

14.

Java”+”运算符除可执行加法运算外也可用于字符串的连接操作。

正确

错误

参考答案

正确

15.

for 语句中的循环体不能是空的.

正确

错误

参考答案

错误

16.

一个接口中只需进行方法的声明,而不提供具体的实现。

正确

错误

参考答案

正确

17.

Java的编译环境和运行环境必须在同一台机器上.()

正确

错误

参考答案

错误

18.

Java 支持多线程机制。

正确

错误

参考答案

正确

19.

进行AWT绘制时,需要程序员重写repaint()方法。

正确

错误

参考答案

错误

20.

组件必须放置在一定的容器中才能显示.

正确

错误

参考答案

正确

21.

创建对象时系统将调用适当的构造方法给对象初始化。

正确

错误

参考答案

正确

22.

Connection完成对指定数据库的连接操作.

正确

错误

参考答案

正确

23.

一个 Java 源程序中允许有多个公共类。

正确

错误

参考答案

错误

24.

线程一旦被创建就处于可运行状态.

正确

错误

参考答案

错误

25.

程序中抛出异常时(throw …),只能抛出自己定义的异常对象。

正确

错误

参考答案

错误

26.

数据报通信协议(UDP)是一种面向连接的协议.

正确

错误

参考答案

错误

27.

数组成员只能为简单数据类型。

正确

错误

参考答案

错误

28.

JDBC API是一组抽象接口,可以通过它实现应用程序与数据库的连接.

正确

错误

参考答案

正确

29.

对象和类是同一个概念。

正确

错误

参考答案

错误

30.

一个布局容器中可以混合使用多种布局策略。

正确

错误

参考答案

正确

31.

重载的方法可以通过它们返回值的不同类型来区分。(

正确

错误

参考答案

错误

32.

抽象类中至少要包含一个抽象方法。

正确

错误

参考答案

错误

33.

Java字节码文件是与具体平台相关的。(

正确

错误

参考答案

错误

34.

Java在定义一个类的同时将为该类分配内存空间.

正确

错误

参考答案

错误

35.

main方法中不能声明抛弃异常。

正确

错误

参考答案

错误

36.

不同包中的类的名字可以相同。

正确

错误

参考答案

正确

37.

RandomAccessFile提供了对随机文件访问的支持.

正确

错误

参考答案

正确

38.

类的私有属性和私有方法可以被其子类对象访问。

正确

错误

参考答案

错误

39.

While结构与do..while结构是完全等价的两种结构.

正确

错误

参考答案

错误

40.

Java 源程序的文件名必须和公共类的类名相同.

正确

错误

参考答案

正确

1.

public class sumof10
{
public static void main(String args[]) 
{
int I,sum;
sum=0; 
I=1;
do

sum+=I; I++; 
}
while (I<=10); 
System.out.println(“sum=”+sum);
}
}

参考答案

sum=55

2.

import java.io.* ; 
public class Reverse{
public static void main(String args[ ]) { 
int i , n =5 ;

int a[ ] = new int[5];
for ( i = 0 ; i < n ; i ++ )

try { 
BufferedReader br = new BufferedReader( new InputStreamReader(System.in)); 
a[i] = Integer.parseInt(br.readLine( )); 
}
catch ( IOException e ) { } ;
for ( i = n
1 ; i >= 0 ; i-- )

System.out.print(a[i]+" "); 
System.out.println( ); 
}
}

如果从键盘输入1 2 3 4 5 则运行结果为:

参考答案

5 4 3 2 1

3.

class test

{

public static void main(String args[])

{

int x=4,j=0;

switch(x)

{

case 1: j++;

case 2: j++;

case 3: j++;

case 4: j++;

case 5: j++;

break;

default: j++;

}

System.out.println(j);

}

}

参考答案

2

4.

public class Leaf{ 
private int i=0; 
Leaf increment( ){ 
i++; 
return this; 

void print( ){ 
System.out.println(“i=”+i); 

public static void main(String args[]){ 
Leaf x=new Leaf( ); 
x.increment( ).increment( ).increment( ).print( ); 

}

参考答案

i=3

5.

import java.io.*;

public class test

{

public static void main(String argv[])

{

test m=new test();

System.out.println(m.amethod());

}

public int amethod()

{

try

{

FileInputStream dis=new FileInputStream("Hello.txt");

}

catch (FileNotFoundException fne)

{

System.out.println("No such file found");

return -1;

}

catch(IOException ioe)

{

}

finally{ System.out.println("Doing finally");

}

return 0;

}

}

如果文件Hello.txt并不存在,则运行结果是




 

参考答案

No such file found Doing finally -1

6.

public class EqualsTest

{

public static void main(String args[])

{

Long LA=new Long(7);

Long LB=new Long(7);

if(LA==LB) System.out.println("Equal");

else System.out.println("Not Equal");

}

}

参考答案

Not Equal

7.

public class test

{

public static void main(String a[])

{ StringBuffer s=new StringBuffer("Java");

String c=new String("Java");

Hello(s,c);

System.out.println(s+c);

}

public static void Hello(StringBuffer s, String c)

{

s.append("C");

c.replace(''A'',''D'');

}

}

参考答案

JavaCJava

8.

class Mystery

{

private long val;

public Mystery(long v)

{

val = v;

}

public static void main(String args[])

{

Mystery x = new Mystery(10L);

Mystery y = new Mystery(10L);

Mystery z = y; long a = 10L;

int b = 10;

System.out.println("the value1="+(y==z));

System.out.println("the value2="+(y==x));

}

}

参考答案

the value1=true the value2=false

9.

import java.io.*;

import java.net.*;

public class Test

{

public static void main(String args[]) throws Exception

{

URL url=new URL(“http://www.163.com:80/news.html”);

System.out.println(“protocol=”+url.getProtocol());

System.out.println(“host=”+url.getHost());

System.out.println(“filename=”+url.getFile());

System.out.println(“path=”+url.getPath()); } }

参考答案

protocol=http host=www.163.com filename=/news.html path=/news.html

10.

文件file.txt的内容为How are you

import java.io.*; 
public class Test{ 
public static void main(String args[]) throws IOException{ 
File inputfile=new File(“file.txt”);
FileReader in=new FileReader(inputfile);
int c;
while ((c=in.read())!= -1) { if(c==’’) {
System.out.println(); 
continue; 

System.out.print ((char)c); 
}

in.close(); 

}

参考答案

How

are

you

11.

class Test

{

public static void add3(Integer i)

{

int val=i.intValue();

val+=3; i=new Integer(val);

}

public static void main(String args[])

{

Integer i=new Integer(0);

add3(i);

System.out.println(i.intValue());

}

}

参考答案

0

12.

public class test

{

static StringBuffer sb1=new StringBuffer("Hello");

static StringBuffer sb2=new StringBuffer("Hello");

public static void main(String args[])

{

aMethod(sb1,sb2);

System.out.println("sb1 is "+sb1);

System.out.println("sb2 is "+sb2);

}

public static void aMethod(StringBuffer sb1,StringBuffer sb2)

{

sb2.append(" there");

sb1=sb2;

}

}

参考答案

sb1 is Hello sb2 is Hello there

13.

public class test

{

public static void main(String argv[])

{

boolean b1 = true;

if((b1 ==true) || place(true))

{

System.out.println("Hello Crowle");

}

}

public static boolean place(boolean location)

{

if(location==true)

{

System.out.println("Borcetshire");

}

System.out.println("Powick");

return true;

}

}

参考答案

Hello Crowle

14.

public class demo

public static void main(String args[])

int bookno=0; 
while (bookno<=100)
{
 bookno+=10; 
if (bookno==40) break; 
System.out.println(“the bookno is”+bookno);
 } 
System.out.println(“This is the end”); 
}
 }

参考答案

the bookno is 10 the bookno is 20 the bookno is 30 this is the end

15.

class Base

{

int x=3;

public Base() {} public void show()

{

System.out.println(" The value is " +x);

}

}

class Derived extends Base

{

int x=2;

public Derived() {} public void show()

{

System.out.println(" The value is " +x);

}

}

public class test

{

public static void main(String args[])

{

Base b = new Derived();

b.show();

System.out.println("The value is "+b.x);

}

}

参考答案

The value is 2 The value is 3

16.

class Base extends Object

{

String objType;

public Base()

{

objType="I am a Base type";

System.out.println(objType);

}

}

public class Test extends Base{ public Test()

{

objType="I am a Derived type";

System.out.println(objType);

}

public static void main(String args[])

{

Test D=new Test();

}

}

参考答案

I am a Base type I am a Derived type

17.

class A

{

public String toString()

{

return "4";

}

}

class B extends A

{

public String toString()

{

return super.toString()+"3";

}

}

public class test

{

public static void main(String args[])

{

B b=new B();

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

}

}

参考答案

43

18.

public class test{ 

 static int arr[] ={1,2,3,4,5};
 public static void main(String args[])
 {
 System.out.println(arr[]); 

}

参考答案

编译出错,因为数组不能整体输出.

19.

import java.awt.Graphics; import java.applet.Applet;

public class ttt extends Applet

{

public void paint( Graphics g )

{

int count, xPos = 25;

for ( count = 1; count <= 10; count++ )

{

if ( count == 8 ) break;

g.drawString( " " + count, xPos, 25 );

xPos += 10;

}

}

}

问题:程序的输出结果是什么?

参考答案

1 2 3 4 5 6 7

20.

public class Test

{

public static void main(String args[])

{

Test d=new Test(); d.divide(4,0);

}

public void divide(int a, int b) {

try

{

int c = a / b;

}

catch (Exception e)

{

System.out.print("Exception ");

}

finally

{

System.out.println("Finally");

}

}

}

参考答案

Exception Finally

21.

public class SwitchTest

{

public static void main (String []args)

{

System.out.println(“value =” +switchIt(4));

}

public static int switchIt(int x)

{

int j = 1;

switch (x)

{

case 1: j++;

case 2: j++;

case 3: j++;

case 4: j++;

case 5: j++;

default:j++;

}

return j + x;

}

}

参考答案

value =8

22.

public class test

{

public static void main(String args[])

{

int i=9;

switch (i)

{

default: System.out.println("default");

case 0: System.out.println("zero");

break;

case 1: System.out.println("one");

case 2: System.out.println("two");

}

}

}

参考答案

default zero

23.

interface Foo

int k=0;
 }
 public class test implements Foo

public static void main(String args[])
{
 int i; 
test t =new test();
 i=t.k;
 i=test.k;
 i=Foo.k; 
System.out.println(i); 
}
 }

参考答案

0

24.

public class Calc
 { 
public static void main (String args [])
 {
 int total = 0;
 for (int i = 0, j = 10; total > 30; ++i, --j) 

System.out.println(" i = " + i + " : j = " + j);
 total += (i + j); 

System.out.println("Total " + total);
 }
 }

参考答案

Total 0

25.

public class test

{

public static void main(String[] args)

{

StringBuffer a=new StringBuffer("A");

StringBuffer b=new StringBuffer("B");

operate(a,b);

System.out.println(a+","+b);

}

public static void operate(StringBuffer x, StringBuffer y)

{

x.append(y);

y=x;

}

}

参考答案

AB,B

26.

public class test

{

public static void main(String ar[])

{

int j=10;

method(j);

amethod(j);

System.out.println(j);

}

public static void method(int j) { j++; } public static void amethod(int j) { j++; }

}

参考答案

10

27.

public class Test

{

public static void main(String[] args)

{

String foo=args[0];

String bar=args[1];

String baz=args[2];

System.out.println(baz);

}

}

如果执行语句 java Test Red Green Blue 后结果为

参考答案

Blue

28.

public class Test

{

public static void main(String args[])

{

int x = 2; switch (x)

{ case 1: System.out.println(1);

case 2: case 3: System.out.println(3);

case 4: System.out.println(4);

}

}

}

参考答案

3 4

29.

class Myexception extends Exception

{

Myexception ()

{

super();

}

Myexception(String msg)

{

super(msg);

}

}

public class Test

{

public static void main(String args[])

{

try

{

throw new Myexception(“自定义异常”);

}

catch(Myexception e)

{

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

}

}

}

参考答案

自定义异常

30.

class Mystery

{

String s="original";

public static void main(String[] args)

{

Mystery m=new Mystery();

m.go();

}

void Mystery()

{

s="constructor";

}

void go()

{

System.out.println(s);

}

}

参考答案

original

31.

class Sum
 { 
int n; 
float f() 
{
 float sum=0;
 for(int i=1;i<=n;i++) sum=sum+i; 
return sum;
 } 
}
 class Average extends Sum 
{
 int n;
 float f()
 {
 float c; 
super.n=n; 
c=super.f();
 return c/n; 
}
 float g()
 {
float c;
 c=super.f();
 return c/2; 
}
 }
 public class Cala
 {
public static void main(String args[]) {Average aver=new Average();
 aver.n=10;
 float result_1=aver.f();
 float result_2=aver.g();
 System.out.println("result_1="+result_1); 
System.out.println("result_2="+result_2); 

}

参考答案

result_1=5.5 result_2=27.5

32.

public class test

{

String s1 = "Initialized at definition";

String s2;

public test(String s2i)

{

s2 = s2i;

}

public static void main(String args[])

{

test si =new test("Initialized at construction");

System.out.println("si.s1 = " + si.s1);

System.out.println("si.s2 = " + si.s2);

}

}

参考答案

si.s1 = Initialized at definition si.s2 = Initialized at construction

33.

public class student

{

String name;

int age;

student()

{

this("default",20);

}

student(String a1,int a2)

{

name=a1;

age=a2;

}

public static void main(String args[])

{

student s1=new student();

System.out.println("name="+s1.name+"age="+s1.age);

}

}

参考答案

name=default age=20

34.

public class test{

public static void main(String args[]){

String s = null;

s.toString();

try { s.toString(); }

catch(Exception e){

System.out.println("Caught exception " + e);

}

}

}

参考答案

Caught exception java.lang.NullPointerException

35.

public class test

{

public static void main(String args[])

{

String name[] = {"Killer","Miller"};

String name0 = "Killer";

String name1 = "Miller";

swap(name0,name1);

System.out.println(name0+"," +name1);

swap(name);

System.out.println(name[0]+"," +name[1]);

}

public static void swap(String name[])

{

String temp;

temp=name[0];

name[0]=name[1];

name[1]=temp;

}

public static void swap(String name0,String name1)

{

String temp;

temp=name0;

name0=name1;

name1=temp;

}

}

参考答案

Killer,Miller Miller,Killer

1.

什么是对象?如何创建一个对象?

参考答案

对象是对客观事物的抽象,是类的实例.在面向对象的程序设计题中,把问题域中的事物抽象成对象,将事物的静态特征用一组数据描述,将事物的动态特征用一组方法来刻画. 创建对象由以下三步完成: (1) 声明对象.其格式是: 类名 对象名表 (2) 建立对象,也就是为对象分配内存.其格式是: 对象名=new 构造方法() 或 类名 对象名=new构造方法() (3) 初始化对象,即为它的数据成员赋初值.

2.

阅读题下面的程序段,回答以下问题.

if ( x < 5 ) System.out.print(" one ");

else {

if ( y < 5 ) System.out.print(" two ");

else System.out.println(" three ");

}

问题: 1)若执行前 x=6, y=8,该程序段输出是什么? 2)若执行前 x=1, y=8,该程序段输出是什么?

参考答案

1)three 2)one

3.

说明 while do…while 语句的差异

参考答案

while 和 do…while 的区别在于:while 循环先判断题布尔表达式的值,若该布尔表达 式的值为假,则循环体可能一次也不执行;而 do…while 循环先执行循环体语句区块,因此,循环体中的语句至少要执行一次.

4.

方法的覆盖与方法的重载有何不同?

参考答案

覆盖是子类和父类中完全相同的方法(包括名称和参数列表),但方法体不同. 重载是同一个类中可以有多个同名的方法,但方法的参数列表不同.

5.

什么是接口和抽象类,它们之间的区别是什么?

参考答案

抽象类特点:抽象类必须用关键字abstract修饰;抽象类没有完全实现,它只能用于派生子类,不能用于产生实例;抽象类不一定包含抽象方法,但如果类中包含抽象方法,则必须声明为抽象类; 接口特点: 接口实际是一种特殊的抽象类,通过关键字interface声明. 接口中的所有方法都是抽象的(abstract可以缺省). 接口中的所有数据都是静态常量:即具有public,static ,final属性.

6.

消息的基本构成?

参考答案

消息包括:接受消息的对象、 接受消息的对象应执行的方法 、方法所需要的参数

7.

实例变量和类变量的区别是什么?

参考答案

在生成每个类的实例对象时,JAVA运行时系统为每个对象的实例变量分配一块内存,然后可以通过该对象来访问这些实例的变量.不同对象的实例变量是不同的.而对于类变量来说,在生成类的第一个实例对象时,JAVA运行时系统对这个对象的每个类变量分配一块内存,以后再生成该类的实例对象时,这些实例对象将共享同一个类变量,每个实例对象对类变量的改变都会直接影响到其他实例对象.类变量可以通过类名直接访问,也可以通过实例对象来访问,两种方法的结果?是相同的.

8.

SystemRuntime分别具有什么作用?

参考答案

类System,它提供了与系统无关的接口以实现对系统资源的使用,通过其成员变量in,out,err实现了标准输入、输出、错误流;类Runtime代表当前的运行环境,使得程序可以直接使用系统资源,但它是与系统相关的,通常只在特殊情况下使用,因为它破坏了程序的可移植性.

9.

简述线程与进程的区别。

参考答案

每个进程都有独立的代码和数据空间(进程上下文),进程间的切换会有较大的开销,一个进程包含1—n个线程。

同一类线程共享代码和数据空间,每个线程有独立的运行栈和程序计数器(PC),线程切换开销小。

10.

String类与StringBuffer类的主要区别是什么?

参考答案

类StringBuffer可以直接改变字符串的值或长度,而String对象却只能访问,不能直接进行修改,如果要修改,必须先生成对象的拷贝,再对拷贝进行修改.这是它们之间最大的区别.

11.

线程与进程相比,它们的区别是什么?

参考答案

线程和进程的比较
1、进程:每个进程都由独立的代码和数据空间,进程切换的开销大.
2、线程:轻量的进程,同一类线程共享代码和数据空间,每个线程有独立的运行栈和程序计数器?(PC),线程切换的开销小.

12.

什么是Applet,如何运行一个Applet

参考答案

Applet是嵌入到网页的java小程序.Applet在浏览器中运行,必须创建一个html文件,把Applet嵌入到html中,在浏览器中给出html文件的URL地址即可

13.

说明在数据类型转换中,什么是隐式类型转换?什么是显示类型转换?

参考答案

强制类型转换是指在一个表达式中出现的各种变量或常量的数据类型不同时,所进行的数据类型转换.Java 程序中的类型转换可分为显式和隐式转换两种形式. 隐式类型转换.对于由双目运算中的算术运算符组成的表达式,一般要求运算符两边的两个操作数的类型一致,如果两者的类型不一致,则系统会自动转换为较高(即取值范围较大)的类型,这便是隐式数据类型转换.显式类型转换.隐式类型转换只能由较低类型向较高类型转换,若需要由较高类型向较低类型转换则需要显式类型转换.显式类型转换需要人为地在表达式前面指明所需要转换的类型,系统将按这一要求把某种类型强制性地转换为指定的类型.

14.

Applet中方法init(),start(),stop()destroy()的作用?

参考答案

Init()方法在applet被首次载入时执行,作用是在applet被执行前执行一些必要的初始化操作. Start()方法是applet的主体,由系统调用,其作用是执行或启动必要的任务或线程. Stop()方法的作用是停止applet中一些耗费系统资源任务的执行. Destroy()方法用于清除无用的applet,释放相关的资源.

15.

使用socket进行通讯的基本步骤是什么?

参考答案

(1)创建socket;(2)打开连接到socket的输入/出流; (3)按照一定的协议对socket进行读/写操作; (4)关闭socket.

16.

数据报通信和流式通信的区别是什么?

参考答案

数据报通信协议UDP是一种无连接的协议.每个数据报都是一个独立的信息,包括完整的源地址或目的地址,它在网络上以任何可能的路径传往目的地,因此能否到达目的地,到达目的地的时间以及内容的正确性都是不能被保证的. 流式通信协议TCP与UDP不同,它是面向连接的协议,发送方和接收方的成对的两个socket之间必须建立连接,以便在TCP协议的基础上进行通信,当一个socket等待建立连接时,另一个socket可以要求进行连接,一旦这两个socket连接起来,他们就可以进行双向数据传输,双方都可以进行发送或接收操作.

17.

说明修饰符private,public,protected,缺省的作用范围差异.

参考答案

public 如果public用于修饰一个类名,则表示该类可以被所有的其它类访问和引用,即:其它类可以创建该类的实例,访问该类的所有可见成员变量,调用所有可见方法.如果类成员(数据和方法)用public修饰,表示该类的成员不仅可以被其内部成员访问,而且可以被其它类直接访问,也就是说,外界可直接存取公有数据和公有方法.private——私有的用private修饰的类成员(数据和方法)只能被类自身访问或修改,任何其它类(包括该类的子类)都无权获取和引用.应该将不希望他人随意引用或修改的数据和方法设置为private,这将使得私有成员对其它用户不可见,只有通过声明为public的方法才可以对这些数据进行访问,从而达到信息隐藏和封装的目的.Protected——被保护的类成员(数据和方法)前加上关键字protected,说明这个成员是被保护成员,除了可以被类本身访问外,它还可以被该类的子类,与该类在同一个包中的其它类访问.包实际上是一组相关的类与接口的集合,有些类似于C语言中的函数库的概念.Java将一些功能相似或具有某种相关性的类放在同一个包中,便于管理和存取.每个包对应于磁盘中的一个目录缺省的如果类成员前.没有关键public,protected,private中的任何一个修饰符,那么我们就称它使用了缺省的修饰符.
这时,只有该类本身以及与该类在同一个包中的其它类才可以直接访问这些缺省成员.我们又将其称为具有包访问性.

18.

指出运算符==和方法equals()在判断题对象是否相等上的区别?

参考答案

equals()是判断题两个对象对应的取值是否相等 “==”是判断题两个对象是否是同一个对象.

19.

如何构造一个线程(两种方法)?

参考答案

构造线程体有两种方式1定义一个线程类,它继承Thread类,并重写其中的run()方法.直接生成这个类的对象就可以构造一个线程.2提供一个实现接口Runnable的类作为线程的目标对象.

20.

简述Java的异常处理机制?

参考答案

Java种对异常的处理包括异常的产生和捕获两个过程:异常的产生可以由系统产生,也可以由throw语句抛出;捕获异常可以通过try-catch-finally语句实现.

21.

简述Java程序的执行过程。

参考答案

1利用编辑器编写Java源程序.事实上,Java源程序和大家平时使用的文本文件一样,只不过采用的后缀名比较特殊(为.java).所以我们可以采用任何文本编辑工具(如Notepad)编写Java的源程序.当然,我们也可以采用专门的Java开发工具,而且一般专门的开发工具比文本编辑工具更专业和方便. 2利用编译器将源程序编译成类文件,利用前边我们介绍的javac命令,我们可以很容易的做到.但如果该过程中编译器指示任何语法错误,则我们需要根据错误提示重新修改源文件,再进行编译,直至产生正确的class文件.从开发的角度来说,我们的工作基本结束了,获得的class文件可以在本地或通过网络传给任何其它Java虚拟机执行.

22.

什么是串行化,如何进行串行化?

参考答案

对象通过写出描述自己状态的数值来记录自己,这个过程叫作对象的串行化(serialization).包java.io中的接口Serializable用来作为实现对象串行化的工具,只有实现了Serializable的类的对象才可以被串行化.Serializable接口中没有任何的方法.当一个类声明要实现Serializable,只是表明该类参加串行化协议,而不需要实现任何特殊的方法.

23.

final, finally, finalize的区别.

参考答案

final—如果一个类被声明为final,意味着它不能再派生出新的子类,不能作为父类被继承.将变量或方法声明为final,可以保证它们在使用中不可修改.被声明为final的方法也同样只能使用,不能重载. finally—在异常处理时提供 finally 块来执行任何清除操作.如果抛出一个异常,那么相匹配的 catch 子句就会执行,然后控制就会进入 finally 块(如果有的话). finalize—方法名.Java 技术允许使用 finalize() 方法在垃圾收集器将对象从内存中清除出去之前做必要的清理工作.这个方法是由垃圾收集器在确定这个对象没有被引用时对这个对象调用的.

24.

一个URL有哪几部分组成?

参考答案

一个URL包括两部分内容:协议名和资源名,中间用冒号隔开,协议名有:http,ftp等,资源名:应该是资源的完整地址,包括主机名、端口号、文件名或文件内部的一个引用,但是并非所有的URL 都包含这些内容.例如: http://www.cqu.edu.cn:8080/Gamelan/network.html#BOTTOM http是协议名,冒号后面的都是资源名.

25.

说明Java程序为什么具有可移植性?

参考答案

Java虚拟机(JVM)是在一台在物理计算机上由软件模拟实现的假想计算机,从结构上分析,它由一些抽象的部件组成:包括指令集,寄存器集、堆栈、存储区等.指令集采用与平台无关的字节码形式,寄存器集包括计数器、堆栈指针等,堆栈用于存放传递的参数和运行结果等,存储区则存放字节码.
对不同的硬件平台Java虚拟机提供了不同的编译代码规范,该规范可以屏蔽机器硬件的差异,使Java软件独立于操作平台.

1.

将下列程序改为功能相同但不用break的语句形式.

public class test {

public static void main(String[] args) {

int i,sum;

for(i=1,sum=0; ; i++,sum+=i) if(i>10)break;

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

}

}

参考答案

public class test {

public static void main(String[] args) {

int i, sum;

for (i = 1, sum = 0; i <=10; i++, sum += i) ;

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

}

}

2.

给定一个字符串数组String f[] = {"ab", "bc", "cd", "de", "ef"}; 编程实现从该数组中查找用户指定字符串位置的功能,用户指定的字符串由命令行参数输入。

参考答案

public class test 

public static void main(String[] args) 
{
int i, j = 0;
String s = args[0];
String f[] = { "ab", "bc", "cd", "de", "ef"};
for (i = 0; i < 4; i++) if (s.compareTo(f[i]) == 0) 

System.out.print("the position is" + i); 
j = 1;
}
if (j == 0) System.out.print("no such string"); 

}

3.

if 嵌套编写求解下述函数的程序,给定 x 输出 y
. x (0≤x<10) y= x2+1 (10≤x<20) x3+x+1 (20≤x<30 )

参考答案

public class p3_17
 {
 public static void main(String[]args) 
{
 double x=27;
 if(x<10)System.out.println("y="+x);
 else if(x<20) System.out.println("y="+(x*x+1)); 
else if(x<30) System.out.println("y="+(x*x*x+x+1));
 }
 }

4.

将一个正整数分解质因数。例如:输入 90,打印出 90=2*3*3*5 
 


 

参考答案

import java.util.Scanner; 
public class HomeWork20 { 
public static void main(String[] args) { 
System.out.println("请输入一个整数:"); 
Scanner sc=new Scanner(System.in); 
int num=sc.nextInt(); 
System.out.println(num+"的质因数有:"); 
for(int i=2;i<num;i++){ 
while(num%i==0){ 
num/=i; 
System.out.print(i+" "); 


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


 

















 

5.

编写一个程序,接受用户从键盘输入的10个整数,并输出这10个整数的最大值和最小值。

参考答案

6.

编程Java程序,实现文本文件c:\test.txt的读入并显示功能.

参考答案

import java.io.*; 
public class FileSeqAccess

public static void main(String args[])
{
 FileInputStream inObj; 
int Len; 
byte[] Buf = new byte[12]; 
try
{
 inObj = new FileInputStream("c:\\test.txt"); 
System.out.println("The content of test.txt:"); 
while((Len = inObj.read(Buf,0,12))!=-1) 

String copyStr=new String(Buf);
 System.out.println(copyStr); 

}
catch(FileNotFoundException e)

System.out.println(e);
 }
catch(IOException e)
{
 System.out.println(e);
 }
 } 
}

7.

编写一个java程序将字符串”Mary was a ”改为”Mary had a book.”

参考答案

import java.util.*; 
public class String_test
{
 public static void main(String args[])
{
 StringBuffer str1=new StringBuffer(“Mary was a”);
 StringBuffer str2=str1.replace(5,10,”had a book.”);
 System.out.println(str2); 
}
 }

8.

编写程序求所有指定浮点数的平均值,要求所有浮点数均通过命令行参数传入(如java test 11.1 22.2 33.3 44.4)。

参考答案

9.

设计一Applet,计算数组a[] = { 1, 3, 5, 7, 9, 10 }中各元素的和。

参考答案

import java.awt.Graphics;
import java.applet.Applet;
public class SumArray extends Applet 
{
int a[] = 

1, 3, 5, 7, 9, 10 };
int total; public void init() 

total = 0; 
for ( int i = 0; i<6 ; i++ ) total=total+a[i];

public void paint( Graphics g ) 
{
g.drawString( "Total of array elements: " +total, 25, 25 ); 
}
}















 

10.

编写程序使用类StringBufferreplace方法将字符串”Mary was a ”改为”Mary had a book.”

参考答案

import java.util.*;

public class String_test

{

public static void main(String args[])

{

StringBuffer str1=new StringBuffer(“Mary was a”);

StringBuffer str2=str1.replace(5,10,”had a book.”);

System.out.println(str2);

}

}


 

11.

编程求出个位数为6,且能被3整除的5位整数共有多少个?

参考答案




 

12.

编写一个程序,获取101~20的随机数,要求随机数不能重复。
 


 

参考答案

import java.util.HashSet; 
import java.util.Iterator; 
import java.util.Random; 
public class Test2 { 
public static void main(String[] args) { 
Random rd = new Random(); 
HashSet<Integer> hs = new HashSet(); 
while(hs.size() < 10){ 
int i = rd.nextInt(20)+1; 
hs.add(i); 

for (Integer it : hs) { 
System.out.println(it); 



 

















 

13.

编写程序删除指定文件,要求文件名通过main方法的参数传入.

参考答案

import java.io.*; 
public class Delete { public static void main(String[] args){
 if (args.length != 1) 
  {
   System.err.println("
使用方法: java Delete "); 
   System.exit(0); 
}
 try{ 
   delete(args[0]); 
 }catch (IllegalArgumentException e)
 {
    System.err.println(e.getMessage()); 
  } 

public static void delete(String filename) { 

  File f = new File(filename); 
  if (!f.exists()) fail("
删除:没有这样的文件或者目录: " +filename);
  if (!f.canWrite()) fail("删除:目标被写保护: " + filename); 
      boolean success = f.delete(); 

  if (!success) fail("删除:删除失败"); 
}
 protected static void fail(String msg) throws IllegalArgumentException {
   throw new IllegalArgumentException(msg); 
 } 
}

14.

编写一个应用程序,完成文件的拷贝功能,文件名从命令行得到.

参考答案

import java.io.*;
 class FileCopy 
{
public static void main(String[] args) 
{
FileInputStream in; 
FileOutputStream out;
 if (args.length<2) 
{
System.out.println("Usage: java copy srcfile destfile");
 System.exit(-1); 

try
 {
in = new FileInputStream(args[0]); 
out = new FileOutputStream(args[1]); 
copyFile(in,out); 

catch (Exception e)
 {
System.out.println(e); 


private static void copyFile(FileInputStream in, FileOutputStream out) 
{
 int length;
 byte buf[] = new byte[1024]; 
try
{
while ((length=in.read(buf,0,1024))!=-1) 
{
 out.write(buf, 0, length); 

}
 catch (Exception e)
{
System.out.println("Error:"+e)
; System.exit(-1); 

}
 }

15.

编程计算 1/1+1/2+1/3+...+1/100 的值

参考答案

public class Example
{
public static void main(String args[] )
{
int I=0;
float sum=0;
for(I=1;I<=100;I++) 
{
sum+=1.0/I;
}
System.out.println(sum);
}
}

16.

设计一个Applet,在该Applet中实现计算学生成绩的功能:如果成绩大于90,输出优,如果成绩大于70小于90,输出良,如果成绩大于60小于70,输出及格,否则输出不及格.

参考答案

import java.awt.*; 
import java.applet.*; 
public class c3_6 extends Applet
 { 
public void paint(Graphics g) 
{
 int k; 
int grade=86;
 k=grade/10; 
switch(k) 

case 10: case 9: g.drawString("
成绩:优",25,25); 
break; 
case 8: case 7: g.drawString("成绩:良",25,25);
 break;
 case 6: g.drawString("成绩:及格.",25,25); 
break; 
default: g.drawString("成绩:不及格.",25,25);
 } 
}
 }

17.

编程将键盘输入的数据拷贝当前路径下test.txt中,如果遇到quit就结束程序。

参考答案

public class Test2 {

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

Scanner sc = new Scanner(System.in);

FileOutputStream fos = new FileOutputStream("text.txt");

while(true) {

String line = sc.nextLine();

if("quit".equals(line)) {

break;

}else {

fos.write(line.getBytes()); //字符串转换字节

fos.write("\r\n".getBytes()); //换行

}

}

fos.close();

}

}

18.

编写程序利用String中的已有函数将字符串abcABC123中的大写转换为小写,小写转换为大写.

参考答案

19.

编写程序将任意三个变量a,b,c中的值进行交换,使得变量a的值最小,b其次,c的值最大.

参考答案

public class Example 

public static void main(String args[]) 
{
 int a=9,b=5,c=7,t;
 if(a>b)
 {
 t=a;
 a=b; 
b=t;
 }
 if(a>c) 
{
 t=a; 
a=c;
 c=t; 
}
 if(b>c)
 {
 t=b; 
b=c;
 c=t; 
}
 System.out.println("a="+a+",b="+b+",c="+c); 
}
 }

20.

通过键盘传入一个数,判断题该数是不是素数(不能被1和自身整除的数).

参考答案

import java.io.*;
 public class Prime 
{
 public static void main(String[] args) 
{
 String s = "";
 int n = 0; 
System.out.print("
请输入一个整数:"); 
try{ InputStreamReader isr = new InputStreamReader(System.in);
 BufferedReader br = new BufferedReader(isr); 
s = br.readLine();
 n = Integer.parseInt(s); 
}
catch(IOException e)
 { 
}
 if( isPrime(n) ) System.out.println(n + "是素数."); 
else System.out.println(n + "不是素数."); 
}
 static boolean isPrime(int a)
 {
 if(a == 1) return false;
 if(a == 2) return true;
 for(int i = 2; i <= a/2; i++) if( a % i == 0 ) return false; 
return true;
 }
 }

BY:Vip_Hc 无偿分享 E-mail:xysds@protonmail.com

分享保留出处.禁止用于任何盈利行为,崇拜大神吧。啊哈哈哈哈哈哈哈哈哈哈哈。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

赵谨言

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值