Java面试题二十五

栏目: Java · 发布时间: 6年前

内容简介:Java面试题二十五

1、下列关于构造方法的叙述中,错误的是()

A、 Java 语言规定构造方法名与类名必须相同

B、Java语言规定构造方法没有返回值,但不用void声明

C、Java语言规定构造方法不可以重载

D、Java语言规定构造方法通常通过new自动调用

正确答案:C    

扩展:

构造方法:用于完成对象属性的初始化工作,有如下特点:

(1)构造方法的名字必须和类名完全一样(包括大小写);

(2)构造方法没有返回值,连void也不会出现;

(3)如果认为没有给类创建一个构造方法,java编译器会自动给我们添加一个没有参数且方法体为空的构造方法。当然,如果已经人为的添加了一个构造方法,java编译器就不会给添加这个构造方法了。

(4)我们不能显式调用类的构造方法,构造方法通常只是通过new关键字隐式调用;

2、以下关于final的描述中,错误的是()

A、final可以用来修饰接口以及抽象类

B、final修饰的变量不允许被再次赋值

C、final修饰的类无法被继承

D、final修饰的变量需要初始化

正确答案:A    

扩展:

final不能修饰抽象类和接口。很明显,C选项说了final修饰的类无法被继承,修饰抽象类和接口毫无意义。

final关键字可以用来修饰类、方法、变量、参数。

一,修饰类

1、该类不能被继承。 

2、类中的方法不会被覆盖,因此默认都是final的。 

二,修饰方法

1、该方法可以被继承,但是不能被覆盖。 

2、好处:可以防止继承它的子类修改该方法的意义和实现;更为高效,编译器在遇到调用fianal方法转入内嵌机制,提高了执行效率。 

3、注意:父类中的private成员方法不能被子类覆盖,因此,private方法默认是final型的。

三,修饰变量

1、用final修饰后变为常量。包括静态变量、实例变量和局部变量这三种。 

2、特点:可以先声明,不给初值,这种叫做final空白。但是使用前必须被初始化。一旦被赋值,将不能再被改变。

四,修饰参数

1、用final修饰参数时,可以读取该参数,但是不能对其作出修改

3、以下关于被private修饰的成员变量的说法正确的是()

A、只能被同一个包中的类访问

B、只能被该类自身所访问和修改

C、可以被两种类访问和引用:该类本身、该类的所有子类

D、可以被三种类所引用:该类自身、与它在同一个包中的其他类、在其他包中的该类的子类

正确答案:B    

扩展:      

public:

具有最大的访问权限,可以访问任何一个在classpath下的类、接口、异常等。它往往用于对外的情况,也就是对象或类对外的一种接口的形式。

protected:

主要的作用就是用来保护子类的。它的含义在于子类可以用它修饰的成员,其他的不可以,它相当于传递给子类的一种继承的东西

default:

有时候也称为friendly,它是针对本包访问而设计的,任何处于本包下的类、接口、异常等,都可以相互访问,即使是父类没有用protected修饰的成员也可以。

private:

访问权限仅限于类的内部,是一种封装的体现,例如,大多数成员变量都是修饰符为private的,它们不希望被其他任何外部的类访问。

4、什么是LinkedHashSet()

A、是一个HashSet,保留了对象插入的顺序

B、是一个HashSet,拥有一个链表的性能

C、是一个HashSet,能很容易地转换为一个链表

D、HashSet对象的超类

正确答案:A          

扩展:

LinkedHashSet是HashSet的一个“扩展版本”,HashSet并不管什么顺序,不同的是LinkedHashSet会维护“插入顺序”。HashSet内部使用HashMap对象来存储它的元素,而LinkedHashSet内部使用LinkedHashMap对象来存储和处理它的元素。

5、关于以下程序代码的说明正确的是()

public class HasStatic {
private static int x = 100;

public static void main(String args[]) {
HasStatic hs1 = new HasStatic();
hs1.x++;
HasStatic hs2 = new HasStatic();
hs2.x++;
hs1 = new HasStatic();
hs1.x++;
HasStatic.x--;
System.out.println("x=" + x);
}
}

A、5行不能通过编译,因为引用了私有静态变量

B、10行不能通过编译,因为x是私有静态变量

C、程序通过编译,输出结果为:x=103

D、 程序通过编译,输出结果为:x=102

正确答案:D      

Java面试题二十五


以上所述就是小编给大家介绍的《Java面试题二十五》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

R语言实战(第2版)

R语言实战(第2版)

[美] Robert I. Kabacoff / 王小宁、刘撷芯、黄俊文等 / 人民邮电出版社 / 2016-5 / 99.00元

本书注重实用性,是一本全面而细致的R指南,高度概括了该软件和它的强大功能,展示了使用的统计示例,且对于难以用传统方法处理的凌乱、不完整和非正态的数据给出了优雅的处理方法。作者不仅仅探讨统计分析,还阐述了大量探索和展示数据的图形功能。新版做了大量更新和修正,新增了近200页内容,介绍数据挖掘、预测性分析和高级编程。一起来看看 《R语言实战(第2版)》 这本书的介绍吧!

Base64 编码/解码
Base64 编码/解码

Base64 编码/解码

XML、JSON 在线转换
XML、JSON 在线转换

在线XML、JSON转换工具

html转js在线工具
html转js在线工具

html转js在线工具