最常问的Java面试题,有Get吗?

作者 : 开心源码 本文共1777个字,预计阅读时间需要5分钟 发布时间: 2022-05-12 共173人阅读

1. import java和javax有什么区别

刚开始的时候JavaAPI所必须的包是java开头的包,javax当时只是扩展API包来说使用。然而随着时间的推移,javax逐步的扩展成为Java API的组成部分。但是,将扩展从javax包移动到java包将是太麻烦了,最终会破坏一堆现有的代码。因而,最终决定javax包将成为标准API的一部分。

所以,实际上java和javax没有区别。这都是一个名字。

2. 接口和笼统类的区别是什么?

接口的方法默认是public,所有方法在接口中不能有实现,笼统类可以有非笼统的方法

接口中的实例变量默认是final类型的,而笼统类中则不肯定

一个类可以实现多个接口,但最多只能实现一个笼统类

一个类实现接口的话要实现接口的所有方法,而笼统类不肯定

接口不能用new实例化,但可以公告,但是必需引用一个实现该接口的对象 从设计层面来说,笼统是对类的笼统,是一种模板设计,接口是行为的笼统,是一种行为的规范。

3. 成员变量与局部变量的区别有那些?

从语法形式上,看成员变量是属于类的,而局部变量是在方法中定义的变量或者是方法的参数;成员变量可以被public,private,static等修饰符所修饰,而局部变量不能被访问控制修饰符及static所修饰;但是,成员变量和局部变量都能被final所修饰;

从变量在内存中的存储方式来看,成员变量是对象的一部分,而对象存在于堆内存,局部变量存在于栈内存

从变量在内存中的生存时间上看,成员变量是对象的一部分,它随着对象的创立而存在,而局部变量随着方法的调用而自动消失。

成员变量假如没有被赋初值,则会自动以类型的默认值而赋值(一种情况例外被final修饰但没有被static修饰的成员变量必需显示地赋值);而局部变量则不会自动赋值。

4. 创立一个对象用什么运算符?对象实体与对象引用有何不同?

new运算符,new创立对象实例(对象实例在堆内存中),对象引用指向对象实例(对象引用存放在栈内存中)。一个对象引用可以指向0个或者1个对象(一根绳子可以不系气球,也可以系一个气球);一个对象可以有n个引用指向它(可以用n条绳子系住一个气球)。

5. 什么是方法的返回值?返回值在类的方法里的作用是什么?

方法的返回值是指我们获取到的某个方法体中的代码执行后产生的结果!(前提是该方法可能产生结果)。返回值的作用:接收出结果,使得它可以用于其余的操作!

6. 一个类的构造方法的作用是什么?若一个类没有公告构造方法,改程序能正确执行吗?为什么?

主要作用是完成对类对象的初始化工作。可以执行。由于一个类即便没有公告构造方法也会有默认的不带参数的构造方法。

7. 构造方法有哪些特性?

名字与类名相同;

没有返回值,但不能用void公告构造函数;

生成类的对象时自动执行,无需调用。

8. 静态方法和实例方法有何不同?

在外部调用静态方法时,可以使用”类名.方法名”的方式,也可以使用”对象名.方法名”的方式。而实例方法只有后面这种方式。也就是说,调用静态方法可以无需创立对象。

静态方法在访问本类的成员时,只允许访问静态成员(即静态成员变量和静态方法),而不允许访问实例成员变量和实例方法;实例方法则无此限制.

9. 对象的相等与指向他们的引用相等,两者有什么不同?

对象的相等 比的是内存中存放的内容能否相等而引用相等 比较的是他们指向的内存地址能否相等。

10. 在调用子类构造方法之前会先调用父类没有参数的构造方法,其目的是?

帮助子类做初始化工作。

11. ==与equals(重要)

==?: 它的作用是判断两个对象的地址是不是相等。即,判断两个对象是不是同一个对象。(基本数据类型==比较的是值,引用数据类型==比较的是内存地址)

equals()?: 它的作用也是判断两个对象能否相等。但它一般有两种使用情况:

情况1:类没有覆盖equals()方法。则通过equals()比较该类的两个对象时,等价于通过“==”比较这两个对象。

情况2:类覆盖了equals()方法。一般,我们都覆盖equals()方法来两个对象的内容相等;若它们的内容相等,则返回true(即,认为这两个对象相等)。

?为了让学习变得轻松、高效,今天给大家免费分享一套Java教学资源。帮助大家在成为Java架构师的道路上披荆斩棘。需要资料的欢迎加入学习交流群:9285,05736

说明
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是摆设,本站源码仅提供给会员学习使用!
7. 如遇到加密压缩包,请使用360解压,如遇到无法解压的请联系管理员
开心源码网 » 最常问的Java面试题,有Get吗?

发表回复