admin 管理员组

文章数量: 887174


2024年2月18日发(作者:ascii码有几种)

.

判断题

1. Java语言中的数组元素下标总是从0开始,下标可以是整数或整型表达式。 (√ )

2. 在Java中对象可以赋值,只要使用赋值号(等号)即可,相当于生成了一个各属性与赋值对象相同的新对象。 (

× )

3. 所谓抽象类就是包含有抽象方法的类。 (

×)

4. Java系统的标准输入对象是,标准输出对象有两个,分别是标准输出和标准错误输出。 (√)

5. 如果p是父类Parent的对象,而c是子类Child的对象,则语句c = p是正确的。 (

×)

6. 当一个方法在运行过程中产生一个异常,则这个方法会终止,但是整个程序不一定终止运行。 (√ )

7. 用“+”可以实现字符串的拼接,用- 可以从一个字符串中去除一个字符子串。

× )

8. 一个容器中可以混合使用多种布局策略。 (×)

9. Java中,并非每个事件类都只对应一个事件。 (√ )

10. Java的源代码中定义几个类,编译结果就生成几个以.class为后缀的字节码文件。 (√)

11. Java Applet是由独立的解释器程序来运行的。 (×)

12. Java的字符类型采用的是ASCII编码。 (

× )

13. Java的各种数据类型占用固定长度,与具体的软硬件平台环境无关。 (√)

14. System类不能实例化,即不能创建System类的对象。 (×)

15. 用户自定义的图形界面元素也可以响应用户的动作,具有交互功能。 (√ )

填空题

1 java 源程序编译命令是 javac

2 java 应用程序中有一个main()方法,它前面有三个修饰符是 public ,

static , void

3 java语言数据类型可分为两大类,一类称为 基本数据类型 ,另一类称为 引用数据类型

4 在转向语句中, continue 语句使得程序结束本次循环,回到循环的条件测试部分继续执行。

5设x为float型变量, y为 double型变量, a为 int型变量,已知 x=2.5f,

a=7 ,y=4.22 则表达式x+a%3*(int)x%(int)y的值为 4.5

6设x为float型变量, y为 double型变量, a为 int型变量,b 为long 型变量,c为char 型,则表达式x+y*a/x+b/y+c 的值为 double 类型

7设有数组定义:int MyIntArray[ ] = { 10 , 20 , 30 , 40 , 50 , 60 , 70};

则执行以下几个语句后的输出结果是 120 。

int s = 0 ;

.

.

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

if ( i % 2 = = 1 ) s += MyIntArray[i] ;

n( s )

选择题

1.在浏览器中执行applet 程序,以下选项中的哪个方法将被最后执行(

C )。

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

2. Java application中的主类需包含main方法,main方法的返回类型是什么?( D )

A、int B、float C、double D、void

3.设有下面两个类的定义:

class Person { class Student extends Person

{ {

long id; // 身份证号 int score; // 入学总分

String name; // 姓名 int getScore(){

} return score; }

}

则类Person和类Student的关系是( B

)。

A、包含关系 B、继承关系 C、关联关系 D、上述类定义有语法错误

4.在编写Java Applet程序时,需要在程序的开头写上(

B )语句。

A、import .* ; B、import .* ;

C、import .* ; D、import .* ;

5.容器Panel和Applet缺省使用的布局编辑策略是( A )

A、FlowLayout B、BorderLayout C、GridLayout D、CardLayout

6.有以下程序片段,下列哪个选项不能插入到行1。(

A

1.

class A{

3.//do sth

4. }

A、public class MainClass{ } B、package mine;

C、class ANotherClass{ }

D、import .*;

7.在使用interface声明一个接口时,只可以使用( D )修饰符修饰该接口。

A、private B、protected C、private protected D、public

8.以下哪个不是Java的关键字?( A )

A、FALSE B、const C、this D、void

9.有程序如下,关于程序的描述哪个是正确的?(

C )

public class Person{

static int arr[] = new int[5];

public static void main(String a[])

{ n(arr[0]); }

}

.

.

A、编译将产生错误

C、正确,输出0

B、编译时正确,但运行时将产生错误D、正确,输出 null

10.以下关于构造函数的描述错误的是(

A

)。

A、构造函数的返回类型只能是void型。

B、构造函数是类的一种特殊函数,它的方法名必须与类名相同。

C、构造函数的主要作用是完成对类的对象的初始化工作。

D、一般在创建新对象时,系统会自动调用构造函数。

11.假设A类有如下定义,设a是A类的一个实例,下列语句调用哪个是错误的?( C)

class A

{ int i;

static String s;

void method1() { }

static void method2() { }

}

A、n(a.i);B、1(); C、1(); D、2()

12.有程序片段如下,以下哪个表示式的结果为true?( B

Float s=new Float(0.1f);

Float t=new Float(0.1f);

Double u=new Double(0.1);

A、s==t B、(t) C、(s) D、(u)

13.paint()方法使用哪种类型的参数? ( A )

A、Graphics B、Graphics2D

C、String D、Color

14.下面哪个方法与applet的显示无关?(

A )

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

15.下面哪个函数是public void aMethod(){...}的重载函数?( D )

A、void aMethod( ){...}

B、public int aMethod(){...}

C、public void aMethod ( ){...}

D、public int aMethod ( int m){...}

16 下列不可作为java语言标识符的是 ( D )

A a1 B $1 C _1 D 11

17 有一段java 应用程序 ,它的主类名是a1,那么保存它的源文件名可以是(A)

A B C a1 D都对

18 下面说法正确的是 (C)

.

.

A java Applet 程序必须在浏览器中执行

B java 应用程序必须在浏览器里执行

C java Applet 程序不一定在浏览器中执行

D java 应用程序可以在浏览器中执行

19 在浏览器中执行applet 程序的四个方法的最先执行的是 (A)

A init() B start() C destroy() D stop()

20 整型数据类型中,需要内存空间最少的是 (D)

A short B long C int D byte

21 java 类可以作为 (C)

A 类型定义机制

B 数据封装机制

C 类型定义机制和数据封装机制

D 上述都不对

22 在创建对象时,必须 (C )

A 先声明对象,然后才能使用对象

B 先声明对象,为对象分配内存空间,然后才能使用对象

C 先声明对象,为对象分配内存空间,对对象初始化,然后才能使用对象

D 上述说法都对

23 在调用方法时,若要使方法改变实参的值,可以 (D)

A 用基本数据类型作为参数

B 用对象作为参数

C (A)和(B)都对

D (A)和(B)都不对

24 JAVA 中 ( C )

A 一个子类可以有多个父类,一个父类也可以有多个子类

B 一个子类可以有多个父类,但一个父类只可以有一个子类

C 一个子类可以有一个父类,但一个父类可以有多个子类

.

.

D 上述说法都不对

25 paint()方法使用哪种类型的参数? (

A )

A、Graphics B、Graphics2D C、String D、Color

26在Java中,一个类可同时定义许多同名的方法,这些方法的形式参数个数、类型或顺序各不相同,传回的值也可以不相同。这种特性称为 ( C )

A、隐藏 B、覆盖 C、重载 D、Java不支持此特性

27类Test1、Test2定义如下:

1. public class Test1

2.{ public float aMethod(float a,float b) throws

3. IOException { }

4. }

5. public class Test2 extends Test1{

6.

7.}

将以下哪种方法插入行4是不合法的。 (

A )

A、 float aMethod(float a,float b){ }

B、 public int aMethod(int a,int b)throws Exception{ }

C、 public float aMethod(float p,float q){ }

D、 public int aMethod(int a,int b)throws IOException{ }

28以下哪个接口的定义是正确的? (D )

A、 interface B

{ void print() { } ;}

B、 abstract interface B

{ void print() ;}

C、 abstract interface B extends A1,A2 //A1、A2为已定义的接口

{ abstract void print(){ };}

D、 interface B

{ void print();}

29 下列哪些语句关于Java内存回收的说明是正确的? ( B )

A、程序员必须创建一个线程来释放内存

B、内存回收程序负责释放无用内存

C、内存回收程序允许程序员直接释放内存

D、内存回收程序可以在指定的时间释放内存对象

30 A派生出子类B ,B派生出子类C,并且在Java源代码中有如下声明:

1. A a0=new A();

2. A a1 =new B();

3. A a2=new C();

.

.

问以下哪个说法是正确的? (

D)

A、只有第1行能通过编译

B、第1、2行能通过编译,但第3行编译出错

C、第1、2、3行能通过编译,但第2、3行运行时出错

D、第1行、第2行和第3行的声明都是正确的

三、程序阅读

1.写出以下程序的运行结果。

import .*;

public class Vec{

public static void main(String[] args) {

String[] s;

s=new String[2];

s[0]=new String("no1");

s[1]=new String("no2");

Vector v = new Vector();

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

ment(s[i]);

ElementAt(new String("no3"),2);

Enumeration e = ts();

while(eElements())

(ement()+" ");

n();

Element("no2" );

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

(tAt(i) +" ");

n(); }

}

程序运行的结果:

no1 no2 no3

no1 no3

2.写出以下程序的运行结果。

class StaticStuff

{

static int x;

static { n("x=" + x); x+=5; }

public static void main(String args[ ]){

n("x=" + x);

}

.

.

static { n("x=" + x);x%=3; }

}

程序运行的结果:

x=0

x=5

x=2

3.写出以下程序的运行结果。

class First {

First() {

n ("in First"); }

}

public class Second extends First {

Second() {

n("in Second"); }

public static void main(String[] args) {

Second mine= new Second(); }

}

程序运行的结果:

in First

in Second

4.解释程序中语句的含义

纯文本文件中的内容是 abcd

下面的程序将文件中的内容写到文件中和屏幕上

import .*;

public class filecopy

{

public static void main(String[] args)

{

try

{

StringBuffer str=new StringBuffer();

FileInputStream fin=new FileInputStream("");

意义

FileOutputStream fout=new FileOutputStream("");

意义

int c;

while((c=())!=-1)

{

.

.

(c); 意义

((char)c); 意义

}

();

();

String str2=ng();

n(str2); 显示的结果是

}catch(Exception c)

{

n(c);

}

}

}

实例化输入流对象,指定输入流来源文件为

实例化输出流对象,指定输出流目标文件为

将C写入到输出流对象中

将整数C转化为字符,并添加到字符串str的尾部

abcd

编程题

1、 编写一个Java Application 程序,main程序输入10个整数给数组,通过函数getMinAndMax(int a[])得到这10个整数的最大值和最小值并输出结果。

class App

{

static void getMinAndMax(int a[])

{

int min,max;

min = max = a[0];

for(int i=1;i<;i++)

{

if(a[i]>max)

max=a[i];

if(a[i]

min=a[i];

}

n(“Array’Max Value:”+max);

n(“Array’Min Value:”+min);

}

.

.

public static void main(String[] args)

{

int arr[] = {4,6,72,9,14,3,8,23,56,32};

getMinAndMax(arr);

}

}

2、编写一个完整的Java Application 程序。包含接口ShapeArea, Rectangle类,Triangle类及Test类,具体要求如下:

⑴接口ShapeArea:

double getArea():求一个形状的面积

double getPerimeter ():求一个形状的周长

⑵类 Rectangle:实现ShapeArea接口,并有以下属性和方法:

① 属性

width: double类型,表示矩形的长

height: double类型,表示矩形的高

② 方法

Rectangle(double w, double h):构造函数

toString()方法 :输出矩形的描述信息,如“width=1.0,height=2.0, perimeter=6.0, area=2.0”

⑶类Triangle:实现ShapeArea接口,并有以下属性和方法:

① 属性

x,y,z: double型,表示三角形的三条边

s: 周长的1/2(注:求三角形面积公式为s(sx)(sy)(sz),s=(x+y+z)/2 ,开方可用(double)方法)

② 方法

Triangle(double x, double y, double z):构造函数,给三条边和s赋初值。

toString():输出矩形的描述信息,如“three sides:3.0,4.0,5.0,perimeter=12.0,area=6.0”

⑷Test类作为主类要完成测试功能

① 生成Rectangle对象

② 调用对象的toString方法,输出对象的描述信息

interface ShapeArea

{

double getArea();

double getPerimeter();

}

class Rectangle implements ShapeArea

{

double width,height;

.

.

Rectangle(double w,double h)

{ko

width =w;

height=h;

}

public void toString()

{

n("width="+width+",height="+height+",

perimeter="+ getPerimeter()+", area="+ getArea());

}

public double getArea()

{

return width*height;

}

public double getPerimeter()

{

return 2*(width+height);

}

}

class Triangle implements ShapeArea

{

double x,y,z,s;

Triangle(double x, double y, double z)

{

this.x =x;

this.y=y;

this.z=z;

s = (x+y+z)/2;

}

public void toString()

{

n("Three Sides:"+x+","+y+","+z+",Perimeter="+

getPerimeter()+", area="+ getArea());

}

public double getArea()

{

return (s*(s-x)*(s-y)*(s-z));

.

.

}

public double getPerimeter()

{

return x+y+z;

}

}

class test

{

public static void main(String[] args)

{

Rectangle rct = new Rectangle(4,5);

_String();

}

}

.


本文标签: 对象 程序 方法 输出