核心 Java 面试问题,一问一答题。一问多答题

Q. 如果主方法被声明为私有怎么办?

回答:

该程序可以正确编译,但在运行时它会给出“Main method not public”。信息。

Q. Java中的引用传递和值传递是什么意思?

回答:

通过引用传递意味着传递地址本身而不是传递值。按值传递意味着传递值的副本

问:如果您要覆盖对象的 equals() 方法,您还可以考虑哪种其他方法?

回答:

哈希码()

Q. 说明 public static void main(String args[]) 的每个关键字的原因?

回答:

public – main(..) 是执行程序时由 java 环境调用的第一个方法,因此必须从 java 环境访问它。因此访问说明符必须是公开的。

static:Java 环境应该能够在不创建类实例的情况下调用该方法,因此该方法必须声明为静态。

void : main不返回任何内容,因此返回类型必须为 void

参数 String 表示在命令行中给出的参数类型,而 arg 是在命令行中给出的字符串的数组。

问:如果我不提供字符串数组作为方法的参数怎么办?

回答:

程序编译。但在运行时会抛出错误“NoSuchMethodError”。

Q. 为什么 oracle Type 4 驱动被命名为 oracle 瘦驱动?

回答:

Oracle 提供了 Type 4 JDBC 驱动程序,称为 Oracle “瘦”驱动程序。该驱动程序包括其自己的完全用Java 编写的Oracle Net8 的TCP/IP 版本的实现,因此它独立于平台,可以在运行时下载到浏览器,并且在客户端不需要任何Oracle 软件。此驱动程序需要服务器端的 TCP/IP 侦听器,并且客户端连接字符串使用 TCP/IP 端口地址,而不是数据库名称的 TNSNAMES 条目。

问:什么是 Java API?

回答:

Java API 是大量现成软件组件的集合,它们提供了许多有用的功能,例如图形用户界面 (GUI) 小部件。

问:什么是 GregorianCalendar 类?

回答:

GregorianCalendar 提供对传统西方日历的支持。

问:什么是 ResourceBundle 类?

回答:

ResourceBundle 类用于存储特定于语言环境的资源,这些资源可以由程序加载,以根据正在运行的特定语言环境定制程序的外观。

问:为什么 Java 中没有全局变量?

回答:

全局变量是全局可访问的。由于以下原因,Java 不支持全局可访问变量:

全局变量打破了引用透明性

全局变量在命名空间中产生冲突。

问:什么是 SimpleTimeZone 类?

回答:

SimpleTimeZone 类提供对公历的支持。

问:while 语句和 do 语句有什么区别?

回答:

while 语句(预测试)在循环开始时检查是否应该发生下一个循环迭代。do while 语句(后测)在循环结束时检查是否应该发生循环的下一次迭代。do 语句将始终至少执行一次循环体。

问:什么是 Locale 类?

回答:

Locale 类用于根据特定地理、政治或文化区域的惯例定制程序输出。

Q. 描述 OOPS 的原则。

回答:

oops 的三个主要原理分别称为多态性、继承性和封装性。

Q. 解释继承原则。

回答:

继承是一个对象获取另一个对象的属性的过程。继承允许重用经过良好测试的过程,并使更改只需进行一次并在所有相关位置生效

问:什么是隐式转换?

回答:

隐式转换是简单地将一个实体分配给另一个实体的过程,而不需要对编译器进行任何转换指导。这种类型的转换不允许在所有类型的转换中使用,并且可能不适用于所有场景。

问:sizeof 是 java 中的关键字吗?

回答:

sizeof 不是关键字。

问:什么是本地方法?

回答:

本机方法是用 Java 以外的语言实现的方法。

Q. 在 System.out.println() 中,什么是 System、out 和 println?

回答:

System 是预定义的 final 类,out 是 PrintStream 对象,println 是 out 对象中的内置重载方法。

问:什么是显式转换?

回答:

在编译器被明确告知转换对象的过程中的显式转换

问:什么是 Java 虚拟机 (JVM)?

回答:

Java 虚拟机是可以移植到各种基于硬件的平台上的软件

问:你对向下转换的理解是什么?

回答:

Downcasting的过程是指从一般类型到更具体的类型的转换,即向下转换层次结构

Q. 哪个类是每个类的超类?

回答:

目的。

Q. 命名原始 Java 类型。

回答:

8 种基本类型是 byte、char、short、int、long、float、double 和 boolean。另外是字符串。

问:布尔 & 运算符和 && 运算符有什么区别?

回答:

如果计算涉及布尔 & 运算符的表达式,则计算两个操作数,而 && 运算符是快捷运算符。当计算涉及 && 运算符的表达式时,将计算第一个操作数。如果第一个操作数返回值 true,则计算第二个操作数。如果第一个操作数的计算结果为假,则跳过第二个操作数的计算。

问:Java 如何处理整数上溢和下溢?

回答:

它使用结果的那些低位字节,这些字节可以适合操作允许的类型的大小。

问:如果我写的是 static public void 而不是 public static void 怎么办?

回答:

程序编译并正常运行。

问:声明变量和定义变量有什么区别?

回答:

在声明中我们只提到变量的类型和它的名字而不初始化它。定义意味着声明+初始化。例如字符串;只是一个声明 while String s = new String ("bob"); 或字符串 s = “鲍勃”;都是定义。

问:Java 支持什么类型的参数传递?

回答:

在 Java 中,参数(基元和对象)总是按值传递。对于对象,对象引用本身是按值传递的,因此原始引用和参数副本都引用同一个对象。

Q. 解释封装原理。

回答:

封装是将数据和对数据进行操作的代码绑定或包装到单个实体中的过程。这使数据免受外部接口和误用的影响。对象允许将过程与它们的数据一起封装以减少潜在的干扰。考虑封装的一种方法是作为保护性包装器,防止代码和数据被包装器外部定义的其他代码任意访问。

Q. 你对变量的理解是什么?

回答:

变量是一个命名的内存位置,可以在程序中轻松引用。该变量用于保存数据,并且可以在程序执行过程中更改。

Q. 你对数字提升的理解是什么?

回答:

Numeric 提升是将较小的数值类型转换为较大的数值类型,以便可以进行整数和浮点运算。在数值提升过程中,byte、char 和 short 值被转换为 int 值。如有必要,int 值也会转换为 long 值。根据需要,long 和 float 值转换为 double 值。

Q. 用 java 语言进行强制转换是怎么理解的?铸造的种类有哪些?

回答:

将一种数据类型转换为另一种数据类型的过程称为 Casting。Java中有两种类型的强制转换;这些是隐式转换和显式转换。

Q. main 方法中 String 数组的第一个参数是什么?

回答:

字符串数组为空。它没有任何元素。这与默认情况下第一个元素是程序名称的 C/C++ 不同。如果我们在命令行中不提供任何参数,那么 main 方法的 String 数组将为空但不为 null。

问:如何证明数组不是空的而是空的?

回答:

打印array.length。它将打印 0。这意味着它是空的。但如果它为空,那么它会在尝试打印 array.length 时抛出 NullPointerException。

问:一个应用程序可以有多个具有主方法的类吗?

回答:

是的。在启动应用程序时,我们提到要运行的类名。JVM 将仅在您提到的名称的类中查找 main 方法。因此,具有 main 方法的多个类之间不存在冲突。

Q. 什么时候加载静态变量?它是在编译时还是运行时?何时在 Java 中加载静态块?

回答:

当类加载器将类带到 JVM 时会加载静态变量。不必创建对象。静态变量在加载后将被分配内存空间。静态块中的代码仅加载/执行一次,即当类首次初始化时。一个类可以有任意数量的静态块。静态块不是类的成员,它们没有返回语句,不能直接调用。不能包含 this 或 super。它们主要用于初始化静态字段。

Q. 解释 Java 虚拟机 (JVM) 的工作原理?

回答:

JVM和其他真实的计算机一样是一个抽象的计算机,它首先使用编译器将.java文件转换为.class文件(.class只是字节码文件。)解释器读取字节码。

. 什么是数据封装?

回答:

可以通过在用于访问对象字段的类 (JAVABEAN) 中创建“get”和“set”方法来使用封装。通常,这些字段是私有的,而 get 和 set 方法是公共的。封装可用于验证要存储的数据,对存储在一个或多个字段中的数据进行计算,或用于自省(例如,在 Struts 中使用 javabeans 时经常出现这种情况)。将数据和功能包装成一个单元称为数据封装。封装只不过是将数据和相关方法封装到一个单元中,这样就可以在相关方法的帮助下访问数据。封装提供数据安全性。这不过是数据隐藏。

Q. 什么是反射 API?它们是如何实施的?

回答:

反射是在运行时自省类的特性和状态并在运行时动态操作的过程。使用带有内置类(如类、方法、字段、构造函数等)的反射 API 支持这一点。示例:使用 Java 反射 API,我们可以使用 getName 方法获取类名。

Q. JVM 自己维护缓存吗?JVM 是否在堆中分配对象?这是操作系统堆还是JVM维护的堆?为什么

回答:

是的,JVM 自己维护一个缓存。它在 HEAP 上创建对象,但对这些对象的引用位于堆栈上。

Q. 什么是幻象记忆?

回答:

幻影记忆是错误的记忆。现实中不存在的记忆。

问题:命名使用边框布局作为默认布局的容器?

回答:

默认使用边框布局的容器有:window、Frame 和 Dialog 类。

如果本文对你有帮助,别忘记给我个3连 ,点赞,转发,评论,‘不积跬步,无以至千里”,希望未来的你能成为:有梦为马 随处可栖!加油,为大家收集了最新的面试资料,有文档、有攻略、有视频。有需要的同学可以关注+点赞私信博主免费领取

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 218,941评论 6 508
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 93,397评论 3 395
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 165,345评论 0 356
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,851评论 1 295
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,868评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,688评论 1 305
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,414评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,319评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,775评论 1 315
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,945评论 3 336
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 40,096评论 1 350
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,789评论 5 346
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,437评论 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,993评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,107评论 1 271
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,308评论 3 372
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 45,037评论 2 355

推荐阅读更多精彩内容