译:25个面试中最常问的问题和答案

原文连接:https://dzone.com/articles/top-25-java-interview-questions-amp-answershtml

做者:Pramod Kumar Srivastavajava

译者:GeekJunz面试

想要确保您的下一次Java面试成功吗? 查看这篇文章,了解有关常见Java面试问题的更多信息,以及面试技巧!spring

简介

做为最普遍使用和部署的语言,Java 是 Web 领域的三大核心技术之一。 它由 James Gosling,Patrick Naughton 和 Mike Sheridan 于 1991 年建立。这种高级语言凭借其一流的功能在IT行业中崭露头角,为开发人员提供了光明的将来。数据库

为什么如此重要?

在Java中,主要优势是它使开发人员可以编写在任何地方运行的代码( WORM ); 意思是不须要从新编译。 不管系统的体系结构如何,Java 编译的代码均可以在任何 JVM(Java 虚拟机)上运行,使其成为最普遍使用的计算机编程语言之一。 它是基于类和面向对象的。编程

采访阶段:

如下是面试过程的三个主要阶段:数组

阶段一:邀请

当您在但愿与之合做的组织申请工做时,雇主方面的第一步是审核。 在审核完简历后,若是您的表现(从简历中体现出来)很是适合该职位,您将收到面试邀请。 邀请能够经过各类形式发送,如电子邮件,电话,消息,甚至是信件。 可是,每一种形式都会保持专业,候选人也应如此。 请务必及时回复邀请。安全

阶段二:会议

下一阶段是第一轮面对面访谈。 这样作的主要目的是估计候选人的能力并了解他们的个性。 必须经过准时和专业的方式给雇主留下良好的第一印象。 突出你的优势,很是礼貌,接受你的弱点。 要自信而积极,但不要过分。多线程

阶段三:跟进

最后一个 - 固然不是 - 最不重要的阶段是跟进工做。 这个阶段能够成就或破坏机会。 必须采用专业的沟通方式进行后续工做。 您能够发送电子邮件,表达对面试时间安排的欣赏,对提供机会的感激之情,或者只是给他们打电话感谢和咨询工做相关的内容。并发

最多见的面试问题

1.在 Java 中类的定义
在 Java 中,类是用于建立对象和定义数据类型的模板。 它充当面向 Java 语言的系统的构建块。

2.静态加载和动态加载有什么区别?
静态类加载涉及使用新关键字来建立对象和实例,而动态加载是在编译时不知道类的名称的场景执行的。

3. 什么是多线程
多线程是一种编程概念,用于在单个程序中以并发方式运行多个任务。

4. 什么时候以及是谁开发的 Java ?
Java 由 James Gosling 于 1995 年在 Sun Microsystem 中开发。

5. JDK,JRE 和JVM 分别表明什么?

  • JVM 表明 Java 虚拟机
  • JRE 表明 Java Runtime Environment
  • JDK 表明 Java Development Kit

6. Java 中使用指针吗?
不,Java不使用指针。 它具备严格的安全性。 而不是指针,Java中使用引用,由于与指针相比,它们更安全,更安全。

7.如何使用Java链接数据库?
使用Java链接数据库的步骤以下:

  • 注册驱动程序类
  • 建立链接
  • 建立声明
  • 执行查询
  • 关闭链接

8. JVM和JRE的功能是什么?
JVM 为要执行的 Java 字节代码提供运行时环境。 JRE 包括 JVM 在运行时期间所需的文件集。

9.重载和覆盖(重写)有什么区别?
当有两个名称相同但属性不一样的方法时,它会重载。 当有两个具备相同名称和属性的方法时,会发生覆盖,一个在子类中,另外一个在父类中。 查看此帖子以得到更深刻的分析。

10.哈希基于集合的负载因子的默认大小是多少?
默认大小为0.75,默认容量计算以下:初始容量*负载因子

11.什么是包?
包是相关类和接口的集合。

12.全部异常类的基类是什么?
Java.lang.Throwable 是全部异常类的超类,全部异常类都是从这个基类派生的。

13. equals()和= =之间有什么区别?
equals()方法用于检查业务逻辑定义的两个对象的相等性。
== 或等于运算符用于比较基元和对象。

14.说两个内部类和子类之间的差别
Inner类在同一个文件中,子类能够在另外一个文件中。 考虑到这一点,虽然子类具备其父类的方法,但内部类获取他们想要的方法。

15.如何用Java定义析构函数?
因为Java有本身的垃圾收集,所以不须要定义析构函数。 垃圾收集机制自动执行对象的回收。

16. JSON定义
JSON是JavaScript Object Notation的首字母缩写。 它使用JavaScript语法,格式仅为文本。

17.列举Java最重要的特性
Java是一种独立于平台的语言。

18.什么是匿名类?
使用new关键字在单行代码中没有名称定义的类称为匿名类。

19.什么是JVM?
JVM是Java虚拟机,它是已编译的Java类文件的运行时环境。

20.死去的线程能够从新开启吗?
不,处于死状态的线程没法再次启动。

21. 数组是原始数据类型吗?
不,在Java中,数组是对象。

22.什么是Java中的构造函数?
在Java中,构造函数是用于初始化对象的代码块。

23.有哪些类型的构造器?
有两种类型的构造函数:
1.默认构造函数:
没有参数的构造函数称为默认构造函数。 若是咱们没有在类中定义构造函数,编译器会为该类建立一个默认构造函数(没有参数),以下所示:

// no-argument constructor importjava.io.*; class Sprint { intnum; String name; // this would be invoked while object // of that class created. Sprint() { System.out.println("Constructor called"); } } class Z { publicstaticvoidmain (String[] args) { // this would invoke default constructor. Sprint zeal1 = new Sprint(); // Default constructor provides the default // values to the object like 0, null System.out.println(zeal1.name); System.out.println(zeal1.num); } } 

2.参数化构造函数
2.参数化构造函数具备已知参数的构造函数是参数化构造函数。 若是咱们想用本身的值初始化类的字段,那么使用*参数构造函数。

// Java Program to illustrate calling of // parameterized constructor. import java.io.*; class Sprint { // data members of the class. String name; int id; // contructor would initialized data members // with the values of passed arguments while // object of that class created. Sprint(String name, int id) { this.name = name; this.id = id; } } class Z { public static void main (String[] args) { // this would invoke parameterized constructor. Sprint zeal1 = new Sprint("adam", 1); System.out.println("Sprint Name :"+ zeal1.name +" and Sprint Id :" + zeal1.id); } } 

24.解释Java中的垃圾收器。
在Java中,当再也不使用或引用对象时,将调用垃圾收集并自动销毁对象。

25.堆栈和队列之间有什么区别?
堆栈和队列之间的区别在于堆栈基于后进先出(LIFO)原则,而队列基于FIFO(先进先出)原则。

其余面试技巧

在讨论了采访阶段和常见的面试问题后,咱们在此列出了一些快速面试技巧,以帮助您完成面试:

  • 准时,准时出现
  • 随时准备谈论您的成就 - 不管是我的仍是专业
  • 检查您的语言并避免使用填充物
  • 浏览职位描述并找到您能够谈论的关键要求
  • 在回答以前,请仔细聆听并花些时间收集您的想法
  • 穿着和行为专业。
  • 避免打断面试官
  • 携带全部必要的文件
  • 对公司进行简要研究并了解他们的需求
  • 感谢面试官的时间,并对批评也要礼貌

总结

咱们已经尝试收集访谈所需的全部基本信息,但咱们知道Java是一个很大的主题,也能够提出其余几个问题。 根据您申请的行业类型准备面试,这里提供的一些示例答案因行业类型而异。

总而言之,要诚实和积极 - 它超越全部其余品质!

http://www.spring4all.com/article/1483

相关文章
相关标签/搜索