2023-JAVA笔试选择题

1.下面中哪两个可以在A的子类中使用:( )

class A {

protected int method1 (int a, int b) {

return 0; }}

A. public int method 1 (int a, int b) { return 0; }

B. private int method1 (int a, int b) { return 0; }

C. private int method1 (int a, long b) { return 0; }

D. public short method1 (int a, int b) { return 0; }

解答:AC

主要考查子类重写父类的方法的原则

B,子类重写父类的方法,访问权限不能降低

C,属于重载

D,子类重写父类的方法 返回值类型要相同或是父类方法返回值类型的子类

2.抽象方法可以为静态吗?

A True

B False

解答:B

抽象方法可以在子类中被重写,但是静态方法不能在子类中被重写,静态方法和静态属性与对象是无关的,只与类有关,这与abstract是矛盾的,所以abstract是不能被修饰为static,否则就失去了abstract的意义了

3.下面关于变量及其范围的陈述哪些是不正确的( ):

A.实例变量是类的成员变量

B.实例变量用关键字static声明

C.在方法中定义的局部变量在该方法被执行时创建

D.局部变量在使用前必须被初始化

解答:BC

由static修饰的变量称为类变量或是静态变量

方法加载的时候创建局部变量

4.下列关于修饰符混用的说法,错误的是( ):

A.abstract不能与final并列修饰同一个类

B.abstract类中可以有private的成员

C.abstract方法必须在abstract类中

D.static方法中能处理非static的属性

解答 D

:静态方法中不能引用非静态的成员

5.执行完以下代码int [ ] x = new int[25];后,以下哪项说明是正确的( ):

A、 x[24]为0

B、 x[24]未定义

C、 x[25]为0

D、 x[0]为空

解答:A

x属于引用类型,该引用类型的每一个成员是int类型,默认值为:0

6.下列说法正确的有()

A. class中的constructor不可省略

B. constructor必须与class同名,但方法不能与class同名

C. constructor在一个对象被new时执行

D.一个class只能定义一个constructor

解答:C

构造方法的作用是在实例化对象的时候给数据成员进行初始化

A.类中如果没有显示的给出构造方法,系统会提供一个无参构造方法

B.构造方法与类同名,类中可以有和类名相同的方法

D.构造方法可以重载

7.下列哪种说法是正确的()

A.实例方法可直接调用超类的实例方法

B.实例方法可直接调用超类的类方法

C.实例方法可直接调用其他类的实例方法

D.实例方法可直接调用本类的类方法

解答:D

A. 实例方法不可直接调用超类的私有实例方法

B. 实例方法不可直接调用超类的私有的类方法

C.要看访问权限

8.下列哪一种叙述是正确的( )

A. abstract修饰符可修饰字段、方法和类

B. 抽象方法的body部分必须用一对大括号{ }包住

C. 声明抽象方法,大括号可有可无

D. 声明抽象方法不可写出大括号

解答:D

abstract可以修饰方法和类,不能修饰属性。抽象方法没有方法体,即没有大括号{}

9.链表具有的特点是:(选择3项)

A、不必事先估计存储空间

B、可随机访问任一元素

C、插入删除不需要移动元素

D、所需空间与线性表长度成正比

解答:ACD

A.采用动态存储分配,不会造成内存浪费和溢出。

B. 不能随机访问,查找时要从头指针开始遍历

C. 插入、删除时,只要找到对应前驱结点,修改指针即可,无需移动元素

D. 需要用额外空间存储线性表的关系,存储密度小

10.Java语言中,String类的IndexOf()方法返回的类型是?

A、Int16 B、Int32 C、int D、long

解答:C

indexOf方法的声明为:public int indexOf(int ch)

在此对象表示的字符序列中第一次出现该字符的索引;如果未出现该字符,则返回 -1。

19.以下关于面向对象概念的描述中,不正确的一项是()。(选择1项)

A.在现实生活中,对象是指客观世界的实体

B.程序中的对象就是现实生活中的对象

C.在程序中,对象是通过一种抽象数据类型来描述的,这种抽象数据类型称为类(class)

D.在程序中,对象是一组变量和相关方法的集合

解答:B

11…执行下列代码后,哪个结论是正确的 String[] s=new String[10];

A. s[9] 为 null;

B. s[10] 为 “”;

C. s[0] 为 未定义

D. s.length 为10

解答:AD

s是引用类型,s中的每一个成员都是引用类型,即String类型,String类型默认的值为null

s数组的长度为10。

12.属性的可见性有。(选择3项)

A.公有的

B.私有的

C.私有保护的

D.保护的

解答:ABD

属性的可见性有四种:公有的(public) 保护的(protected) 默认的 私有的(private)

13…在字符串前面加上_____符号,则字符串中的转义字符将不被处理。(选择1项)

A @

B \

C #

D %

解答:B

14.栈是一种。(选择1项)

A 存取受限的线性结构

B 存取不受限的线性结构

C 存取受限的非线性结构

D 存取不受限的非线性结构

解答:A

栈(stack)在计算机科学中是限定仅在表尾进行插入或删除操作的线性表。

15.下列哪些语句关于内存回收的说明是正确的。(选择1项)

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

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

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

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

解答:B

垃圾收集器在一个Java程序中的执行是自动的,不能强制执行,即使程序员能明确地判断出有一块内存已经无用了,是应该回收的,程序员也不能强制垃圾收集器回收该内存块。程序员唯一能做的就是通过调用System. gc 方法来”建议”执行垃圾收集器,但其是否可以执行,什么时候执行却都是不可知的。

16.那个方法是一个类实现java.lang.Runnable interface时要定义的?

A. void run()

B. public void run()

C. public void start()

D. void run(int priority)

E. public void run(int priority)

F. public void start(int priority)

解答:B

实现Runnable接口,接口中有一个抽象方法run,实现类中实现该方法。

17.char的值范围?

A. 0 … 32767

B. 0 … 65535

C. –256 … 255

D. –32768 … 32767

E. Range is platform dependent.

解答:B

在Java中,char是一个无符号16位类型,取值范围为0到65535。

18、 Which two declarations prevent the overriding of a method? (Choose Two)

A. final void methoda() {}

B. void final methoda() {}

C. static void methoda() {}

D. static final void methoda() {}

E. final abstract void methoda() {}

解答:AD

final修饰方法,在子类中不能被重写。

19、那两个创建了数组实例? (Choose Two)

A. int[] ia = new int [15];

B. float fa = new float [20];

C. char[] ca = “Some String”;

D. Object oa = new float[20];

E. Int ia [][] = (4, 5, 6) (1, 2, 3)

解答:AD
任何类的父类都是Object,数组也数据引用类型,Object oa = new float[20];这种写法相当于父类的用指向之类的实例。

20.下面关于import, class和package的声明顺序哪个正确?( )

A. package, import, class

B. class, import, package

C. import, package, class

D. package, class, import

解答:A

21.下面哪个是正确的?( )

A. String temp [] = new String {“a” “b” “c”};

B. String temp [] = {“a” “b” “c”}

C. String temp = {“a”, “b”, “c”}

D. String temp [] = {“a”, “b”, “c”}

解答:D

22.关于java.lang.String类,以下描述正确的一项是( )

A. String类是final类故不可以继承;

B. String类是final类故可以继承;

C. String类不是final类故不可以继承;

D. String类不是final类故可以继承; 解答:A

String类是final的,在java中final修饰类的不能被继承

23.关于实例方法和类方法,以下描述正确的是:( )

A. 实例方法只能访问实例变量

B. 类方法既可以访问类变量,也可以访问实例变量

C. 类方法只能通过类名来调用

D. 实例方法只能通过对象来调用

解答:D

A 实例方法可以访问类变量

B类方法只能访问类变量

C类方法可以通过对象调用

24.接口是Java面向对象的实现机制之一,以下说法正确的是:( )

A. Java支持多重继承,一个类可以实现多个接口;

B. Java只支持单重继承,一个类可以实现多个接口;

C. Java只支持单重继承,一个类只可以实现一个接口;

D. Java支持多重继承,但一个类只可以实现一个接口。

解答:B

Java支持单重继承,一个类只能继承自另外的一个类,但是一个类可以实现多个接口。

25.下列关于interface的说法正确的是:( )

A. interface中可以有private方法

B. interface中可以有final方法

C. interface中可以有function实现

D. interface可以继承其他interface

解答:D

A.接口中不可以有private的方法

B.接口中不可以有final的方法 接口中的方法默认是 public abstract的

C.接口中的方法不可以有实现

26.已知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类的实例

解答:C

不同包子类的关系, 可以访问到父类B的protected成员

27.给定如下代码,下面哪个可以作为该类的构造函数 ( )

public class Test {

}

A. public void Test() {?}

B. public Test() {?}

C. public static Test() {?}

D. public static void Test() {?}

解答:B

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

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

B. sleep不释放对象锁,wait放弃对象锁;

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

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

解答:D

sleep是线程类(Thread)的方法,导致此线程暂停执行指定时间,给执行机会给其他线程,但是监控状态依然保持,到时后会自动恢复。调用sleep不会释放对象锁。

wait是Object类的方法,对此对象调用wait方法导致本线程放弃对象锁,进入等待此对象的等待锁定池,只有针对此对象发出notify方法(或notifyAll)后本线程才进入对象锁定池准备获得对象锁进入运行状态。

29.下面能让线程停止执行的有(多选)( )

A. sleep();

B. stop();

C. notify();

D. synchronized();

E. yield();

F. wait();

G. notifyAll();

解答:ABDEF

sleep:导致此线程暂停执行指定时间

stop: 这个方法将终止所有未结束的方法,包括run方法。

synchronized():对象锁

yield:当前正在被服务的线程可能觉得cpu的服务质量不够好,于是提前退出,这就是yield。

wait:当前正在被服务的线程需要睡一会,醒来后继续被服务

30.提供Java存取数据库能力的包是()

A.java.sql

B.java.awt

C.java.lang

D.java.swing

解答:A

java.sql是JDBC的编程接口

java.awt和java.swing是做图像界面的类库

java.lang: Java 编程语言进行程序设计的基础类

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值