Java面试 | 002

本博客 猫叔的博客,转载请申明出处

前言

本系列为猫叔综合整理的Java面试题系列,若有雷同不胜荣幸。java

Java与C/C++的差别?

  • 一、java为解释性语言、而C/C++为编译型语言。
  • 二、java为面向对象语言,C++则兼具面向过程和面向过程编程的特色。
  • 三、就垃圾回收而言,C++中有析构函数,而Java则是finalize()方法。
  • 四、Java提供了JDBC、分布式对象的RMI等库。

为何须要public static void main(String[] args)这个方法

  • 一、public权限修饰符,任何类、对象都可访问;
  • 二、static标记为静态方法,存储在静态存储区;
  • 三、main是JVM识别的特殊方法名;
  • 四、args为开发人员在命令行状态下雨程序交互提供的手段。
  • 五、即使如此,main函数也不是最早执行的方法!!!

如何在main函数以前输出“HELLO WORLD!”

因为静态块在类被加载时就会被调用,所以能够在main()方法执行前,利用静态块实现输出“HELLO WORLD”的功能。git

Java程序初始化的顺序是怎么样的?

  • 一、静态对象(变量)优先于非静态对象(变量)的初始化,其中,静态对象只初始化一次,而非静态变量能够初始化屡次;
  • 二、父类优先于子类进行初始化;
  • 三、按照成员变量的定义顺序进行初始化

Java做用域

做用域与可见性 当前类 同一package 子类 其余package
public YES YES YES YES
private YES NO NO NO
protected YES YES YES NO
default YES YES NO NO

一个java文件能否定义多个类

能够定义多个类,可是最多只能有一个类被public修饰,而且这个类的类名与文件名相同。github

公众号:Java猫说

现架构设计(码农)兼创业技术顾问,不羁平庸,热爱开源,杂谈程序人生与不按期干货。

Image Text

相关文章
相关标签/搜索