100道Java基础测试题

100道Java基础测试题
100道Java基础测试题

Java基础测试题

不定项选择题

1、面向对象的三大特征是()

A) 封装B) 继承C) 多态D) 线性

2、变量命名规范说法正确的是()

A) 变量由英文字母、下划线、数字、$符号组成

B) 变量不能以数字作为开头

C) A和a在Java中代表同一个变量

D) 不同类型的变量,可以起相同的名字

3、i的值为10,表达式(i++)+(i--)的值为()

A) 21B) 20 C) 19 D) 18

4、下面哪些定义变量的语句是正确的?()

A) int i = 'A'; B) float f = 1.23;

C) byte b = (byte)128; D) int c[5][5] = new int[ ][ ];

5、以下代码的执行结果是()

int a = 1;

bool ean m = a%2 = = 1;

if(m = false){

System.out.println("false");

}else{

System.out.println("true");

}

A) false B) true C) 编译不通过

6、以下程序段中,哪个选项不能插入到第二行?()

A)class Demo2 { } B) import java.util.*;

C) public static void main(String args[ ]) { }

D) package com; E) public class Demo2 { }

7、下面有关Java循环结构的描述正确的是()

A) for循环体语句中,可以包含多条语句,但要用大括号括起来

B) for循环和do...while循环都是先执行循环体语句,后进行条件判断

C) continue和break只能用于循环结构中

D) 增强for循环遍历数组时不需要知道数组的长度,但不能实现与下标相关的操作

8、switch选择语句是多分支选择语句,只能处理等值条件判断的情况。在jdk1.7中,switch中的表达式可以是以下哪种类型()

A)int B)char C)double D) float E)String F) short

9、和下面while循环完成相同功能的选项是()

A) for (i = 1; i <= 100; i++) {i++; sum = sum + i;}

B) for (i = 0; i <= 100; i++) {i++; sum = sum + i;}

C) for (i = 0; i <= 100; i+=2) {sum = sum+i;}

D) for (i = 1; i <= 100; i+=2) {sum = sum+i;}

10、编译运行以下程序后,输出结果是()

public class TestMain {

public static void main(String args[ ]){

int x=4;

System.out.println("value is "+ ((x>4) ? 9.9 :9));

}

}

A) value is 9.9 B) value is 9 C) value is 9.0

11、在面向对象编程里,经常使用is-a来说明对象之间的继承关系。下列对象中不具备继承关系的是?()

A) 手机与小米手机B) 企业家与马云

C) 编程语言与Java D) 中国与北京

12、下列说法正确的是()

A) Java程序可以一次编译,到处运行

B) 类可以看成一类对象的模板,对象可以看成该类的一个具体实例

C) 能被java.exe成功运行的java class文件必须有main( )方法

D) Java致力于检查程序在编译和运行时的错误

13、在Java中,关于数组描述正确是()

A) 声明数组仅仅是给出了数组的名字和元素的数据类型,要想真正地使用数组还必须使用new关键字在堆内存中分配内存空间

B) 存储在数组中的元素都属于同一数据类型

C) 已知二维数组int [ ] [ ] array={{1,2,3},{4,5}},则array[1].length的值为3

D) 创建数组后,系统会给每个数组元素一个默认值,如boolean型元素的默认值是true

14、哪个修饰符能够使得某个成员变量可被它所在包访问到和它的子类访问到的是()

A) public B) private C) protected D) 不加修饰符

15、下面哪个可作为int add(int a, int b){return a+b;}的重载方法()

A) int add(int c, int d){return c+d;}

B) void add(int a, int b){System.out.println(a+b);}

C) double add(double a, double b){return a+b;}

D) int add(int a, int b, int c){return a+b+c;}

16、System是jdk中常用的类之一。以下说法正确的是()

A) System类位于https://www.360docs.net/doc/0a12318060.html,ng包中

B) System类是用final修饰的,所以不能被继承

C) System类中有多个重载的println方法

D) in和out是System类中的两个公共静态成员变量

E) System.currentTimeMillis( )返回一个long类型的值

17、程序的运行结果是()

A) null123 B) null C) 出现空指针异常D) 编译失败

18、对于static关键字,说法正确的是()

A) 可以使用static修饰内部类

B) 被static关键字修饰的成员变量可以被该类所有的实例对象共享

C) 静态代码块随着类的加载而加载,并且只执行一次

D) 静态方法中只能通过对象调用非静态方法,而不能直接调用

19、设三个整型变量 x = 1 , y = 2 , z = 3,则表达式 y+=z--/++x 的值是()

A) 3B) 3.5 C) 4 D) 5

20、以下选项中可以使成员变量m 被函数fun( )直接访问的是()

class Test {

private int m;

public static void fun() {

System.out.println(m);

}

}

A) 将private int m 改为protected int m

B) 将private int m 改为public int m

C) 将private int m 改为static int m

D) 将private int m 改为int m

E) 将public static void fun( ) 改为public void fun( )

21、父类中有一个方法public void aa(int i) throws IOException {...},子类要重写该方法,正确的定义是()

A) public void aa(int j ) {...}

B) public void aa(Integer j) {...}

C) public void aa(int i ) throws Exception {...}

D) protected void aa( int i) {...}

E) public void aa( int j) throw IOException {...}

22、关于抽象类和接口,下列说法正确的是()

A) 抽象类中可以没有抽象方法

B) 抽象类中可以定义main方法和构造方法

C) 抽象类实现接口时可以不用实现接口中的方法

D) 一个类通过implement关键字实现接口

23、以下关于this和super关键字的说法错误的是()

A) this关键字指向当前对象自身,super关键字指向当前对象的直接父类

B) this和super关键字都可以访问成员属性,成员方法和构造方法

C) 在构造方法中可以使用this调用本类中其他构造方法,但必须位于首句

D) 在main方法中可以存在this或super关键字,但不能同时存在

E) 可以使用super访问父类所有属性和方法

24、关于构造方法,下列说法不正确的是()

A) 构造方法与类同名,且不能声明返回值类型

B) 用构造方法创建对象时,需使用new关键字

C) 构造方法中不能含有return语句

D) 我们在定义一个类时,必须要声明至少一个构造方法

25、阅读以下程序段

int a = 7, b = 8; //1

int temp = a; //2

a = b; //3

b = temp; //4

下面哪个选项可以替换该程序段的2—4行,并实现与之相同的功能?()

A) a = a^b; b = a^b; a = a^b;

B) a = a+b; b = a-b; a = a-b;

C) a = a&b; b = a&b; a = a&b;

D) a = a*b; b = a/b; a = a/b;

26、已知外部类Outer中有一个成员内部类Inner,则()

A) Inner生成的class文件为Outer.Inner.class

B) Inner生成的class文件为Outer$Inner.class

C) 在内部类中可以直接访问外部类的成员属性和方法

D) 在其他类中用语句Outer.Inner in = new Outer.Inner( );创建Inner对象

27、instanceof运算符能够用来判断一个对象是否为()

A) 一个类的实例

B) 一个实现指定接口的类的实例

C) 一个子类的实例

28、已知实体类A继承了B类并实现了C、D两个接口,则以下哪条语句可以通过编译?()

A) A a = new B( ); B) B b = new A( );

C) C c = new C( ); D) D d = new A( );

29、下面关于Java中包的说法正确的是()

A) 在Java中使用import语句导入包

B) package语句指明该源文件定义的类所在的包,必须作为Java源文件的

第一条语句

C) 不同的包中可以出现类名相同的类

D) 包存放在Java项目的src目录下

30、类Teacher和Student是类Person的子类

Teacher t = new Teacher();

Student s = new Student();

if (t instanceof Person )

s = (Student)t;

最后一条语句的执行结果是: ()

A) 将构造一个Student对象B) 将强制转换一个Student对象

C) 编译失败D) 编译时正确,但运行时错误

31、哪个不是Object类中的方法()

A) toString B) equals C) hashCode D) compare

32、如果Child extends Parent,那么正确的有()

A) 如果Child是class,且只有一个有参数的构造方法,那么必然会调用Parent中相同参数的构造方法

B) 如果Child是interface,那么Parent必然是interface

C) 如果Child是interface,那么Child可以同时extends Parent1,Parent2等多个interface

D) 如果Child是class,并且没有显示声明任何构造方法,那么此时仍然会调用Parent的构造方法

33、下面哪些情况下需要使用抽象类?()

A) 当一个类的一个或多个方法是抽象方法时

B) 当类是一个抽象类的子类,并且不能为任何抽象方法提供任何实现细节或方法体时

C) 当一个类实现多个接口时

D) 当一个类实现一个接口,并且不能为任何抽象方法提供实现细节或方法体时

34、以下代码中错误的语句是()

public class Something {

public static void main(String[] args) {

final Other o = new Other();

new Something().addOne(o); // 1

}

public void addOne(Other o){

o.i++; // 2

o = new Other(); // 3

}

}

class Other{

public int i;

}

A) 1 B) 2 C) 3 D) 没有错误

35、String s1 = "java";String s2 = "java"; 则下列表达式值为true的是()

A) s1.equals(s2)

B) "Java".equalsIgnoreCase(s2)

C) new String("java") = = s1

D) s1= =s2

36、关于String字符串描述不正确的是()

A) String本质是一个字符数组

B) String对象存储字符串的效率比StringBuffer高

C) String类提供了许多用来操作字符串的方法:连接、提取、查询等

D) 基本数据类型和String相加结果一定是字符串型

E) 可以使用构造方法String(char value[ ])创建一个字符串对象

37、String s = "How are you"; 下列哪个操作不会产生错误或异常?()

A) char c = s.charAt(s.length()); B) int i = s.indexOf("you");

C) s = s.split("-")[0]; D) s = s.substring(1, s.length());

38、以下选项中关于int和Integer的说法错误的是()

A) int是基本数据类型,Integer是int的包装类,是引用数据类型

B) int的默认值是0,Integer的默认值也是0

C) Integer i = 5;该语句使用了自动拆箱功能

D)使用Integer中的静态方法sqrt可以对一个整数进行开方运算

39、关于try...catch..finally结构,描述正确的是哪项()

A) 可以有多个catch B) catch块是必不可少的

C) 可以有多个finally D)只能有一个catch

40、对于异常处理,选择正确的选项()

A) 如果finally中有return语句,则会将try或catch中的return语句“覆盖”,直接执行finally中的return语句

B) 如果一个方法内部抛出了一个异常对象,那么必须要在方法上声明抛出

C) 如果调用了一个声明抛出异常的方法,那么调用者必须要处理异常

D) 如果try块中出现了异常的代码,那么其后面的代码是不会执行的

41、能和try语句块一起使用的是()

A) catch B) finally C) final D) finalize

42、下面方法的返回值是()

int method( ) {

int i = 3;

try{

i /= 0;

}catch(Exception e) {

return i;

}finally{

i++;

}

return i+=2;

}

A) 4 B) 3 C) 6 D) 编译失败

43、用冒泡排序对4,5,6,3,2,1进行从小到大排序,第三趟排序后的状态为()

A) 4 5 3 2 1 6 B) 3 2 1 4 5 6

C) 4 3 2 1 5 6 D) 2 1 3 4 5 6

44、如何随机地获取数组arr中的某一个元素?()

A) arr[new Random( ).nextInt(arr.length)]

B) arr[new Random( ).nextInt(arr.length+1)]

C) arr[(int)Math.floor(Math.random( )*arr.length)]

D) arr[(int)Math.ceil(Math.random( )*arr.length)]

45、String str = "abccdefcdh";

System.out.println(str.split("c").length);

以上程序执行后打印的结果是几?()

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

46、public class Example {

public static void main(String[ ] args) {

final String[ ] strs = { "Tom", "Jerry","Donald" };

for (String s : strs) {

s = "Tuffy";

}

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

}

}

请问运行main方法会打印出的是什么()

A) Tom,Jerry,Donald B) Tuffy, Tuffy, Tuffy

C) 编译失败D) 发生异常,输出异常信息

47、m个人去公园划船,每条船可以乘坐n个人,需要()条这样的船?

A) m/n B) m/n+1

C) m%n= =0?m/n:m/n+1 D) (int)(1.0*m/n)+1

48、关于Java中常用的类,下列说法正确的是()

A) Calendar.MONTH用于表示月份,现在是8月份,得到的Calendar.MONTH 字段的值是9

B)用SimpleDateFormat类的format方法可以格式化Date对象

C) ArrayList集合底层是用数组实现的,存储的元素有序,可重复

D) java.util.Random的nextInt( )方法会生成一个正整数类型的随机数

49、单例模式正确的写法是(),其中(D)是饿汉式

A) public class SingleInstance {

private static SingleInstance instance = new SingleInstance( );

private SingleInstance( ) { }

public SingleInstance getInstance() {return instance;}

}

B) public class SingleInstance {

private SingleInstance( ) { }

public static SingleInstance getInstance( ) {return new SingleInstance() ;} }

C) public class SingleInstance {

private static SingleInstance instance ;

private SingleInstance( ) { }

public static SingleInstance getInstance( ) {

if (instance == null) { instance = new SingleInstance( );}

return instance;

}

}

D) public class SingleInstance {

private static SingleInstance instance = new SingleInstance( ) ;

private SingleInstance( ) { }

public static SingleInstance getInstance( ) {

return instance;

}

}

50、运行以下代码片段,输出结果是? ( )

class X {

{ System.out.print("1"); }

static { System.out.print("2"); } X() { System.out.print("X"); }

}

public class Y extends X {

{ System.out.print("3"); }

static { System.out.print("4"); }

Y() { System.out.print("Y"); }

public static void main(String[] args) {

new Y();

}

}

A) 241X3Y B) 21X43Y C) 12X34Y D) 2413XY

51、实现/继承了Collection接口的是()(包括直接和间接的实现/继承)

A) Map B) List C) Vector D) Iterator E) Set

52、下面属于线程安全的类是()

A) java.util. ArrayList B) java.util.Vector

C) https://www.360docs.net/doc/0a12318060.html,ng.StringBuffer D) https://www.360docs.net/doc/0a12318060.html,ng.StringBuilder

E) java.util.HashMap F) java.util.Hashtable

53、下列()选项中是LinkedList类有而ArrayList类没有的方法

A) add(Object o) B) add(int index,Object o)

C) getFirst( ) D) removeLast( )

54、有这样一段程序:

请问运行主要的程序会打印出的是什么()

A) 2,2 B) 2,3 C) 3,2D) 3,3

55、根据以下代码,选择正确的选项()

①Map map = new HashMap();

②map.put(null,null);

③map.put("a","A");

④map.put("b","B");

⑤map.put("b","BB");

A) 第②行错误,因为HashMap不能将空值用作键

B) 第②行错误,因为HashMap不能将空值用作值

C) 第③行的put方法会返回null

D) 第⑤行的put方法会返回"B"

56、关于集合,下列说法不正确的是()

A) List是有序的。用户能够使用索引来访问List中的元素

B) Collection类是专门用来操作集合的工具类,提供一系列静态方法实现对各种集合的操作

C) Set接口的add(Object o)方法返回值类型是boolean

D) LinkedList集合底层是链表结构,适合做元素的增删操作

57、下列有关HashSet和TreeSet集合的描述中,错误的是()

A) 向HashSet存入对象时,对象一般会重写hashCode和equals方法

B) 向HashSet存入对象时,对象的equals方法一定会被执行

C) 向TreeSet存入对象时,对象需要实现Comparable接口,重写compareTo 方法

D) 向TreeSet存入对象时,对象的compareTo方法一定会被执行

58、关于泛型的说法错误的是?()

A) 泛型是JDK1.5出现的新特性

B) 泛类参数只能是类类型不能是基本数据类型

C) 使用泛型必须进行强制类型转换

D) List list = new ArrayList<>();是泛型的上限

59、当File类对象调用delete方法删除文件时,如果文件不存在,则()

A) 返回false B) 返回null

C) 报空指针异常D) 报文件不存在异常

60、synchronized关键字不能修饰下面那个方法?()

A) 静态方法B) 构造方法C) final方法

61、关于Java中线程的创建,下面四种说法正确的有哪些?()

A) 定义Thread的子类,重写Thread类的run方法,创建该子类的实例对象,调用对象的run方法

B) 定义一个实现Runnable接口的类并实现run方法,创建该类实例对象,将其作为参数传递给Thread类的构造方法来创建Thread对象,调用Thread对象的start方法

C) 定义Thread的子类,重写Thread类的run方法,创建该子类的实例对象,调用对象的start方法

D) 定义一个实现Runnable接口的类并实现run方法,创建该类实例对象,然后调用run方法

62、关于UDP和TCP说法错误的是()

A)在TCP连接中必须要明确客户端和服务器端

B)TCP每次通过“三次握手”建立连接

C)UDP是面向无连接的协议,可以保证数据的完整性

D)UDP比TCP传输速度快

63、public class Demo {

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

File file = new File("d:\\a.txt");

boolean b = file.exist();

BufferedWriter bw = new BufferWriter(new FileWriter(file));

bw.write("hello");

bw.flush( );

bw.close( );

}

}

运行以上程序,()

A)如果b为false,则会自动创建目标文件,并向文件中写入hello

B)如果b为false,则会出现FileNotFoundException

C)如果b为true,则会覆盖掉原来的文件,并向文件中写入hello

D)如果b为true,则会向目标文件的末尾中追加hello

64、以下代码对其执行后,numberList里的元素依次为:

List numberList = new ArrayList();

numberList.add(2);

numberList.add(4);

numberList.add(1);

numberList.add(3);

numberList.add(5);

for(int i =0;i

int v = numberList.get(i);

if(v%2==0)

numberList.remove(v);

}

A) 1,3,5 B) 4,1,3,5 C) 2,4,1,3,5 D) 会出现越界情况

65、下面哪个选项正确创建socket连接?()

A) Socket s = new Socket(8080);

B) Socket s = new Socket("192.168.1.1",8080);

C) ServerSocket s = new ServerSocket(8080);

D) Socket s = new ServerSocket("192.168.1.1",8080);

66、在Java中,下面关于String类和StringBuffer类的描述正确的是()

A) StringBuffer类的对象调用toString方法将返回String类型的结果

B) 两个类都有append方法

C) 可以直接将字符串"test"赋值给声明的String类和StringBuffer类的变量

D) 两个类的实例的值都能够被改变

67、以下程序运行的结果为()

A) run main

B) main run

C) main

D) run

E)不能确定

68、只有实现了()接口的类,其对象才能序列化。

A) Serializable B) Cloneable C) Comparable D) Writeable

69、在Socket编程中,IP地址用来标志一台计算机,但是一台计算机上可能提供多种应用程序,使用()来区分这些应用程序

A) 网络协议B) 子网掩码C) 端口D) 程序ID

70、以下选项中关于Java中获取Class对象的方式不正确的是()

A) Class c1 = String.class;

B) String str = new String("aa");Class c2 = str.getClass( );

C) Class c3 = new Class("https://www.360docs.net/doc/0a12318060.html,ng.String");

D) Class c4 = Class.forName("https://www.360docs.net/doc/0a12318060.html,ng.Object");

71、以下关于StringBuffer类的代码的执行结果是()

public class TestStringBuffer {

public static void main(String args[]) {

StringBuffer a = new StringBuffer("A");

StringBuffer b = new StringBuffer("B");

operate(a, b);

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

}

static void operate(StringBuffer x, StringBuffer y) {

x.append(y);

y = x;

}

}

A) AB.AB B) AB.B C) A.A D) A.B

72、下面有关Java异常类的描述,说法错误的是()

A) 异常的继承结构:基类为Throwable,Error和Exception继承Throwable,RuntimeException和IOException等继承Exception

B) 非RuntimeException一般是外部错误(非Error),其必须被try{}catch语句块所捕获

C) Error类体系描述了Java运行系统中的内部错误以及资源耗尽的情形,Error不需要捕捉

D) RuntimeException体系包括错误的类型转换、数组越界访问和试图访问空指针等等,必须被try{}catch语句块所捕获

73、下列在Java语言中关于数据类型和包装类的说法,正确的是()

A) 基本数据类型是包装类的简写形式,可以用包装类替代基本数据类型

B) long和double都占了64位(64bit)的存储空间

C) 默认的整数数据类型是int,默认的浮点数据类型是float

D) 和包装类一样,基本数据类型声明的变量中也具有静态方法,用来完成进制转化等

74、下面关于abstract关键字描述错误的是()

A) abstract关键字可以修饰类或方法

B) final类的方法都不能是abstract,因为final类不能有子类

C) abstract类不能实例化

D) abstract类的子类必须实现其超类的所有abstract方法

75、下列关于Java语言中String和char的说法,正确的是()

A) String是Java定义的一种基本数据类型

B) String是以"\0"结尾的char类型的数组char[ ]

C) 使用equals()方法比较两个String是否内容一样(即字符串中的各个字符都一样)

D) char类型在Java语言里面存储的是ASCII码

76、以下程序段的输出结果为()

public class EqualsMethod {

public static void main(String[] args){

Integer n1 = new Integer(47);

Integer n2 = new Integer(47);

System.out.print(n1 == n2);

System.out.print(",");

System.out.println(n1 != n2);

}

}

A) false,false B) false,true C) true,false D) true,true

77、关于sleep()和wait(),以下描述错误的一项是()

A) sleep是线程类(Thread)的方法,wait是Object类的方法

B) sleep不释放对象锁,wait放弃对象锁

C) sleep暂停线程、但监控状态仍然保持,结束后会自动恢复

D) wait后进入等待锁定池,只有针对此对象发出notify方法后才获得对象锁进入运行状态

78、Java反射机制的说法正确的是()

A) 在运行时判断对象所属的类

B) 在运行时判断类所具有的成员变量和方法

C) 在运行时改变方法的实现

D) 在运行时调用一个对象的方法

79、关于匿名内部类叙述正确的是()

A) 匿名内部类可以继承一个基类,不可以实现一个接口

B) 匿名内部类不可以定义构造器

C) 匿名内部类不能用于形参

80、有如下一段代码,请选择其运行结果()

public class StringDemo{

private static final String MESSAGE="taobao";

public static void main(String [] args) {

String a ="tao"+"bao";

String b="tao";

String c="bao";

System.out.println(a==MESSAGE);

System.out.println((b+c)==MESSAGE);

}

}

A) true,false B) false,true C) false,false D) true,true

81、JDK1.8中,下面有关Java 抽象类和接口的区别,说法错误的是()

A) 抽象类可以有构造方法,接口中不能有构造方法

B) 一个类可以实现多个接口,但只能继承一个抽象类

C) 接口中可以有普通成员变量,抽象类中没有普通成员变量

D) 抽象类中可以包含非抽象的普通方法,接口中的方法必须是抽象的,不能有非抽象的普通方法

82、如下代码的输出是()

public class Test {

private static void test(int[] arr) {

for (int i = 0; i < arr.length; i++) {

try {

if (arr[i] % 2 == 0)

throw new NullPointerException();

else

System.out.print(i);

} finally {

System.out.print("e");

}

}

}

public static void main(String[]args) {

try {

test(new int[] {0, 1, 2, 3, 4, 5});

} catch (Exception e) { System.out.print("E");}

}

}

A) 编译出错B) eE C) eE1eE3eE5 D) Ee E) Ee1Ee3Ee5

83、输入字节流在 Java中对应于抽象类()及其子类

A) InputStream B) OutputStream C) Writer D) Reader

84、下列关于Java中IO流的说法不正确的是()

A) 流的本质是数据传输

B) 如果要把数据写入一个文件中,需要创建一个输入流对象

C) 字节流在处理输入输出时不会用到缓存,而字符流用到了缓存

D) 字节流和字符流读取的都是文件中的二进制数据

85、当线程调用start( )后,其所处状态为()

A) 阻塞状态B) 运行状态C) 就绪状态D) 新建状态

86、下列关于线程的优先级说法中,正确的是()

A)线程的优先级是不能改变的

B)线程的优先级是在创建线程时设置的

C)在创建线程后的任何时候都可以重新设置

D)线程的优先级的范围在1-10之间

87、在Java中,下列关于读写文件的描述错误的是()

A) Reader类的read()方法用来从源中读取一个字符的数据

B) Reader类的read(int n )方法用来从源中读取一个字符的数据

C) Writer类的write(int n)方法用来向输出流写入单个字符

D) Writer类的write(String str)方法用来向输出流写入一个字符串

88、关于迭代器说法错误的是()

A) 迭代器是遍历集合元素的一种方式

B) 迭代器的hasNext方法返回值是布尔类型

C) List集合有特有的迭代器

D) next方法将返回集合中的上一个元素

89、以下关于File 类说法不正确的是()

A) 一个File 对象代表了操作系统中的一个文件或者文件夹,它可以获取文件和目录属性,也可以访问文件内容

B) 可以使用File 对象剪切一个文件

C) 可以使用File 对象创建或删除一个文件夹

D) 当一个File 对象被垃圾回收时,系统上对应的文件或文件夹也被删除

90、已知A类被打包在packageA , B类被打包在packageB ,且B类被声明为public ,且有一个成员变量x被声明为protected控制方式。C类也位于packageA 包,且继承了B类。则()

A) A类的实例不能访问到B类的实例

B) A类的实例能够访问到B类一个实例的x成员

C) C类的实例可以访问到B类一个实例的x成员

D) C类的实例不能访问到B类的实例

91、将集合转成数组的方法是()

A) asList() B) toArray() C) getArray() D) asArray()

92、下面哪个流属于面向字符的输出流()

A) BufferedWriter B) BufferedReader

C) FileInputStream D) InputStreamReader

93、String s = null;会抛出NullPPointerException 异常的有()

A) if((s!=null)&(s.length()>0)) B) if((s!=null)&&(s.length()>0))

C) if((s==null|(s.length()==0)) D) if((s==null)||(s.length()==0))

94、下面关于java程序结构特点描述中,错误的是()

A) 一个java文件包含一个类或多个类,每个类若干个方法和变量组成

B) Java程序中声明有public类时,则Java程序文件名必须与public类的类名相同,并区分大小写,扩展名为.java

C) 组成java程序的多个类中,有且仅有一个主类

D) 一个.java文件中定义多个类时允许其中声明多个public类

95、关于对象成员占用内存的说法哪个正确()

A) 同一个类的对象共用同一段内存 `

B) 同一个类的对象使用不同的内存空但静态成员共享相同

C) 对象的方法不占用内存

96、下列关于java.io.FileOutputStream的说法错误的是()

A) java.io.FileOutputStream用来进行文件的写入操作。用它提供的方法可以

将指定文件写入本地主机硬盘上。

B) 通过类File的实例和者一个表示文件名称的字符串可以生成文件输出

流。在流对象生成的同时文件被打开。但还不能进行文件读写

C) java.io.FileOutputStream可以读取字节文件也可以读取字符文件

D) java.io.FileOutputStream一次只能读取一个字节的内容

97、有关下述Java代码描述正确的选项是()

public class TestClass {

private static void testMethod(){

System.out.println("testMethod");

}

public static void main(String[] args) {

((TestClass)null).testMethod();

}

}

A) 编译不通过

B) 编译通过,运行异常,报NullPointerException

C) 运行正常,输出testMethod

D) 编译通过,运行异常,报ClassCastException

98、下列数据类型进行运算时,哪一个会发生自动类型提升()

A) int + int B) long + long

C) byte + byte D) double + double

99、在下面哪种情况下,可以使用方法重写?()

A) 父类方法中的形参不适用于子类使用时

B) 父类中的方法在子类中没有时

C) 父类的功能无法满足子类的需求时

D) 父类方法中的返回值类型不适合子类使用

100、以下哪种原因不会导致线程暂停运行()

A) 等待B) 阻塞

C) 休眠D) 挂起及由于I/O操作而阻塞

Java编程基础知识点汇总及习题集答案

J a v a编程基础知识点汇总及习题集答案 集团文件发布号:(9816-UATWW-MWUB-WUNN-INNUL-DQQTY-

目录 第一章 Java入门 (2) 第二章 Java基础 (5) 第三章条件转移 (14) 第四章循环语句 (20) 第五章方法 (26) 第六章数组 (33) 第七章面向对象 (42) 第八章异常 (63) 第一章 Java入门 知识点汇总 1、JAVA 三大体系 Java SE:(J2SE,Java2 Platform Standard Edition,标准版),三个平台中最核心的部分,包含Java 最核心的类库。 JavaEE:(J2EE,Java 2 Platform, Enterprise Edition,企业版),开发、装配、部署企业级应用,包含Servlet、JSP、JavaBean、JDBC、EJB、Web Service等。 Java ME:(J2ME,Java 2

Platform Micro Edition,微型版),用于小型电子设备上的软件开发。 2、JDK,JRE,JVM的作用及关系作用 ★JVM:保证Java语言跨平台 ★JRE:Java程序的运行环境 ★JDK:Java程序的开发环境 关系 ★JDK:JRE+工具 ★JRE:JVM+类库 3、JDK环境变量配置 path环境变量:存放可执行文件的存放路径,路径之间 用逗号隔开 classpath环境变量:类的运行路径,JVM在运行时通过classpath加载需要的类 4、重点掌握两个程序 :Java编译器工具,可以将编写好的Java文件(.java)编译成Java字节码文件(.class); :Java运行工具,启动Java虚拟机进程,运行编译器生成的字节码文件(.class) 5、一切程序运行的入口public static void main (String args []){ World!”); } 课堂笔记

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. 有以下程序片段,下列哪个选项不能插入到行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基础试题及其答案

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基础试题及其答案

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 一章至五章考试 一. 填空题(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入门练习50题(含答案)

题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少? //这是一个菲波拉契数列问题 public class lianxi01 { public static void main(String[] args) { System.out.println("第1个月的兔子对数: 1"); System.out.println("第2个月的兔子对数: 1"); int f1 = 1, f2 = 1, f, M=24; for(int i=3; i<=M; i++) { f = f2; f2 = f1 + f2; f1 = f; System.out.println("第" + i +"个月的兔子对数: "+f2); } } } 【程序2】 题目:判断101-200之间有多少个素数,并输出所有素数。 程序分析:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除,则表明此数不是素数,反之是素数。 public class lianxi02 { public static void main(String[] args) { int count = 0; for(int i=101; i<200; i+=2) { boolean b = false; for(int j=2; j<=Math.sqrt(i); j++) { if(i % j == 0) { b = false; break; } else { b = true; } } if(b == true) {count ++;System.out.println(i );} } System.out.println( "素数个数是: " + count); } }

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高级程序员考试题

JA V A高级程序员考试题 (总分:100分,考试时间:120分钟) 一、单项选择题(每题2分) 1.Java是从()语言改进重新设计。 A.Ada B.C++ C.Pasacal D.BASIC 2.Java中不属于基础数据类型的是()。 A.byte B.char C.boolean D.String 3.Math.round(-11.5)等于多少()。 A.11 B.12 C.-11 D.-12 4.Java中调用()方法可以启动线程。 A.run() B.init() C.start() D.main() 5.下面哪种注释方法能够支持javadoc命令() A./**….**/ B./**/ C.// D.都不支持 6.执行如下程序代码: int a = 0; int c = 0; do { --c; a = a-1; } while (a > 0); 后,C的值是()。 A.0 B.1 C.-1 D.死循环 7.执行如下程序代码: String str = “abc”; int i = 3; float f = 4.5f; char ch = …a?; boolean b = true; System.out.println(str + i + f + ch + b); 输入值为()。 A.abc34.5fatrue B.abc34.5a1 C.abc34.5fa1 D.abc34.5atrue 8.执行如下程序代码: int denom = 0; int num = 0; if(denom != 0 && num/denom > 10){

System.out.println(“true”); }else{ System.out.println(“false”); } 以上代码将打印()。 A.true B.false C.先打印true,然后打印false D.编译有错 9.以下哪一行有错误()。 int a [][] = new int [4][]; a[0] = new int[5]; a[1] = new int[5]; int b [][] = new int [][4]; A.第1行B.第2行C.第3行D.第4行 10.int [][] a = new int [3][5]; 请问: a.length = ? a[1].length = ? A.5,3 B.3,5 C.3,3 D.5,3 二、多项选择题(每题3分) 11.XML有()解析方式。 A.DOM B.SAX C.STAX D.FACTORY 12.下列哪些继承Collection接口()。 A.List B.Map C.Set D.Date 13.不能用来修饰interface的有()。 A.private B.public C.protected D.static 14.Java中switch关键字能作用于()数据类型。 A.int B.char C.String D.byte 15.关于Servlet说法正确的是()。 A.Servlet被实例化后,容器运行其init方法 B.Servlet被实例化后,容器运行其service方法 C.服务器销毁实例时运行destory方法 D.Servlet中有get和post两种提交方式 16.关于EJB说法正确的是()。 A.EJB包括了Session Bean、Entity Bean、Message Driven Bean B.EJB基于JNDI、RMI、JA T等技术实现 C.EJB可以部署到tomcat、jboss、weblogic等应用服务器 D.EJB一般应用于企业级的应用

java基础练习题

1) 以下关于Java语言说法错误的是()。(选择两项) a) Java语言是一种OO语言,Java API是Java语言的帮助文档 b) Java语言具有平台无关性-Write Once,Run Anywhere c) Java语言的核心是Java Virtual Machine d) 使用Java语言,程序员要使用原始方法分配和释放内存空间 e) Java语言是一种编译执行语言 知识点: 第一章Java语言基础Java语言基本概念 2) 以下哪一项不是Java的关键字(b)。(选择一项) a) if b) then c) goto d) case e) while 知识点: 第二章Java编程基础Java中的关键字 3) 下列(a,e)不是合法的Java语言标识符。(选择两项) a) 2variable b) variable2 c) _whatavariable d) $anothervar e) #myvar f) _3_ 知识点: 第二章Java编程基础Java中的标识符 4) 执行下列代码段后,变量x的值是(c)。(选择一项) x=9; y=9; x=(y<=x++)?1:0; a) 1 b) 2 c) 0 d) 10 知识点: 第二章Java编程基础三元运算符 5) System.out.println(4 | 7);上面语句的输出结果是(d)。(选择一项) a) 4 b) 5 c) 6 d) 7 e) 0 知识点: 第二章Java编程基础位运算符 6) 以下会产生编译错误的Java语句是(b)。(选择一项) a) if (2 == 3) System.out.println("Hi"); b) if (2 = 3) System.out.println("Hi");

JAVA试题及答案

JA V A语言基础内部测试题 选择题(针对以下题目,请选择最符合题目要求的答案,针对每一道题目,所有答案都选对,则该题得分,所选答案错误或不能选出所有答案,则该题不得分。)(每题2分) 没有注明选择几项的,只选择一项 1、JAVA所定义的版本中不包括:() A、JAVA2 EE B、JAVA2 Card C、JAVA2 ME D、JAVA2 HE E、JAVA2 SE 2、下列说法正确的是() A、JAVA程序的main方法必须写在类里面 B、JAVA程序中可以有多个main方法 C、JAVA程序中类名必须与文件名一样 D、JAVA程序的main方法中如果只有一条语句,可以不用{}(大括号)括起来 3、Java中,在如下所示的Test类中,共有()个构造方法。 public class Test{ private int x; public Test(){ x=35; } public void Test(double f){ =(int)f; } public Test(String s){} } A、0 B、 1 C、 2 D、3 4、变量命名规范说法正确的是() A、变量由字母、下划线、数字、$符号随意组成; B、变量不能以数字作为开头; C、A和a在java中是同一个变量; D、不同类型的变量,可以起相同的名字; 5、下列javaDoc注释正确的是() A、/*我爱北京天安门*/

B、quals("john") C、"john" = "john" D、"john".equals(new String("john")) 6、下列输出结果是() int a = 0 ; while ( a < 5 ) { switch(a){ case 0: case 3 : a = a + 2; case 1 : case 2 : a = a + 3; default : a = a + 5; } } ( a ) ; A、0 B、5 C、10 D、其他 7、下列代码输出结果是( ) int i = 10; while ( i > 0 ){ i = i + 1; if ( i = =10 ){ break; } } A.while循环执行10次 B.死循环 C.循环一次都不执行 D.循环执行一次 8、下面有关for循环的描述正确的是() A、for循环体语句中,可以包含多条语句,但要用大括号括起来 B、for循环只能用于循环次数已经确定的情况 C、在for循环中,不能使用break语句跳出循环 D、for循环是先执行循环体语句,后进行条件判断 9、下列()属于引用数据类型(选择两项) A、String B、char C、用户自定义的Student类类型

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、; B、(); C、(); D、() 8、容器被重新设置大小后,哪种布局管理器的容器中的组件大小不随容器大小 的变化而改变 ( B ) A、 CardLayout B、 FlowLayout C、 BorderLayout D、 GridLayout 9、下列哪个用户图形界面组件在软件安装程序中是常见的 ( C ) A.滑块 B.进度条 C.按钮 D.标签

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高级编程选择题

1.Thread类用来创建和控制线程,一个线程从下面( )方法开始执行。 A.init() B.start() C.run() D.notifyAll() 2.实现线程体的方式除了继承Thread类,还可以实现( )接口。 A.Cloneable B.Runnable C.Iterable D.Serializable 3.哪个方法是实现Runnable接口所需的 A.wait() B.run() C.stop() D.update() 4.下面让线程休眠1分钟的正确方法是() A.sleep(1) B.sleep(60) C.sleep(1000) D.sleep(60000) 5.以下哪个最准确描述synchronized关键字 A.允许两线程并行运行,而且互相通信; B.保证在某时刻只有一个线程可访问方法或对象; C.保证允许两个或更多处理同时开始和结束; D.保证两个或更多线程同时开始和结束。 6.于Java语言的内存回收机制,下列选项中最正确的一项是( )。 A.Java程序要求用户必须手工创建一个线程来释放内存 B.Java程序允许用户使用指针来释放内存 C.内存回收线程负责释放无用内存 D.内存回收线程不能释放内存对象 7.在java程序中,下列关于线程的说法错误的是: ( ) A.run方法是运行线程的主体 B.多个进程运行时执行顺序是按顺序执行的 C.如果线程死亡,它便不能运行 D.在java中,高优先级的可运行线程会抢占低优先级线程 8.编写线程类,要继承的父类是: A.Object

B.Runnable C.Exception D.Thread 9.启动一个线程的方法是哪项 A . join ( ) B . runf ) C . start ( ) D . sleep ( ) 10.编写线程类,可以通过实现那个接口来实现 A.Runnable B.Throwable C.Serializable https://www.360docs.net/doc/0a12318060.html,parable 11.当一个处于阻塞状态的线程解除阻塞后,它将回到哪个状态 A.运行中状态 B.结束状态 C.新建状态 D.可运行状态 12.在网络编程中,为了定位一个进程,我们需要确定() A.端口号 B.IP地址 C.IP地址和端口号 D.都不是 13.为了从文本文件中逐行读取内容,应该使用哪个处理流对象 A.BufferedReader B.BufferedWriter C.Bufferedlnputstream D.Bufferedoutputstream 14.要使用java程序访问数据库,则必须首先与数据库建立连接,在建立连接 前,应加载数据库驱动程序,该语句为() A.(“ rs= (“”,””,””).createStatement() B.Statement st= (“”,””,””).createStaement() 15.要使用java程序访问数据库,则必须首先与数据库建立连接,该语句为() A.(“ rs= (“”,””,””).createStatement() B.Statement st= (“”,””,””).createStaement() 16.Java程序与数据库连接后,需要查看某个表中的数据,使用下列哪个语句

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基础试题和答案

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); } }(选择一项)

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、; B 、(); C. (); D 、() 8、容器被重新设置大小后,哪种布局管理器的容器中的组件大小不随容器大小的变化而改 变?( B ) A、CardLayout B 、FlowLayout C 、BorderLayout D 、GridLayout 9、下列哪个用户图形界面组件在软件安装程序中是常见的? ( C ) A.滑块 B. 进度条 C.按钮 D. 标签

JAVA基础考题和答案

1、作用域public,private,protected,以及不写时的区别 答:区别如下: 作用域当前类同一package 子孙类其他package public √√√√ protected √√√× friendly √√×× private √××× 不写时默认为friendly 2、ArrayList和Vector的区别,HashMap和Hashtable的区别 答:就ArrayList与Vector主要从二方面来说. 一.同步性:Vector是线程安全的,也就是说是同步的,而ArrayList是线程序不安全的,不是同步的 二.数据增长:当需要增长时,Vector默认增长为原来一培,而ArrayList却是原来的一半 就HashMap与HashTable主要从三方面来说。 一.历史原因:Hashtable是基于陈旧的Dictionary类的,HashMap是Java 1.2引进的Map接口的一个实现 二.同步性:Hashtable是线程安全的,也就是说是同步的,而HashMap是线程序不安全的,不是同步的 三.值:只有HashMap可以让你将空值作为一个表的条目的key或value 3、char型变量中能不能存贮一个中文汉字?为什么? 答:是能够定义成为一个中文的,因为java中以unicode编码,一个char占16个字

节,所以放一个中文是没问题的 4、多线程有几种实现方法,都是什么?同步有几种实现方法,都是什么? 答:多线程有两种实现方法,分别是继承Thread类与实现Runnable接口同步的实现方面有两种,分别是synchronized,wait与notify 5、继承时候类的执行顺序问题,一般都是选择题,问你将会打印出什么? 答:父类: package test; public class FatherClass { public FatherClass() { System.out.println("FatherClass Create"); } } 子类: package test; import test.FatherClass; public class ChildClass extends FatherClass { public ChildClass()

相关文档
最新文档