面试题笔试-带答案-1

2023-10-26

一. 选择题(234)

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.Abstract method cannot be static. True or False ? A True
B False

解答:A

抽象方法可以在子类中被重写,但是静态方法不能在子类中被重写,静态方法和静态属性与对象是 无关的,只与类有关,这与 abstract 是矛盾的,所以 abstract 是不能被修饰为 static,否则就 失去了 abstract 的意义了
3.What will be the output when you compile and execute the following program. class Base
{

void test() {

System.out.println(“Base.test()”);

}

}

public class Child extends Base { void test() { System.out.println(“Child.test()”);
}

static public void main(String[] a) { Child anObj = new Child();
Base baseObj = (Base)anObj;

baseObj.test();

}

}

Select most appropriate answer. A Child.test()
Base.test()

B Base.test() Child.test()
C Base.test()

D Child.test()

解答:D

测试代码相当于:Base baseObj = new Child();父类的引用指向子类的实例,子类又重写了父类 的 test 方法,因此调用子类的 test 方法。
4.What will be the output when you compile and execute the following program. class Base
{

static void test() { System.out.println(“Base.test()”);
}

}

public class Child extends Base {

void test() { System.out.println(“Child.test()”); Base.test(); //Call the parent method
}

static public void main(String[] a) {

new Child().test();

}

}

Select most appropriate answer. A Child.test()
Base.test()

B Child.test() Child.test()
C Compilation error. Cannot override a static method by an instance method D Runtime error. Cannot override a static method by an instance method 解答:C
静态方法不能在子类中被重写

5.What will be the output when you compile and execute the following program. public class Base{
private void test() { System.out.println(6 + 6 + “(Result)”);
}

static public void main(String[] a) {

new Base().test();

}

}

Select most appropriate answer. A 66(Result)

B 12(Result)

C Runtime Error.Incompatible type for +. Can’t convert an int to a string. D Compilation Error.Incompatible type for +. Can’t add a string to an int. 解答:B
字符串与基本数据类型链接的问题,如果第一个是字符串那么后续就都按字符串处理,比如上边例子要 是 System.out.println("(Result)"+6 + 6 );那么结果就是(Result)66,如果第一个和第二个。。。 第 n 个都是基本数据第 n+1 是字符串类型,那么前 n 个都按加法计算出结果在与字符串连接
6…What will be the output when you compile and execute the following program. The symbol ’

⌴ ’ means space.

1:public class Base{

2:

3: private void test() {

4:

5: String aStr = "⌴ One⌴ ";

6: String bStr = aStr;

7: aStr.toUpperCase();

8: aStr.trim();

9: System.out.println("[" + aStr + “,” + bStr + “]”);

7: }

8:

9: static public void main(String[] a) {

10: new Base().test();

11: }

12: }

Select most appropriate answer. A [ONE,⌴ One⌴ ]
B [⌴ One⌴ ,One]

C [ONE,One] D [ONE,ONE]
E [⌴ One⌴ ,⌴ One⌴ ]

解答:E

通过 String bStr = aStr;这句代码使 bStr 和 aStr 指向同一个地址空间,所以最后 aStr 和 bStr 的结 果应该是一样,String 类是定长字符串,调用一个字符串的方法以后会形成一个新的字符串。
7.下面关于变量及其范围的陈述哪些是不正确的( ):

A.实例变量是类的成员变量 B.实例变量用关键字 static 声明 C.在方法中定义的局部变量在该方法被执行时创建 D.局部变量在使用前必须被初始化
解答:BC

由 static 修饰的变量称为类变量或是静态变量 方法加载的时候创建局部变量
8.下列关于修饰符混用的说法,错误的是( ): A.abstract 不能与 final 并列修饰同一个类 B.abstract 类中可以有 private 的成员 C.abstract 方法必须在 abstract 类中 D.static 方法中能处理非 static 的属性
解答 D

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

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

A、 x[24]为 0

B、 x[24]未定义

C、 x[25]为 0

D、 x[0]为空 解答:A
x 属于引用类型,该引用类型的每一个成员是 int 类型,默认值为:0

10.编译运行以下程序后,关于输出结果的说明正确的是 ( ):

public class Conditional{

public static void main(String args[ ]){

int x=4;

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

}
}
A、 输出结果为:value is 99.99
B、 输出结果为:value is 9
C、 输出结果为:value is 9.0
D、 编译错误

解答:C

三目运算符中:第二个表达式和第三个表达式中如果都为基本数据类型,整个表达式的运算结果 由容量高的决定。99.9 是 double 类型 而 9 是 int 类型,double 容量高。
11.关于以下 application 的说明,正确的是( ):

1. class StaticStuff

2. {
3. static int x=10;
4. static { x+=5;}
5. public static void main(String args[ ])
6. {

7. System.out.println(“x=” + x);

8. }
9. static { x/=3;}
10. }

A、 4 行与 9 行不能通过编译,因为缺少方法名和返回类型

B、 9 行不能通过编译,因为只能有一个静态初始化器

C、 编译通过,执行结果为:x=5

D、编译通过,执行结果为:x=3 解答:C 自由块是类加载的时候就会被执行到的,自由块的执行顺序是按照在类中出现的先后顺序执行。
12.关于以下程序代码的说明正确的是( ):

1.class HasStatic{

2. private static int x=100;

3. public static void main(String args[ ]){

4. HasStatic hs1=new HasStatic( );
5. hs1.x++;
6. HasStatic hs2=new HasStatic( );
7. hs2.x++;
8. hs1=new HasStatic( );
9. hs1.x++;
10. HasStatic.x–;

11. System.out.println(“x=”+x);

12. }

13.}

A、5 行不能通过编译,因为引用了私有静态变量 B、10 行不能通过编译,因为 x 是私有静态变量 C、程序通过编译,输出结果为:x=103
D、程序通过编译,输出结果为:x=102

解答:D

静态变量是所有对象所共享的,所以上述代码中的几个对象操作是同一静态变量 x, 静态变量可以通 过类名调用。
13.下列说法正确的有()

A. class 中的 constructor 不可省略

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

C. constructor 在一个对象被 new 时执行 D.一个 class 只能定义一个 constructor 解答:C
构造方法的作用是在实例化对象的时候给数据成员进行初始化 A.类中如果没有显示的给出构造方法,系统会提供一个无参构造方法 B.构造方法与类同名,类中可以有和类名相同的方法 D.构造方法可以重载
14.下列哪种说法是正确的() A.实例方法可直接调用超类的实例方法 B.实例方法可直接调用超类的类方法

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

D.实例方法可直接调用本类的类方法 解答:D
A. 实例方法不可直接调用超类的私有实例方法

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

C.要看访问权限

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

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

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

C. 声明抽象方法,大括号可有可无 D. 声明抽象方法不可写出大括号 解答:D
abstract 可以修饰方法和类,不能修饰属性。抽象方法没有方法体,即没有大括号{}

16.下面代码的执行结果是?

import java.util.*;

public class ShortSet{

public static void main(String args[])

{

Set s=new HashSet();

for(Short i=0;i<100;i++)

{

s.add(i);

s.remove(i-1);

} System.out.println(s.size());
}

} A.1
B.100

C.Throws Exception

D.None of the Above

解答:B

i 是 Short 类型 i-1 是 int 类型,其包装类为 Integer,所以 s.remove(i-1);不能移除 Set 集合中 Short

类型对象。

17.链表具有的特点是:(选择 3 项) A、不必事先估计存储空间 B、可随机访问任一元素 C、插入删除不需要移动元素 D、所需空间与线性表长度成正比 解答:ACD
A.采用动态存储分配,不会造成内存浪费和溢出。

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

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

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

18.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
20…执行下列代码后,哪个结论是正确的 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。
21.属性的可见性有。(选择 3 项) A.公有的
B.私有的 C.私有保护的 D.保护的 解答:ABD
属性的可见性有四种:公有的(public) 保护的(protected) 默认的 私有的(private)

22…在字符串前面加上 符号,则字符串中的转义字符将不被处理。(选择 1 项) A @
B \ C # D %
解答:B

23.下列代码哪行会出错: (选择 1 项)

  1. public void modify() {

  2. int I, j, k;

  3. I = 100;

  4. while ( I > 0 ) {

  5. j = I * 2;

  6. System.out.println (" The value of j is " + j );

  7. k = k + 1;

  8. I–;

  9. }

  10. } A. 4
    B. 6

C. 7

D. 8

解答:C

k 没有初始化就使用了

24.对记录序列{314,298,508,123,486,145}按从小到大的顺序进行插入排序,经过两趟排序后的 结果为:(选择 1 项)
A {314,298,508,123,145,486} B {298,314,508,123,486,145} C {298,123,314,508,486,145} D {123、298,314,508,486,145} 解答:B
插入排序算法:

public static void injectionSort(int[] number) {

// 第一个元素作为一部分,对后面的部分进行循环

for (int j = 1; j < number.length; j++) {

int tmp = number[j];

int i = j - 1;

while (tmp < number[i]) { number[i + 1] = number[i]; i–;
if (i == -1)

break;

}

number[i + 1] = tmp;

}

}

25.栈是一种。(选择 1 项) A 存取受限的线性结构
B 存取不受限的线性结构

C 存取受限的非线性结构

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

解答:A

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

26.下列哪些语句关于内存回收的说明是正确的。(选择 1 项) A 程序员必须创建一个线程来释放内存
B 内存回收程序负责释放无用内存

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

D 内存回收程序可以在指定的时间释放内存对象 解答:B
垃圾收集器在一个 Java 程序中的执行是自动的,不能强制执行,即使程序员能明确地判断出有一块内 存已经无用了,是应该回收的,程序员也不能强制垃圾收集器回收该内存块。程序员唯一能做的 就是通过调用 System. gc 方法来"建议"执行垃圾收集器,但其是否可以执行,什么时候执行却 都是不可知的。
27.Which method must be defined by a class implementing the 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,实现类中实现该方法。

28 Given:

public static void main(String[] args) { Object obj = new Object() {
public int hashCode() {

return 42;

}

}; System.out.println(obj.hashCode());
}

What is the result?

A. 42

B. An exception is thrown at runtime.

C. Compilation fails because of an error on line 12. D. Compilation fails because of an error on line 16. E. Compilation fails because of an error on line 17. 解答:A
匿名内部类覆盖 hashCode 方法。

29 Which two are reserved words in the Java programming language? (Choose two) A. run
B. import

C. default

D. implements

解答:BD

import 导入包的保留字,implements 实现接口的保留字。

  1. Which two statements are true regarding the return values of property written hashCodeand equals methods from two instances of the same class? (Choose two)
    A. If the hashCode values are different, the objects might be equal. B. If the hashCode values are the same, the object must be equal.
    C. If the hashCode values are the same, the objects might be equal.

D. If the hashCode values are different, the objects must be unequal.

解答:CD

先通过 hashcode 来判断某个对象是否存放某个桶里,但这个桶里可能有很多对象,那么我们就需要再 通过 equals 来在这个桶里找到我们要的对象。
31. What is the numerical range of a char? A. 0 … 32767
B. 0 … 65535

C. –256 … 255

D. –32768 … 32767

E. Range is platform dependent.

解答:B

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

  1. Given:

public class Test {

private static float[] f = new float[2]; public static void main(String args[]) { System.out.println(“f[0] = “ + f[0]);
}

}

What is the result? A. f[0] = 0
B. f[0] = 0.0

C. Compilation fails.

D. An exception is thrown at runtime.

解答:B

  1. Given:

public class Test {

public static void main(String[] args) { String str = NULL; System.out.println(str);
}

}

What is the result? A. NULL
B. Compilation fails.

C. The code runs with no output.

D. An exception is thrown at runtime.

解答:B

null 应该小写

34、Exhibit:

1.public class X implements Runnable {

  1. private int x;

  2. private int y;

  3. public static void main(String [] args) {

  4. X that = new X();

  5. (new Thread(that)).start();

  6. (new Thread(that)).start();

  7. }

  8. public synchronized void run( ){

  9. for (;

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

面试题笔试-带答案-1 的相关文章

随机推荐

  • 鲍鱼数据集数据分析和可视化,线性回归预测鲍鱼年龄(基于TensorFlow)

    一 数据集描述 Name Data Type Meas Description Sex nominal M F and I infant Length continuous mm Longest shell measurement Diam
  • 详解·高通Vuforia识别追踪3D物体/模型,Unity开发

    研究这个问题的初衷 1 公司要做一个识别3D物体的案例 参考了各个平台 发现EasyAR和Vuforia支持3D物体识别与追踪 2 刚开始用EasyAR做 但做了一半发现有一定的限制 1 必须Pro版本的EA插件才能支持3D物体识别与追踪
  • 简单电子产品的蓝牙电路设计和PCB设计

    最近做的项目中的电子产品都有用到蓝牙模块 所以简单来讲一讲 在原理图设计时 需要在天线与模块射频输出管脚预留一个 型网络 天线的阻抗受PCB的铺地 天线的安装以及周围的金属等因素影响 预留这个网络是为了在天线严重偏离50欧姆阻抗时 将其匹配
  • (AcWing)高精度乘法

    给定两个非负整数 不含前导 00 AA 和 BB 请你计算 A BA B 的值 输入格式 共两行 第一行包含整数 AA 第二行包含整数 BB 输出格式 共一行 包含 A BA B 的值 数据范围 1 A的长度 1000001 A的长度 10
  • [计算机网络] HTTP协议

    计算机网络 HTTP协议 文章目录 计算机网络 HTTP协议 一 工作方式 二 HTTP报文详解 1 请求报文 1 1 报文结构 1 2 组成1 请求行 1 3 组成2 请求头 1 4 组成3 请求体 1 5 总结 2 响应报文 2 1 状
  • Fiddler抓包工具(手机使用)

    一 参数配置 1 启动Fiddler 打开菜单栏中的Tools gt Options 打开 Options 对话框 2 在 Options 对话框切换到 HTTPS 选项卡 然后勾选 Decrypt HTTPS traffic 后面的复选框
  • EndNote使用手册(无图版)

    含图笔记在有道云笔记中 https note youdao com s E1MiEzk8 文章目录 1 软件安装 2 EndNote软件界面 2 1 设置Library 2 2 导入文献 3 文献管理 3 1 文献分组 3 2 查看文献原文
  • conda install nb_conda出错

    问题 conda install nb conda 一直solving environment 或者显示http400 换成pip install notebook 依旧不行 换成其他源 亲测此时中科大源有效 清华 https pypi t
  • 程序员接私活的6个网站,你有技术就有钱!

    点击上方 Python高校 关注 未未干货立马到手 作者 发哥 链接 GitHubDaily 本篇文章会向大家推荐国内外几个接外包比较靠谱的平台 主旨是贵精不贵多 因此 像 猪x戒 这种会让程序员自贬身价 扰乱市场规则的网站 便不会出现在下
  • 标准的产品设计工作流程

    每个产品团队都会有自己的工作流程 无论这个工作流程是否最高效 是否体现最大价值 但是我认为只要这个流程能够为实现工作目标提供过程的保障就可以算是好的流程 对于流程本身而言 可以因团队不同或工作任务不同而有差异 一个成熟度的产品团队可以在保证
  • 阿里云服务器无法外网访问的坑

    最近各大平台在促销云服务器 于是买了阿里云的window 10服务器 于是坑来了 简单安装nginx后 以为像其他服务器一样 公网IP访问就 了 没想到搞了好久 最后发现如下帖子 https www cnblogs com kekelele
  • 学习笔记-Midjourney的关键词详解

    大家好啊 我是了不起 前一段时间ChatGPT突然火爆 大佬们纷纷下场 我也跟着努力学习 做了一些笔记 下面将陆续放出笔记 共享给小伙伴们 这是放出的第七篇 和小伙伴们与时俱进哈 Midjourney 关键词详解 为了方便小伙伴们能够更好的
  • 每天一个Python基础编程题——九九乘法表

    请用for循环打印出九九乘法表 上三角 for low in range 1 10 for row in range 1 low 1 print lt 2 format row low low row end print
  • (Mac)如何下载、安装并注册VMware Fusion虚拟机软件(Mac专用)

    写在前面 前一阵子写了一篇关于 如何下载 安装并注册VMware Workstation Pro虚拟机软件 的文章 但是有一部分用户用的是Mac 发现没有VMware Workstation Pro的Mac版本 还不愿意用价格更昂贵的pd
  • String面试题

    如何判断一个字符串中某个字符出现的次数 听到该问题 我脑海中第一反应是先把字符串转换为字符数组 然后使用foreach循环 在循环体内进行字符比对 代码如下所示 public static void main String args Str
  • GB28181-2022相对2016版“基于TCP协议的视音频媒体传输要求“调整

    规范解读 GB28181 2022针对 基于TCP协议的视音频媒体传输 实时点播 历史视频回放与下载中 TCP媒体传输重连机制 做了说明 修改后的 基于TCP协议的视音频媒体传输要求 如下 实时视频点播 历史视频回放与下载的TCP媒体传输应
  • centos7升级gcc7.1.0(libstdc++.so.6: version `CXXABI_1.3.8' not found)

    260254 w26 260254 bin source activate venv 260254 w26 260254 bin python Python 3 7 2 default Mar 25 2019 11 03 20 GCC 4
  • 哪些是常见的敏感异常Java_java敏感异常有哪些

    java敏感异常有 1 java io FileNotFoundException 泄露文件系统结构和文件名列举 2 java util jar JarException 泄露文件系统结构 java敏感异常有 1 java io FileN
  • 阶乘之和

    问题描述 输入n 计算S 1 2 3 n 的末6位 不含前导0 n lt 10 6 n 表示前n个正整数之积 样例输入 10 样例输出 37913 实现代码 include
  • 面试题笔试-带答案-1

    一 选择题 234 1 下面中哪两个可以在 A 的子类中使用 class A protected int method1 int a int b return 0 A public int method 1 int a int b retu