java 基础测试题_java基础测试题

这篇博客主要介绍了Java编程的基础知识,包括面向对象的特性、数据类型、字符串操作、类与对象、构造函数、异常处理、多态继承、接口、线程、IO流等核心概念。同时,通过实例解析了各种概念的应用,如构造函数的调用顺序、字符串的比较、集合框架中的List、Set、Map的关系等。此外,还涉及到了线程的创建、同步和通信,以及文件I/O的操作。博客内容深入浅出,适合初学者巩固Java基础知识。
摘要由CSDN通过智能技术生成

一、选择题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){

System.out.println("true");

}else{

System.out.println("false");

}

}

A  true true   B  true falseC  false true D  false false

8.程序执行的结果()

public class Test {

String name="Tom";

public Test(String name){

name=name;

}

public static void main(String [] args){

Test t = new Test("Jack");

System.out.println(t.name);

}

}

A  编译有错B  Jack  C  Tom  D  以上答案都不对

9.程序执行的结果()

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  以上答案都不对

10.在 Java 中,关于static关键字的说法错误的是()

A  static 可以修饰方法   B  static 可以修饰变量

C  static 可以修饰代码块

D  static 修饰的方法,在该方法内部可以访问非静态的类成员变量

11.关于 Java 中继承的特点,下列说法正确的是()

A  使类的定义复杂化

B  Java 只支持单继承,不可多继承,但可以通过实现接口来达到多继承的目的

C  子类继承父类的所有成员变量和方法,包括父类的构造方法

D  不可以多层继承,即一个类不可以继承一个类的子类

12.程序的执行结果是()

public class Test {

public static void main(String [] args){

Child c = new Child();

}

}

class Father{

public Father(){

System.out.println("父类无参构造函数");

}

public Father(String name){

System.out.println("父类有参构造函数");

}

}

class Child extends Father{

public Child(){

this("dd");

System.out.println("子类无参构造函数");

}

public Child(String name){

super("dd");

System.out.println("子类有参构造函数");

}

}

A  子类无参构造函数 子类有参构造函数  父类无参构造函数

B  子类有参构造函数 子类无参构造函数  父类无参构造函数

C  父类无参构造函数 子类有参构造函数  子类无参构造函数

D  父类有参构造函数 子类有参构造函数  子类无参构造函数

13.比较字符串相等使用的方法是

equals()

check()

equalCase()

compareTo()

14.在 Java 中,关于 final 关键字的说法正确的是()

A     如果修饰局部变量,必须初始化

B     如果修饰类,则该方法只能被一个子类继承

C     如果修饰方法,则该方法不能在子类中被覆盖

D     如果修饰方法,则该方法所在的类不能被继承

15.关于Java 异常,下列说法错误的是()

A     异常是定义了程序中遇到的非致命的错误,而不是编译时的语法错误

B     try……catch语句中对try 内语句监测,如果发生异常,则把异常信息放入对象e 中

C     throws 用来表示一个方法有可能抛出异常给上一层,则在调用该方法时必须捕捉异常,否则无法编译通过

D     主函数不可以使用 throws 抛出异常

16.关于String 和 StringBuffer 下面说法正确的是

String操作字符串不改变原有字符串的内容

StringBuffer连接字符串速度没有String 快

String 可以使用append方法连接字符串

StringBuffer 在java.util包中

17.所有类的基类()

A     java.lang.Object    B   java.lang.Class

C     java.applet.Applet   D  java.awt.Frame

18.下列选项中,哪个方法不是 Java 的访问修饰符()

A     private  B      protected  C  friendly  D    public

19.关于抽象类的说法正确的是()

A     抽象类中一定包含抽象方法,否则是错误

B     包含抽象方法的类一定是抽象类

C     抽象方法可以没有方法体,也可以有方法体

D     抽象类的子类一定不是抽象类

20.关于接口的说法错误的是()

A     是特殊的抽象类

B     是抽象方法和常量值的定义的集合

C     当一个类实现一个接口时,必须实现接口中的所有方法

D    多个类可以实现一个接口,一个类只能实现一个接口

21.关于线程说法错误的是()

A     创建线程的2个方法,方法1继承 Thread类,方法2实现 Runnable 接口

B     解决线程安全使用 synchronized 关键字,使得只有一个线程执行该关键字限定的代码段

C     线程间通信所使用的方法有,wait ,notify,notifyAll,他们都是 Thread 的方法

D     线程的生命周期包括4个状态,线程的创建,运行,阻塞,消亡

22.IO 包中,唯一代表磁盘本身的对象类是()

A     FileInputStream   B     File

C     InputStream      D     BufferReader

23.下列写法错误的是()

A     File  f = new File (“a.txt”);

B     File  f = new File (“d:\\a.txt”);

C     FileInputStream fis = new FileInputStream (new File (“a.txt”));

D     FileOutputStream fos = new FileOutputStream ( File (“.”));

24.下列说法正确的是()

A     InputStream 是字节流

B     Reader 是字节流

C     Writer 是字节流

D     BufferWriter 可以从文件中读取一行

二.填空题(每空1分,共15分)

1.java异常涉及到的关键字有__________、__________、__________、__________、__________。

2.包装类Integer的__________方法实现字符串到整形变量的装换,Math类的_________方法实现四舍五入。

3.HashMap的____和____方法分别用来添加和取出元素的值。

4. Collection接口中的_____方法判断集合中是否包含指定的元素,_______方法移除collection中的所有元素。

5字符串的常用方法有______、______、______、______。

三.简答题15分每题5分

1、画图说明 Collection ,Map ,Set ,List ,之间的关系

2、String是最基本的数据类型吗,Java基本类型有哪些?

3、说出ArrayList,Vector, LinkedList的存储性能和特性

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值