文档库 最新最全的文档下载
当前位置:文档库 › java期末复习试题

java期末复习试题

java期末复习试题
java期末复习试题

学号: _______________ 姓名: ____________ 班级: ________________ 期: ____________________

(说明:本次测试除题型相近外,也是期末考试内容的补充,请认真完成上传FTP 和复习备考!)

一、填空题

1、 java 源程序文件的扩展名是 _|java_| ______ ,编译源程序的命令是 _javac __________ 。

2、 Java 程序可分为 __ applet_ ________ 和__applications

两种类型。

3、 声明静态成员的关键字是 _________________________ _static_ 定义一个接口的关键字是

___in terface _______ 。

4、 创建 pack1.pack2 包的语句是 ___________ package pack1 \package pack2_,import x.y.Myclass; 语句的功能是 _____ 引用 X 包中的 Y 包的 MyClass 类 ____________________________________ 。

5、 _Object_ ___ 类是所有Java 类的直接或者间接父类。

6、 转义字符_\t ___ 能够实现“将输出内容跳到下一个制表位”的功能。

7、 假设在程序中已执行: C alendar current=new GregorianCalendar(); 语句,则 current.get(Calendar.YEAR)

返回的是__当前时间的年份 ____________________ 。

二、单项选择题 1、以下哪个是应用程序

main()方法的正确形式?【

A. public static int main( Stri ng args[])

B. public static void main( Stri ng args[])

int X=0;

if (X>0) X=1; switch(x) {

case 1: System.out.pri ntln( 1); case 0: System.out.pri ntln( 0);

case 2: System.out.pri ntln( 2); break;

case 3: System.out.pri ntln( 3); default: System.out.pri ntl n(4);

C. public static void MAIN(Stri ng args[])

D. public static void main( char args[])

请在Java 预定义了的数据类型中,为“姓名”选择一种合适的数据类型: 【 】

2、 B . String C. boolean D. float

3、

4、 short 型数据的取值范围为【

】 7 7 16 16

A. -2 ~ 2 -1

B. -2 ~ 2 -1

下列标识符中,哪一个是合法的?【 15 15 」

C. -2 ~ 2 -1 31

31 .

D. -2

~ 2 -1

5、 6、

C. *poi nt 已知x=10,则条件表达式 (x>=5) && (x <=2) A. 0

B. 1

C. true

下列程序片段的输出结果是【 】

B. 2ab

D. this 的值是

D. false

break;

A. 0

B. 4

C. 2

D. 1 2

3

3

0 D. Myclass(i nt myClassObject ){

…}

现欲将str 转换为对应的双精度浮点数,正确的语句为【 A. In teger.parse In t(str) ; B. Double.valueOf(str); C. Float.parseFloat(str); D. Double.parseDouble(str); 11、基类中具有【 】访问权限的成员,不允许在子类中直接对其进行访问或调用

A. public

B. private

C. protected

D.缺省的(即 package) 12、 对于字符串 s="java" ,「 下面哪个选项可以返回字符 'v'在字符串中的位置?【 】

A . s.charAt('v'); B. s.i ndexOf('v');

C. i ndexOf('v');

D. i ndexOf(s,'v'); 13、 以下哪一项是创建抽象类 X 的引用的正确方式? 【 C 】

A. X x; x=new X();

B. X x=new X();

C. X x;

D.以上均不正确

14、 接口 X 声明了两个空方法 m1()和m2(),当实现接口 X 时,以下哪个语法是正确的?【

A. class Y exte nds X{

B. class Y exte nds X{

public void m1(){...}

public void m2(){...} } C. class Y impleme nts X{

public void m1(){...} }

D. class Y impleme nts X{

public void m1(){...}

public void m1(){...}

public void m2(){...} }

}

三、根据题目要求,把下面的程序补充完整

-x (x £ -5)

y =」sin( x) (一5 兰 x <5) ...〔2x-3 (x^5)

Double x,y ____ ;

String s=JOptionPane.showInputDialog (” x = Double.parseDouble(s); if (x < -5){

y = -x;

7、 在Java 中定义常量的正确语句是【

A. in t value=20;

C. final int VALUE=20;

8、 设有如下的程序代码,在执行完后 c 】

B. const int VALUE=20;

D. i nt VALUE=20;

x 和y 的值各是多少?【

z=x++ + --y;

A. x=8, y=3

B. x=10, y=2

C.x=9,y=1

D. x=9, y=2 9、对于名为 Myclass 的类,以下哪种方式是定义无参数构造方法的正确形式?【 A. int Myclass( ){ …} B. void Myclass( ){ …} C. Myclass( ){ …}

10、已有:Stri ng str="12.345"; 1、以下程序片段的功能是计算分段函数的值:输入

x ,求相应的y 值

//将变量x 和y 声明为double 类型 请输入x 的值:");

} else if ( x<5 ____ ){

y = Math.si n( x); } else {

y = 2*x-3 ; }

JOptionPane.showMessageDialog(null, "x= " + x + '\n'+ "

函数值为:"+ y);

2、以下程序片段实现的功能是对一维数组的元素求和:

int _________ ={85,68,12,33,91};

// 声明一个名为 array 的 int 型一维数组

int sum=0 ; II 声明一个 int 型变量 sum,初始值为 0 for (int i=0;

i

,并存放到sum 中

sum= sum+array[i] ;

System.out.println(" 累加结果:"+sum);

四、写出下列程序的运行结果 1、

II 字符串的比较

public class Strin gpare {

public static void main(String args[]) {

String s1="abc";

String s2=new String("abc"); System.out.pri ntln( s1==s2);

System.out.pri ntln( s1.equals(s2)); System.out.pri ntl n( s1.pareTo(s2)); }

}

程序运行结果:__false true 0 2、

II 实现多态的程序

public class Ani malTest {

public static void main(String args[]){

class An imal {

public void

display(){ System.o ut.pri ntln (” }

}

class Cat exte nds Ani mal

{ public void display(){

System.out.pri ntln (” } }

class Dog exte nds An imal

{ public void display(){

我是一只可爱的动物 我是能捉老鼠的好猫 我是主人忠诚的卫士 ,...");

,...");

,...");

Animal am=new Animal();

am.display();

am=new Dog();

am.display();

am=new Cat();

am.display();

}

}

程序运行结果:_ 我是一只可爱的动物

我是主人忠诚的卫士我是主人忠诚的卫

五、编程题

1.类的继承

(1) 定义一个矩形类Rect ,它封装了:

两个成员变量( 访问权限为length width private) :

// 表示矩形的长度,double 类型// 表示矩形的宽度,double 类型

七个成员方法( 访问权限为Rect(double l, double w) void setLength(double l) double getLength ( ) void setWidth(double w) double getWidth ( ) double getArea( ) String toString( ) public) :

// 带参数的构造方法

// 设置矩形的长度

// 返回矩形的长度

// 设置矩形的宽度

// 返回矩形的宽度

// 返回矩形的面积

// 返回形如:

“矩形的长度:xxx ,宽度:xxx ,面积:

字符串( 其中:xxx 表示相应的数值)

xxx

⑵再定义一个立方体类Cube,它继承了矩形类Rect(上一题已定义),并增加了:

一个成员变量( 访问权限为private) :

height // 立方体的高度, double 类型

三个成员方法(访问权限为public) :

Cube(double l, double w, double h)// 带参数的构造方法,需要调用基类带参数构造函数;

double getVolume( ) String toString()

//返回立方体的体积(计算公式:底面积x高度) // 重写toString() 方法,返回形如:

"立方体的长度:xxx,宽度:xxx,高度:xxx,体积:xxx 字符串( 其中:xxx 表示相应的数值)

⑶最后定义一个主类:CubeTest,在它的ma in ()方法中创建一个长度为 4.5,宽度为5.5,高度为6.5的立方

体对象cb,然后调用toString() 方法输出其相应信息。

(4) 、类似地,如果把矩形改成圆形,当作基类,在子类中增加一个成员变量高度,使其成为圆柱体的情况下将如何修改基类、子类和主程序?请课后思考之, 请组织程序记住步骤和方法。

2. 用FileInputStream (文件输入流) 读文件

(1) 步骤

①引入相关的类

import java.i o.l OExceptio n; import java.i o.ln putStream;

import java.io.Filel nputStream;

②创建一个文件输入流对象

In putStream f = new File In putStream( 文件名);// 对象f 关联源数据源

③ f.read( ); //读取文件一个字节,并返回0-255 —个int数,若文件读取完毕或再无可读数据,

返回-1

④ f.available( ); //可读取字节数

⑤ f.close( ); //关闭文件输入流

(2)完成下面用FileInputStream 读文件示例

import java.io.*;

public class testFile{

public static void main( Stri ng[] args){

File fname=new File(" __ myfile.txt _______________ ");

try{

In putStream f=new FileInputStream( __ f name _______________ );

int size=f.__available_ () _____________ ;

for(i nt i=0;i

System. out .print( (char) f. __ read() _______________ );// 强制类型

f. ______________ close() __________ ;

}

catch(IOExcepti on e){

System. out .println(”文件读取失败");

}

}

}

3. 事件处理编程步骤:

①创建运行窗体和独立组件对象;

②确定事件源、事件;

③为事件源注册对应事件侦听器对象;

④实现事件侦听器接口方法;

⑤运行主程序引发相应事件,观察事件处理结果。

(1)利用监听器接口中的方法处理事件

实例10-2功能:在文本框中输入“123张小明”,当点击“确认”按钮时,下面的标签中将显示:“您输入了: 123张小明”字样。

// 实例10-2

import java.awt.*;

import java.awt.eve nt.Act ion Eve nt;

import java.awt.eve nt.Act ion Liste ner;

class Butt onF rame exte nds Frame impleme nts Acti on Liste ner (1){

(2)修改上面程序,拓展成为通过鼠标事件和键盘事件实现一个简单用户登录画面程序.操作过程:当输入用户或密码不正确时光标留在对应文本框处,弹出请输入正确用户或密码提示对话框:当输入用户和密码正确时弹出

欢迎对话框.请组织程序记住步骤和方法.

4. 采用JDBC-ODB(桥式的数据库连接的主要步骤:

①创建数据源(使用JDBC-ODB(桥式驱动程序时必需);

②注册、加载特定的驱动程序;

③创建连接--Connection 对象;

④利用Connection 对象生成Statement对象;

⑤利用Statement对象执行SQL语句,如查询、更新、插入、删除等;

⑥若是执行查询语句,还要从ResultSet读取数据;

⑦关闭ResultSet、Statement、Connection 等。

(1) JDBC_ODBC桥方式查询数据库实例

import ___ ava.sql.* _________ ; // 导入java.sql 包中的所有类

public class QueryTest {

public static void main(String[] args) {

String url = " _____ dbc:odbc:mysql _____________ ";// 根据数据源,设置数据库URL

Stri ng userName = "";// 登录数据库用户名

Stri ng password = "";// 用户密码

__connection _______ conn = null;〃声明Connection 对象

__statement _______ stmt = null;// 声明Statement 对象

try {

//加载JDBC-ODBC区动程序

Class.__forName ______ ("sun.jdbc.odbc.__JdbcOdbcDriver __________ ");

// 创建连接

conn = DriverManager.___getconnection _____________ (url, userName, password);

// 通过Connection 对象, 创建Statement 对象

stmt = conn. ___ createStatement ____________ ();

//执行查询”年龄为20岁的学生信息"的SQL语句,得到结果集

_Resultset ___ rs = stmt._executeQuery ____ ("select * from students where age=20 ________ ");

// 通过循环输出相关学生信息

System.out.println(" 学号" + "\t\t 姓名" + "\t 性别" + "\t 年龄" + "\t 专业" + "\t\t\t 宿舍");

while (rs.__next ___ ()) {

String id = rs.getString(" 学号");

String name = rs. ___ getstring ____ (" 姓名");

String sex = rs.getString(" 性别");

int age = rs.__getint_____ (" 年龄");

String major = rs.getString(" 专业");

String dormitory = rs.getString(" 宿舍");

System.out.println(id + "\t" + name + "\t" + sex + "\t" + age

+ "\t" + major + "\t" + dormitory);

}

rs.___close _______ (); // 关闭结果集

stmt.close();

conn.close();

} catch (SQLException e) {

e.printStackTrace();

} catch (ClassNotFoundException ex) {

ex.printStackTrace();

}

}

}

(2) 思考题: 数据库查询、插入、更新、删除操作包含哪些步骤?程序是怎样组织的?

5. TCP 编程的主要步骤:

①服务器、客户端分别创建ServerSocket、Socket对象;

②服务器、客户端分别打开连接到socket的输入/输出流;

③按照一定的协议对socket 进行读/写操作;

④关闭socket 。

(1) 编写一个最简单的C/S 程序,请组织程序记住步骤和方法.

(2) 说明如下:

①服务器程序能够处理多个客户的请求,并向客户端发送一个“你好”字符串;

②客户端与服务器连接后,读取一行服务器的信息,在屏幕上输出信息;

③若客户端和服务器是同一台计算机,则可使用127.0.0.1 代表本机IP 地址。若不是,则将IP 改为服务器实际配置的IP 地址。

④本程序中使用端口号为2345(大于1024) 。

(3) 答:

1) 服务器端代码主要片段

Java基础测试题(答案)

1. 有以下程序片段,下列哪个选项不能插入到行1。( D ) 1. 2.public class Interesting{ 3.//do sth 4. } (只能有一个public修饰的class) A、import java.awt.*; B、package mypackage; C、class OtherClass{ } D、public class MyClass{ } 2. 以下哪项是接口的正确定义?( B 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();} 1.接口可以声明为public(公共)或默认的访问权限。接口隐含表明是抽象的(abstract)的。 2.接口的方法默认即为public(公共)且是abstract(抽象)的. 3.接口中的变量默认即为public(公共), static(静态) and final(最终的)。 接口声明编译器如何解释呢 public interface Searchable {}public abstract interface Searchable {} abstract interface Searchable {}abstract interface Searchable {} interface Searchable {}abstract interface Searchable {}

java基础测试题及答案

一、选择题(每题2分,共40分) 1、下面哪个是Java语言中正确的标识符( C ) A、3com B、import C、that D、this 2、下面哪个语句(初始化数组)是不正确的:(B) A.int x[] = {1,2,3}; B.int x[3] = {1,2,3}; C.int[] x = {1,2,3}; D.int x[] = new int[]{1,2,3}; 3、下述概念中不属于面向对象方法的是( D )。 A.对象、消息 B.继承、多态 C.类、封装 D.过程调用 4、下面的代码段中,执行之后i 和j 的值是什么? ( B ) int i = 1; int j; j = i++*2+3*--i; A.1, 2 B.1, 5 C.2, 1 D.2, 2 5、下面哪条语句把方法声明为抽象的公共方法?(B ) A.public abstract method(); B.public abstract void method(); C.public abstract void method(){} D.public void method() extends abstract; 6、下面关于java中类的说法哪个是不正确的?( C ) A.类体中只能有变量定义和成员方法的定义,不能有其他语句。 B.构造函数是类中的特殊方法。 C.类一定要声明为public的,才可以执行。 D.一个java文件中可以有多个class定义。 7、假设A类有如下定义,设a是A类的一个实例,下列语句调用哪个是错误的?( C ) class A { int i; static String s; void method1() { } static void method2() { } } A、System.out.println(a.i); B、a.method1(); C、A.method1(); D、A.method2() 8、容器被重新设置大小后,哪种布局管理器的容器中的组件大小不随容器大小 的变化而改变? ( B ) A、CardLayout B、FlowLayout C、BorderLayout D、GridLayout 9、下列哪个用户图形界面组件在软件安装程序中是常见的? ( C ) A.滑块 B.进度条 C.按钮 D.标签

java基础测试题

一、选择题48分每题2分 1.面向对象的三大特性不包括() A 封装 B 继承 C 多态 D 消息通信 2.下列声明哪个是错误的() A int i = 10; B float f = 1.1; C double d = 34.4; D long m = 4990; 3.程序的执行结果是() public class Test { public static void main(String [] args){ System.out.println(“”+'a'+1); } } A 98 B a 1 C 971 D 197 4.程序的执行结果是() public class Test { int x; public static void main(String [] args){ Test t = new Test(); t.x=5; change(t); System.out.println(t.x); } public static void change(Test t){ t.x=3; } } A 5 B 3 C 编译出错 D 以上答案都不对 5.关于类与对象说法错误的是() A 类是模板,对象是产品 B 人是类,男人是对象 C 类是对某一事物的描述是抽象的,对象是实际存在的该类事物的个体 D 汽车设计图是类,制造的若干汽车是对象 6.关于构造函数说法错误的是() A 构造函数名与类相同 B 构造函数无返回值,可以使用void 修饰 C 构造函数在创建对象时被调用 D 在一个类中如果没有明确的给出构造函数,编译器会自动提供一个构造函数7.程序的执行结果是() public class Test { public static void main(String [] args){ String str1= new String("abc"); String str2 = new String("abc"); String str3=str1; if(str1.equals(str2)){ System.out.println("true"); }else{ System.out.println("false"); } if(str1==str3){

JAVA测试题(三套含答案)

1.在单一文件中import、class和package的正确出现顺序是:A A.package, import, class B.class, import, package C.import, package, class D.package, class, import 2.public static void main方法的参数描述是:A,D A.String args[] B.Strings args[] C.String args D.String []args 3.下面哪行代码会在编译的时候出现错误或警告:A,B,C,D A.float f=; B.char c="a"; C.byte b=257; D.boolean b=null; E.int i=10; 4. 编译,运行下列代码后的结果是:D public class Test { public static void main (String args []) { int age; age = age + 1; "The age is " + age); } } A.编译,运行后没有输出 B.编译,运行后输出:The age is 1 C.能通过编译,但运行时产生错误 D.不能通过编译 4.下面那些关键字不是JAVA的关键字B A if B then C goto D while E case 5.下面那些不是合法的变量定义:A,F C. _whatavariable D. _3_

6.内部数据类型byte的取值范围是B - 65, 535 B.(–128) – 127 C.(–32,768) – 32,767 D.(–256) – 255 7.下列哪些表达式返回true AB A."john" == "john" B."john".equals("john") C."john" = "john" D."john".equals(new Button("john")) 8.声明公用的abstract方法的正确格式是A A.public abstract void add(); B.public abstract void add() {} C.public abstract add(); D.public virtual add(); 9.下面的代码能打印出的结果为:C int i=1; switch (i) { case 0: "zero"); break; case 1: "one"); case 2: "two"); default: "default"); } B.one, default C.one, two, default D.default 10.下面的代码能打印出的结果为:B int i=9; switch (i) { default: "default"); case 0:

java基础笔试测试题与答案

Java 一章至五章考试 一. 填空题(8 分) 1. 面向对象的三大原则是( 封装),( 继承) 和( 多态).2 分 2. 如果想在对象实例化的同时就初始化成员属性,则使用( 构造函数).2 分 3. ( 实体) 方法和( 构造) 方法不能修饰为abstract ?2分 二.选择题(60 分) 1) 在Java 语言中,下列(a,d )是不满足命名规范的变量名。(选择二项) a) 姓名 b) $Name c) _instanceof d) instanceof 2) 下列Java 代码片段的输出结果是( a ) 。 char c='a'; int i=c; float f=i; byte b=(byte)c; System.out.println(c+","+i+","+f+","+b); a) 编译错误 b) a,97,97,97 c) a,97,97.0,97 d) a,97,97.0f,97 3) 下列Java 代码中,空白处的代码是(b,c )。( 选择两项) public interface Fee{ public float calLabFee(float unitPrice, float time); } public class FeeImpl implements Fee { public float calLabFee(float unitPrice, float time){ return unitPrice * time; } } public class FeeInterfaceTest { public static void main(String[] args){ ________________ Float labFee = fee.calLabFee(400.00,5); } }

java基础考试题及答案

新员工考试 一、选择题(共30题,每题 2 分) 1. 下面哪些是合法的标识符?(多选题) A. $persons B. TwoUsers C. *point D. this E. _endline 答案A,B,E 分析Java 的标识符可以以一个Unicode 字符,下滑线(_),美元符($)开始,后续字符可以是前面的符号和数字,没有长度限制,大小写敏感,不能是保留字(this 保留字)。 2. 哪些是将一个十六进制值赋值给一个long 型变量?(单选题) A. long number = 345L; B. long number = 0345; C. long number = 0345L; D. long number = 0x345L 答案D 分析十六进制数以Ox开头,Io ng型数以L (大小写均可,一般使用大写,因为小写的 l 和数字1 不易区分)。 3. 下面的哪些程序片断可能导致错误? (多选题) A. String s = "Gone with the wind"; String t = " good "; String k = s + t; B. String s = "Gone with the wind"; String t; t = s[3] + "one"; C. String s = "Gone with the wind"; String standard = s.toUpperCase(); D. String s = "home directory"; String t = s - "directory"; 答案B,D 分析 A:String 类型可以直接使用+进行连接运算。 B:String 是一种Object ,而不是简单的字符数组,不能使用下标运算符取其值的某个元 素,错误。 C:toUpperCase()方法是String 对象的一个方法,作用是将字符串的内容全部转换为大写并返回转换后的结果(String 类型)。 D:String 类型不能进行减(- )运算,错误。 4. point x 处的哪些声明是句法上合法的? (多选题) cIass Person { private int a; pubIic int change(int m){ return m; } } pubIic cIass Teacher extends Person { public int b;

最新Java基础试题及其答案

Java试题 一单项选择 1)在Java中,在包com.db下定义一个类,要让包com.util下的所有类都可以访问这个类,这个类必须定义为()。() a)protected b)private c)public d)friendly 2)在Java中,下列()语句不能通过编译。(选择一项) a) String s= “join”+ “was”+ “here”; b) String s= “join”+3; c) int a= 3+5 d) float f=5+5.5; 3)给定java代码如下,运行时,会产生()类型的异常。(选择一项) String s=null; s.concat(“abc”); a)ArithmeticException b)NullPointerException c)IOException d)EOFException 4) 在java中,()对象可以使用键/值的形式保存数据。(选择一项) a)ArrayList b) HashSet c) HashMap d) LinkedList 5)给定如下java代码,编译运行之后,将会输出()。 public class Test{ public staticvoid main(String args[]){ int a=5; System.out.println(a%2==1) ?(a+1) /2:a/2) ; } } (选择一项) a)1 b)2 c)2.5 d)3 6)以下Java语句中,String str = “123456789”;str =str.subString(1,3);执行后str中的值为。(选择一项) a) “23” b)“123”

Java笔试题及答案

Java笔试题及答案 一、单项选择题 1.Java是从()语言改进重新设计。 A.Ada B.C++ C.Pasacal D.BASIC 答案:B 2.下列语句哪一个正确() A. Java程序经编译后会产生machine code B. Java程序经编译后会产生byte code C. Java程序经编译后会产生DLL D.以上都不正确 答案:B 3.下列说法正确的有() A. class中的constructor不可省略 B. constructor必须与class同名,但方法不能与class同名 C. constructor在一个对象被new时执行 D.一个class只能定义一个constructor 答案:C 详解:见下面代码,很明显方法是可以和类名同名的,和构造方法唯一的区别就是,构造方法没有返回值。 package net.study; public class TestConStructor { public TestConStructor() {

} public void TestConStructor() { } public static void main(String[] args) { TestConStructor testConStructor = new TestConStructor(); testConStructor.TestConStructor(); } } 4.提供Java存取数据库能力的包是() 答案:A 5.下列运算符合法的是() A.&& B.<> C.if D.:= 答案:A 详解: java 中没有<> := 这种运算符,if else不算运算符 6.执行如下程序代码 a=0;c=0; do{ --c; a=a-1; }while(a>0); 后,C的值是()

Java基础笔试机试测试题(带答案)

Java基础考试题 班级:__________ 姓名:___________ 日期:_____________ 一、笔试(45题,每题2分) 1) 分析下面的Java程序段,编译运行后的输出结果是()。 public class Test { public static void changeString(StringBuffer sb) { sb.append("stringbuffer2"); } public static void main(String[] args) { StringBuffer sb = new StringBuffer("stringbuffer1"); changeString(sb); System.out.println("sb = " + sb.toString()); } } A. sb = stringbuffer2stringbuffer1 B. sb = stringbuffer1 C. sb = stringbuffer2 D. sb = stringbuffer1stringbuffer2 2) 在Java中,包有多种用途,但不包含()。 A. 将类组合成较小的单元,便于使用 B. 有助于避免命名冲突 C. 有助于提高运行效率 D. 允许在更广的范围内保护类、数据和方法 3) 在Java中,如果要在字符串类型s="java"中,得到字母'v' 出现的位置,选()语句。 A)s.matches('v'); B)s.charAt('v'); C)s.indexOf('v'); D)s.substring('v'); 4)下列代码运行后,变量c的值是()。 int a=15,b=10; double c=a/b; a) 1.5 b) 1.0 c) 1 d) 0 5)main方法如下所示,该程序的运行结果是()。 public static void main(String [] args){ int i=0; System.out.print(i++); } a) 输出0 b) 输出1 c) 编译错误d) 运行时出现异常

Java基础试题及答案

《Java面向对象程序设计》 姓名: 一、判断题(15’) 1.Java程序里,创建新的类对象用关键字new,回收无用的类对象使用关键字free。错 finalize()方法 2.对象可以赋值,只要使用赋值号(等号)即可,相当于生成了一个各属性与赋值对象相同的新对象。错方法赋值采用相应的方法 3.有的类定义时可以不定义构造函数,所以构造函数不是必需要写的。对4.类及其属性、方法可以同时有一个以上的修饰符来修饰。对 5.Java的屏幕坐标是以像素为单位,容器的左下角被确定为坐标的起点错6.抽象方法必须在抽象类中,所以抽象类中的方法都必须是抽象方法。错7.Final类中的属性和方法都必须被final修饰符修饰。错 8.最终类不能派生子类,最终方法不能被覆盖。对 9.子类要调用父类的方法,必须使用super关键字。错 10.一个Java类可以有多个父类。错 二、选择题(30’) 1、关于被私有保护访问控制符private protected修饰的成员变量,以下说法正确的是(C) A.可以被三种类所引用:该类自身、与它在同一个包中的其他类、在其他包中的该类的子类 B.可以被两种类访问和引用:该类本身、该类的所有子类 C.只能被该类自身所访问和修改 D.只能被同一个包中的类访问 2、关于被私有访问控制符private修饰的成员变量,以下说法正确的是(C)A.可以被三种类所引用:该类自身、与它在同一个包中的其他类、在其他包中的该类的子类 B.可以被两种类访问和引用:该类本身、该类的所有子类 C.只能被该类自身所访问和修改 D.只能被同一个包中的类访问 3、关于被保护访问控制符protected修饰的成员变量,以下说法正确的是(D)A.可以被三种类所引用:该类自身、与它在同一个包中的其他类、在其他包中的该类的子类 B.可以被两种类访问和引用:该类本身、该类的所有子类 C.只能被该类自身所访问和修改 D.只能被同一个包中的类访问 4、下列关于修饰符混用的说法,错误的是(D) A.abstract不能与final并列修饰同一个类 B. abstract类中不可以有private的成员 C.abstract方法必须在abstract类中

Java基础试题

考砸了,把做错的题目重新复习一下对应的知识点 一、单项选择(每题2.5分,20 * 2.5’=50’)A 1.下面哪种情况属于方法重载。 A)方法名相同,参数类型与个数不同 B)方法参数类型相同 C)方法参数个数相同 D)方法名相同,方法参数类型与个数也相同 2.你想用下面的代码查找数组最后一个元素的值,当你编译并运行它的时候,会发 生什么?C public class MyAr{ public static void main(String argv[]){ int[] i = new int[5]; System.out.println(i[5]); } } A).编译通过并输出0 B).编译通过并输出 null C).编译通过但发生运行时错误 D).编译出错 3.JFrame的默认布局管理器是什么?C 4.Frame 的默认布局是FlowLayout 5.JFrame的默认布局是BorderLayout A)FlowLayout B)GridLayout C)BorderLayout D)CardLayout 6.给定下面的类定义D class Base{ Base(int i){} } class DefCon extends Base{ DefCon(int i){ //XX } } 如果将标记//XX 的地方替换为下面的行,哪一行是独立合法的? A).super(); B).this();

C).this(99); D).s uper(99); 7.启动线程方法正确的是___D________。 A)run( )方法 B)suspend( )方法 C)stop( )方法 D)start( )方法 6、在Java中,调用Math.random() 方法可能返回的结果是(B) Math.random 返回的是一个double值此值大于0.0 且小于1.0 A)132.34 B)0.342 C)29.34E10 D) 1.0009 7、下面的哪一个声明是合法的?B A) public protected amethod(int i) B) public void amethod(int i) C) public void amethod(void) D) void public amethod(int i) 8、假设有以下Java代码:C import java.applet.*; import java.awt.*; public class My_Applet extends Applet { … } 如果要在HTML页中嵌入以上Applet,可按下面()方式完成。(选择一项) A) B) C) D) 9、在Java中,要想使只有定义该类所在的包内的类可以访问该类,应该用(A)关 键字。 A)不需要任何关键字 B)private C)final D)protected 10、下述哪些说法是正确的?A

java期末考试试题及答案

1.谈谈final, finally, finalize的区别。 final关键字: a) 如果一个类被声明为final,意味着它不能再派生出新的子类,不能作为父类被继承。因此一个类不能既被声明为abstract的,又被声明为final的。 b) 将变量或方法声明为final,可以保证它们在使用中不被改变。 c) 被声明为final的变量必须在声明时给定初值,而在以后的引用中只能读取,不可修改。 d) 被声明为final的方法也同样只能使用,不能重载。 finally关键字:在异常处理时提供finally 块来执行任何清除操作。如果抛出一个异常,那么相匹配的catch 子句就会执行,然后控制就会进入finally 块。 finalize:方法名,不是关键字。Java技术允许使用finalize() 方法在垃圾收集器将对象从内存中清除出去之前做必要的清理工作。这个方法是由垃圾收集器在确定这个对象没有被引用时对这个对象调用的。它是在Object 类中定义的,因此所有的类都继承了它。子类覆盖finalize() 方法以整理系统资源或者执行其他清理工作。finalize()方法是在垃圾收集器删除对象之前对这个对象调用的。 2.GC是什么? 为什么要有GC? GC是垃圾收集器。Java 程序员不用担心内存管理,因为垃圾收集器会自动进行管理。要请求垃圾收集,可以调用下面的方法之一: System.gc() Runtime.getRuntime().gc() 3.Math.round(11.5)等於多少? Math.round(-11.5)等於多少? 写程序Math.round(11.5) = 12 Math.round(-11.5) = -11 4.给我一个你最常见到的runtime exception ArithmeticException, ArrayStoreException, BufferOverflowException, BufferUnderflowException, CannotRedoException, CannotUndoException, ClassCastException, CMMException, ConcurrentModificationException, DOMException, EmptyStackException, IllegalArgumentException, IllegalMonitorStateException, IllegalPathStateException, IllegalStateException, ImagingOpException, IndexOutOfBoundsException, MissingResourceException, NegativeArraySizeException, NoSuchElementException, NullPointerException, ProfileDataException, ProviderException, RasterFormatException, SecurityException, SystemException, UndeclaredThrowableException, UnmodifiableSetException, UnsupportedOperationException

Java基础试题及其答案

Java试题 1) java程序中,main方法的格式正确的是()。(选择一项) a)static void main(String[] args) b)public void main(String[] args) c)public static void main(String[]s) d)public static void main(String[] args) 2)给定java代码,如下: public byte count(byte b1,byte b2){ return______; } 要使用这段代码能够编译成功,横线处可以填入()。(选择一项)a)(byte) (b1-b2) b)(byte) b1-b2 c) b1-b2 d) (byte) b1/b2 3)在Java中,在包下定义一个类,要让包下的所有类都可以访问这个类,这个类必须定义为()。(选择一项) a)protected b)private c)public d)friendly 4)在Java中,下列()语句不能通过编译。 (选择一项) a) String s= “join”+ “was”+ “here”; b) String s= “join”+3; “”+new Person() toString() c) int a= 3+5 d) float f=5+; double float 6)给定java代码如下,运行时,会产生()类型的异常。(选择一项) String s=null; (“abc”); a)ArithmeticException b)NullPointerException c)IOException d)EOFException 已到文件尾,再读取抛出 7) 在java中,()对象可以使用键/值的形式保存数据。(选择一项) a)ArrayList List 有序可重复 b) HashSet Set 无序不可重复同一对象是重复 的 c) HashMap Map(key/value)重复定义:hashCode、 equals(业务) d) LinkedList List 8)给定如下java代码,编译运行之后,将会输出()。 public class Test{ public static void main(String args[]){ int a=5;

java笔试题及答案.doc

java笔试题及答案 有了下面java笔试题及答案,进行java笔试时就容易多了,请您对下文进行参考: 1、作用域public,private,protected,以及不写时的区别 答:区别如下: 作用域当前类同一package子孙类其他package public 7 7 7 7 protected 7 7 7 X friendly 7 7 X X private 7 X X X 不写时默认为friendly 2、Anonymouslnner Class (匿名内部类)是否可以exte nd s (继承)其它类,是否可以imple ment s (实现)i nterf ace (接口) 答:匿名的内部类是没有名字的内部类。不能exte n ds (继承)其它类,但一个内部类可以作为一个接口,由另一个内部类实现 3、Sta ti cNestedC las s 和Inner Clas s 的不同答: Nes tedC lass (一般是C+ +的说法),In ne rClass (—般是JAVA的说法)。J ava内部类与C++嵌套类最大的不同就在于是否有指向外部的引用上。注:静态内部类(I

nn erClass)意味着1创建一个st atic内部类的对象,不需要一个外部类对象,2不能从一个st atic内部类的一个对象访问一个外部类对象 4、和的区别 答:是位运算符,表示按位与运算,是逻辑运算符,表示遷辑与(and ) 5、Coll ect ion 和Col lect ions 的区别 答:Coll ect ion是集合类的上级接口,继承与他的接口主要有Set和List. Col lections是针对集合类的一个帮助类,他提供一系列静态方法实现对各种集合的搜索、排序、线程安全化等操作 6、什么时候用assert 答:asserti on (断言)在软件开发中是一种常用的调试方式,很多开发语言中都支持这种机制。在实现中,a ssertion 就是在程序中的一条语句,它对一个boolea n表 达式进行检查,一个正确程序必须保证这个bool ean表达 式的值为tr ue;如果该值为fal se,说明程序己经处于不正确的状态下,系统将给出警告或退出。一般来说,

java基础测试题

一、选择题 1、下面哪个是Java语言中正确的标识符(a) A、3com B、import C、that D、this 2、下面哪个语句(初始化数组)是不正确的:(b) A.int x[] = {1,2,3}; B.int x[3] = {1,2,3}; C.int[] x = {1,2,3}; D.int x[] = new int[]{1,2,3}; 3、下述概念中不属于面向对象方法的是( a)。 A.对象、消息 B.继承、多态 C.类、封装 D.过程调用 4、下面的代码段中,执行之后i 和j 的值是什么? ( a ) int i = 1; int j; j = i++*2+3*--i; A.1, 2 B.1, 5 C. 2, 1 D. 2, 2 5、下面哪条语句把方法声明为抽象的公共方法?(a)A.public abstract method(); B.public abstract void method(); C.public abstract void method(){} D.public void method() extends abstract; 6、下面关于java中类的说法哪个是不正确的?(c)

A.类体中只能有变量定义和成员方法的定义,不能有其他 语句。 B.构造函数是类中的特殊方法。 C.类一定要声明为public的,才可以执行。 D.一个java文件中可以有多个class定义。 7、假设A类有如下定义,设a是A类的一个实例,下列语 句调用哪个是错误的?(d) class A { int i; static String s; void method1() { } static void method2() { } } A、System.out.println(a.i); B、a.method1(); C、A.method1(); D、A.method2() 10、在Java 中如果要在字符串类型对象s=“JAVA”,中找 出‘V’出现的位置可使用下面哪个方法:(b) A.mid(2,s); B.charAt(2); C.s.indexOf(‘V’); D.indexOf(s,’V’); 13、给出下面代码: public class Person{ static int arr[] = new int[10];

java笔试题含答案

班级:_______________ 学号:______________ 姓名:___________ Java 笔试题 (可多选) 1. 下面哪些是Thread类的方法( ABD) A start() B run() C exit() D getPriority() 2. 下面关于类的说法正确的是(A) A 继承自Throwable B Serialable C 该类实现了Throwable 接口 D 该类是一个公共类 3. 下面程序的运行结果是( false ) String str1 = "hello"; String str2 = "he" + new String("llo"); == str2); 4. 下列说法正确的有( C) A. class中的constructor不可省略

B. constructor必须与class同名,但方法不能与class同名C. constructor在一个对象被new时执行 D.一个class只能定义一个constructor 5. 指针在任何情况下都可进行>, <, >=, <=, ==运算( true ) 6. 下面程序的运行结果:(B) public static void main(String args[]) { Thread t = new Thread() { public void run() { pong(); } }; (); "ping"); } static void pong() { "pong"); } A pingpong

B pongping C pingpong和pongping都有可能 D 都不输出 7. 下列属于关系型数据库的是(AB) A. Oracle B MySql C IMS D MongoDB 8. GC(垃圾回收器)线程是否为守护线程( true ) 9. volatile关键字是否能保证线程安全( false ) 10. 下列说法正确的是(AC) A LinkedList继承自List B AbstractSet继承自Set C HashSet继承自AbstractSet D WeakMap继承自HashMap 11. 存在使i + 1 < i的数吗(存在) 12. 的数据类型是(B) A float B double C Float D Double

java基础测试题含答案

Java基础试题 姓名 一、选择题(每题2分,共30分) 1.请写出标识符的命名规则描述正确的是[多选](ABCD ) A、由英文字母、数字、_和$组成,长度不限。 B、标识符的第一个字符不能是数字 C、标识符区分大小写。 D、标识符不能包含空格。 2. 下列属于正确标识符的选项有[多选](BDGH) A. int B. $_Count C. 3M D. Hello E. b-7 F. ms#d G. bool H. D9658 3、下列哪一个不属于java的基本类型( B ) A、int B、String C、float D、byte 4、下列那条语句能编译通过( A ) A、String String=”String”; B、float float=”3.14”; C、int int = 11; D、int i= 1.1; 5、下列代码的执行结果是: ( D ) public class Test1{ public static void main(String args[]){

float t=9.0f; int q=5; System.out.println((t++)*(--q)); } } A、40 B、40.0 C、36 D、36.0 6、int长度描述正确的是(A ) A、-2^31到2^31 - 1 B、-2^32到2^32 - 1 C、-2^7到2^7 - 1 D、-2^8到2^8 - 1 7、关于==和equals方法描述不正确的是( D ) A、==是运算符、equals是方法 B、==只比较对象,equals会先比较对象,如果不是一个对象,会对对象的值进行比较。 C、String a= "1"; String b= "1"; System.out.println(a==b); 输出结果为:true D、String a=new String("1");String b=new String("1"); System.out.println(a==b);输出结果为:true 8、下列关于哪个不属于java的特性( D ) A、封装 B、继承 C、多态 D、重载 9、某一个子类要继承一个父类,要使用关键字(B ) A、import B、extends C、implements D、java 10、某一个子类要实现一个父接口,要使用关键字(C ) A、import B、extends C、implements D、java 11、以下关于接口和类的说法正确的是( C )

Java基础试题和答案

J a v a基础试题和答案 Revised by Petrel at 2021

J a v a试题1)java程序中,main方法的格式正确的是()。(选择一项) a)staticvoidmain(String[]args) b)publicvoidmain(String[]args) c)publicstaticvoidmain(String[]s) d)publicstaticvoidmain(String[]args) 2)给定java代码,如下: publicbytecount(byteb1,byteb2){ return______; } 要使用这段代码能够编译成功,横线处可以填入()。(选择一项)a)(byte)(b1-b2) b)(byte)b1-b2 c)b1-b2 d)(byte)b1/b2 3)在Java中,在包com.db下定义一个类,要让包com.util下的所有类都可以访问这个类,这个类必须定义为()。(选择一项) a)protected b)private c)public d)friendly 4)在Java中,下列()语句不能通过编译。(选择一项) a)Strings=“join”+“was”+“here”; b)Strings=“join”+3; c)inta=3+5 d)floatf=5+5.5;

5)在Java中下列()方法可以把JFrame的布局管理器设为FlowLayout类型(选择一项) a)jFrame.setLayout(newFlowLayout()); b)jFrame.addLayout(newFlowLayout()) c)jFrame.setFlowLayout() d)jFrame.addFlowLayout() 6)给定java代码如下,运行时,会产生()类型的异常。(选择一项)Strings=null; s.concat(“abc”); a)ArithmeticException b)NullPointerException c)IOException d)EOFException 7)在java中,()对象可以使用键/值的形式保存数据。(选择一项) a)ArrayList b)HashSet c)HashMap d)LinkedList 8)给定如下java代码,编译运行之后,将会输出()。publicclassTest{ publicstaticvoidmain(Stringargs[]){ inta=5; (a+1)/2:a/2); } }(选择一项)

相关文档