《2023年java面试题(含答案).docx》由会员分享,可在线阅读,更多相关《2023年java面试题(含答案).docx(2页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、2023年java面试题(含答案)1 .不用main方法如何定义一个类?不行,没有main方法我们不能运行Java类。在Java 7之前,你可以通过使用静态初始化运行Java类。但是,从Java 7开始就行不通了。2 .main()方法需要的参数不是字符串数组?不是的,main。方法的参数必须是字符串数组。但是,在引进变参时,你可以将字符串类型的变参作为参数传递给main() 方法。变参一定得是数组。package com. instanceofjava;public class MainMethod public static void ma in (String args).我们能不能改变
2、main。方法的返回类型?不能,main。方法的返回类型只能是空。任何其它类型都是不能接受的。package com. instanceofjava;public class A public static int main (String args) : return 1; /run time error : No main method found.main()方法为什么必须是静态的?main。方法一定是静态的。如果main。允许是非静态的,那么在调用main方法时,JVM就得实例化 它的类。在实例化时,还得调用类的构造函数。如果这个类的构造函数有参数,那么 届时就会出现歧义。例如,在下面
3、的程序中,在实例化类A的时候,JVM传递什么参数? package com. instanceofjava;public class Apublic MainMethod (int i) (/Con structor taking one argument public void main (String args)/main me thod as non-static).我们能不能声明main。方法为非静态?不能,main。方法必须声明为静态的,这样JVM才可以调用main。方法而 无需实例化它的类。如果从main。方法去掉static这个声明,虽然编译依然可以成功,但在 运行时会导致程序失
4、败。package com. instanceofjava;public class A public void main(String args) System.out. printin(indhu);/Run time error).我们能否重载main。方法?可以,我们可以重载main。方法。一个Java类可以有任意数量的main() 方法。为了运行java类,类的main。方法应该有例如public static void main(String args)M的声明。如果你对此声明做任何修改,编译也是可以 成功的。但是,运行不了 Java程序。你会得到运行时错误,因为找不到 main方
5、法。package com. instanceofjava;public class A public static void main(String 口 args)System.out.print In(Indhu); void main(int args)System. out. p rintIn (Sindhu) ; long main (int i, long d) System. out. printin (,zSai deshw); return d;.我们能否声明main。方法为private或protected ,或 者不用访问修饰符?不能,main。方法必须public。你不
6、能定义main。方法为private和 protected ,也不能不用访问修饰符。这是为了能让JVM访问main。方法。如果你不定义main。方法为public , 虽然编译也会成功,但你会得到运行时错误,因为找不到main方法。package com. i nstanceofjava;public class Aprivate static void main (Strin g args)/Run time error).我们能否在Java中覆盖main方法?不能,你不能在Java中覆盖main方法。这是因为main方法是静态方法, 而在Java中静态方法在编译时会结合在一起,所以你在Java中不能覆盖静 态方法。3 .我们能否在Java中终结main方法?你可以在Java中终结main方法。JVM对此没问题。4 .我们能否在Java中同步main方法?是的,main方法可以在Java中同步,synchronized修饰符允许用于 main方法的声明中,这样就可以在Java中同步main方法了。