1.4-java入口函数Main和package功能
1.4-java入口函数Main和package功能
java入口函数Main和package功能
文章目录
前言
上一节介绍了使用idea编写一个最简单的java程序。
这一节简要介绍:main函数,package的概念
一、Main函数
main函数,是java程序运行的入口函数,main函数的写法为:
public static void main(String[] args) {
//程序代码
}
如果你代码中没有main函数,程序将不能独立的运行起来。
1、在idea中新建工程
在src目录点右键,新建java class JavaGrammar.java
内容为:
public class JavaGrammar {
public static void main(String[] args) {
System.out.println("Hello,你好!");
}
}
鼠标右键 运行(或者按 ctrl + shift + F10):
能正常运行,打印出:
2、没有main函数会是什么样
现在,我们把main改成 xxx,
public class JavaGrammar {
public static void xxx(String[] args) {
System.out.println("Hello,你好!");
}
}
再次鼠标右键,发现,没有 run *** 的选项,这是因为 idea没有找main函数,所以没有提供运行的操作。
打开cmd,进入JavaGrammar.java所在的目录,
执行 :javac JavaGrammar.java
如果出现以上错误(中文字符编码问题),则用记事本打开,另存为,编码选ANSI,覆盖保存。
再次执行javac JavaGrammar.java编译这个文件。
然后执行:java JavaGrammar
可见,使用java的命令执行没有main函数的程序,是不能成功的,会提示找不到main方法。
到此,相信各位对main函数是java程序运行的入口函数,有一定的体会了。
二、体会package的作用
将上面的JavaGrammar.java文件编码格式用记事本打开,另存为 utf-8格式,删除刚才生成的JavaGrammar.class文件,将刚才修改的xxx,改回main,idea的工程结构如下:
按 ctrl + shift + F10 运行,
在硬盘上找到JavaGrammar.java,和JavaGrammar.class的位置,分别为:
E:\new\1.4\1.4-JavaGrammar\src
E:\new\1.4\1.4-JavaGrammar\out\production\1.4-JavaGrammar
在idea的src目录,右键-new-package,新建一个包,名称输入com然后按回车,再将JavaGrammar.java拖动到com里,点refactor。
package com;
public class JavaGrammar {
public static void main(String[] args) {
System.out.println("Hello,你好!");
}
}
再次按 ctrl + shift + F10 运行(idea会先执行编译,然后再运行),在硬盘上找到JavaGrammar.java,和JavaGrammar.class的位置,分别为:
E:\new\1.4\1.4-JavaGrammar\src\com
E:\new\1.4\1.4-JavaGrammar\out\production\1.4-JavaGrammar\com
可以发现,源代码的位置,和编译后的字节码文件的位置,都根据包名新增了一级目录。
在idea中,再次建一个包,选中src,右键-new-package,
输入:com.my.first
回车
然后将JavaGrammar.java拖到first下,可见第一行的包名发生了变化。
运行程序,再次检查文件在硬盘上的位置,发现 package com.my.first 将产生3个目录层级,
做完以上操作,应该能体会到java语言中包的作用:将代码按目录层级进行分类管理。
包的命名通常是根据公司的域名反过来写,再加上功能模块名组成,比如 阿里巴巴数据库连接池工具druid的包命名为:com.alibaba.druid.*