大一java期末考笔试_JAVA考试试题及答案

Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。下面是小编整理的关于JAVA考试试题及答案,欢迎参考!

Java语言程序设计试题及答案

选择题(共5题,每题1.5分,共75分。多选题选不全或选错都不得分。)

1. 以下属于面向对象的特征的是(C,D)。(两项)

A) 重载

B) 重写

C) 封装

D) 继承

2. 以下代码运行输出是(C)

public class Person{

private String name=”Person”;

int age=;

}

public class Child extends Person{

public String grade;

public static void main(String[] args){

Person p = new Child();

System.out.println(p.name);

}

}

A) 输出:Person

B) 没有输出

C) 编译出错

D) 运行出错

3. 在使用super 和this关键字时,以下描述正确的是(A)

A) 在子类构造方法中使用super()显示调用父类的构造方法,super()必须写在子类构造方法的第一行,否则编译不通过

B) super()和this()不一定要放在构造方法内第一行

C) this()和super()可以同时出现在一个构造函数中

D) this()和super()可以在static环境中使用,包括static方法和static语句块

4. 以下对封装的描述正确的是(D)

A) 只能对一个类中的方法进行封装,不能对属性进行封装

B) 如果子类继承了父类,对于父类中进行封装的方法,子类仍然可以直接调用

C) 封装的意义不大,因此在编码时尽量不要使用

D) 封装的主要作用在于对外隐藏内部实现细节,增强程序的安全性

5. 以下对继承的描述错误的是(A)

A) Java中的继承允许一个子类继承多个父类

B) 父类更具有通用性,子类更具体

C) Java中的继承存在着传递性

D) 当实例化子类时会递归调用父类中的构造方法

6. 以下程序的运行结果是(D)

class Person{

public Person(){

System.out.println(̶this is a Person”);

}

}

public class Teacher extends Person{

private String name=”tom”;

public Teacher(){

System.out.println(̶this is a teacher”);

super();

}

public static void main(String[] args){

Teacher teacher = new Teacher();

System.out.println(this.name);

}

}

A) this is a Person

this is a teacher

tom

B) this is a teacher

this is a Person

tom

C) 运行出错

D) 编译有两处错误

7. 以下说法错误的是()

A) super.方法()可以调用父类的'所有非私有方法

B) super()可以调用父类的所有非私有构造函数

C) super.属性可以调用父类的所有非私有属性

D) this和super关键字可以出现在同一个构造函数中

8. 以下关于final关键字说法错误的是(A,C)(两项)

A) final是java中的修饰符,可以修饰类、接口、抽象类、方法和属性

B) final修饰的类肯定不能被继承

C) final修饰的方法不能被重载

D) final修饰的变量不允许被再次赋值

9. 访问修饰符作用范围由大到小是(D)

A) private-default-protected-public

B) public-default-protected-private

C) private-protected-default-public

D) public-protected-default-private

1. 以下(D)不是Object类的方法

A) clone()

B) finalize()

C) toString()

D) hasNext()

11. 多态的表现形式有(A)

A) 重写

B) 抽象

C) 继承

D) 封装

12. 以下对重载描述错误的是(B)

A) 方法重载只能发生在一个类的内部

B) 构造方法不能重载

C) 重载要求方法名相同,参数列表不同

D) 方法的返回值类型不是区分方法重载的条件

13. 以下(D)添加到ComputerBook中不会出错

class Book{

protected int getPrice(){

return 3;

}

}

public class ComputerBook extends Book{

}

A) protected float getPrice(){}

B) protected int getPrice(int page){}

C) int getPrice(){}

D) public int getPrice(){return 1;}

14. 以下对抽象类的描述正确的是(C)

A) 抽象类没有构造方法

B) 抽象类必须提供抽象方法

C) 有抽象方法的类一定是抽象类

D) 抽象类可以通过new关键字直接实例化

15. 以下对接口描述错误的有(D)

A) 接口没有提供构造方法

B) 接口中的方法默认使用public、abstract修饰

C) 接口中的属性默认使用public、static、final修饰

D) 接口不允许多继承

16. 以下代码,描述正确的有(A)

interface IDemo{

public static final String name;1

void print();2

public void getInfo();3

}

abstract class Person implements IDemo{4

public void print(){

}

}

A) 第1行错误,没有给变量赋值

B) 第2行错误,方法没有修饰符

C) 第4行错误,没有实现接口的全部方法

D) 第3行错误,没有方法的实现

17. 接口和抽象类描述正确的有(B,C)(两项)

A) 抽象类没有构造函数

B) 接口没有构造函数

C) 抽象类不允许多继承

D) 接口中的方法可以有方法体

18. 以下描述错误的有(C)

A) abstract 可以修饰类、接口、方法

B) abstract修饰的类主要用于被继承

C) abstract 可以修饰变量

D) abstract修饰的类,其子类也可以是abstract修饰的

19. 以下描述正确的有(B)

A) 方法的重写应用在一个类的内部

B) 方法的重载与返回值类型无关

C) 构造方法不能重载

D) 构造方法可以重写

2. 以下程序运行结果是(A)

public class Test extends Father{

private String name=”test”;

public static void main(String[] args){

Test test = new Test();

System.out.println(test.getName());

【2017年JAVA考试试题及答案】相关文章:

  • 15
    点赞
  • 136
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是11道Java经典笔试题及其答案: 1. Java中的四种访问修饰符是什么?它们的访问权限分别是什么? 答案:四种访问修饰符是 public、protected、private 和 default。它们的访问权限分别如下: - public:可以被任何类、方法和变量访问。 - protected:可以被同一个包内的类、子类和同一包外的类访问。 - private:只能被所属的类访问。 - default:只能被同一个包内的类访问。 2. 什么是静态变量和静态方法?它们与实例变量和实例方法有什么区别? 答案:静态变量和静态方法是被类的所有实例共享的,它们不依赖于任何实例。而实例变量和实例方法是依赖于实例的,每个实例都拥有自己的实例变量和实例方法。 3. 抽象类和接口有什么区别?它们何时使用? 答案:抽象类和接口都不能被实例化,它们的主要区别在于: - 抽象类可以包含具体方法的实现,而接口只能包含方法声明。 - 一个类只能继承一个抽象类,但可以实现多个接口。 - 接口可以被用于实现多态,而抽象类只能被用于继承。 抽象类和接口的使用取决于具体的需求。如果需要定义一些通用的行为,可以使用接口;如果需要定义一些共同的状态或行为,并且需要具体的实现,可以使用抽象类。 4. 什么是多态?它的实现方式是什么? 答案:多态是指同一个方法可以在不同的对象上有不同的行为。它的实现方式有两种: - 重载多态:在同一个类中,方法名相同,参数列表不同,可以有多个重载方法。 - 重写多态:在父类和子类之间,方法名相同,参数列表也相同,子类可以重写父类的方法。 5. 什么是异常?Java中的异常处理机制是什么? 答案:异常是指程序运行过程中出现的错误或意外情况。Java中的异常处理机制通过 try-catch-finally 语句块来实现。当代码块中发生异常时,程序会跳转到 catch 块中执行异常处理代码;finally 块中的代码总是会被执行,无论是否发生异常。如果异常没有被处理,会被传递到调用该方法的地方继续处理。 6. 什么是线程?Java中如何创建和启动线程? 答案:线程是指程序执行的最小单位,可以同时执行多个线程来提高程序的并发性和效率。在Java中,可以通过创建 Thread 类的实例来创建线程,可以通过实现 Runnable 接口来定义线程的逻辑。启动线程可以调用 Thread 类的 start() 方法。 7. 什么是同步和异步?Java中如何实现同步和异步? 答案:同步是指程序按照顺序执行,每个操作需要等待上一个操作完成后才能执行下一个操作。异步是指程序不按照顺序执行,可以同时执行多个操作,并且不需要等待上一个操作完成。在Java中,可以使用 synchronized 关键字来实现同步,在方法或代码块中添加 synchronized 关键字,保证同一时刻只有一个线程执行该方法或代码块。异步可以通过使用线程池或 CompletableFuture 类来实现。 8. 什么是集合?Java中的集合框架包括哪些接口和类? 答案:集合是指一组对象的容器,可以存储和操作这些对象。Java中的集合框架包括以下接口和类: - Collection 接口:是所有集合类的基本接口,定义了基本的集合操作。 - List 接口:是有序集合,可以包含重复元素。 - Set 接口:是无序集合,不包含重复元素。 - Map 接口:是一种键值对的集合,可以用键来访问值。 Java中还有许多其他的集合类,包括 ArrayList、HashSet、HashMap、TreeSet、TreeMap 等。 9. 什么是反射?Java中如何使用反射? 答案:反射是指程序在运行时动态获取类的信息和调用类的方法。在Java中,可以通过 Class 类来获取类的信息,可以通过 Constructor 类来创建对象,可以通过 Method 类来调用方法。 10. 什么是序列化?Java中如何实现序列化和反序列化? 答案:序列化是指将对象转换成字节流的过程,可以将对象持久化到文件或网络中。Java中可以通过实现 Serializable 接口来实现序列化,可以使用 ObjectOutputStream 类将对象序列化为字节流,可以使用 ObjectInputStream 类将字节流反序列化为对象。 11. 什么是注解?Java中如何使用注解? 答案:注解是一种用于为程序元素添加元数据的方式,可以用于标记和配置程序。Java中可以通过在类、方法或字段前添加 @ 符号来使用注解。Java中提供了许多预定义的注解,包括 @Deprecated、@Override、@SuppressWarnings 等。可以通过自定义注解来扩展功能。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值