首页 > 技术文章 > java基础知识

xiawenyu 2016-05-12 22:35 原文

1java语言优点:

  (1)java 是纯面向对象语言

  (2)平台无关性

  (3)java提供了很多的内置的库类

  (4)提供了对Web应用开发的支持

  (5) 具有较好的安全性和健壮性

  (6) 取消了C++当中难以理解的易混淆的概念 如 指针

 

2、为什么需要public static void mian (String [] args)这个方法

答:java程序入口

static 表明这是一个静态方法,即方法中的 代码是存储在静态代码区的,只要类被加载后,就可以通过使用该方法而不需要通过实例化对象来访问,可以直接通过类名.mian() 直接访问。

viod 表示无返回值。

main() 是java虚拟机识别的特殊方法名。

string[] args 为程序员在命令行下与程序交互提供了一种手段

引申:main()是否还有其他定义格式?

1)由于public 与 static 没有先后顺序,所以下面的定义格式也是对的

static public void mian (String[] args)

2) 也可以把main() 方法定义为final。

public static  final viod main(String[] args)

3)也可以用synchronized 来修饰mian()方法。

static public sybnchronized void mian(String[]   args)

总之:不管哪种定义方式,都必须保证main() 方法的返回值为void,并且有static 与public 关键字修饰。由于mian()是程序的入口方法,因此不能用 abstract 关键字来修饰。

3、同一个.java 文件里是否可以有多个mian() 方法?

虽然每个类中都可以定义mian()方法,但只有与文件名相同的用public修饰的类中的mian()方法才能作为程序的入口方法。如下例:

package test;
class T{
 public static void mian(String[] args){
  System.out.println("T mian");
 }
}
public class MianTest {
 //程序入口函数
 public static void main(String[] args) {
  System.out.println("Test mian 入口");
 }
}

 

运行结果:

Test mian 入口

 

4、实现main() 方法执行前输出“hello world!”

方案:通过静态代码块来实现,因为静态代码块在类被加载时就会被调用

package test;

public class HelloWorld {
 public static void main(String[] args) {
  System.out.println("hello world1111!");
 }
 static{
  System.out.println("hello World22222!");
 }
}

 

程序运行结果:

hello World22222!
hello world1111!

 

推荐阅读