Java---包(package)详解(包含各种编译运行问题)

文章目录

  • 一.包的简介
  • 二语法
  • 三.命名规范
  • 四.编译运行
    • 方法一
    • 方法二
    • 方法三
  • 五.import关键字
  • 六.java常见的包
  • 七.注意问题

一.包的简介

Java中为了更加方便地对类进行管理,(比如将不同功能的类放到不同软件包当中,相似功能的类放到相同的包当中,便于查找等)提供了包机制。

二语法

package pkg1[.pkg2[.pkg3…]];

三.命名规范

1.公司域名倒序+项目名+模块名+功能名
(防止出现重名,因为域名具有唯一性)

2.全部都要小写。

四.编译运行

方法一

编译前
hello World的源程序:

package chapter1;
public class helloWorld {
     
    public static void main(String []args){
     
        System.out.println("Hello World!");
    }
}

idea的界面
Java---包(package)详解(包含各种编译运行问题)_第1张图片
文件夹所在的界面
Java---包(package)详解(包含各种编译运行问题)_第2张图片

cmd进入chapter目录下使用javac 编译程序后,在chapter目录下生成.class文件,退到上一级子目录,java (.java文件名) 成功运行。
Java---包(package)详解(包含各种编译运行问题)_第3张图片

Java---包(package)详解(包含各种编译运行问题)_第4张图片

注意事项:
(1)如果编译成功,但使用java运行的时候找不到类,可能是系统环境变量没有配置成功。
(2)使用了包机制,我们的程序类名不再是helloWorld,而是chapter1.helloWorld所以要用chapter1.helloWorld的方式运行,所以我们要退回上一级使用完整类名运行。

方法二

javac -d (指定生成的.class文件所在路径) (.java所在路径)

Java---包(package)详解(包含各种编译运行问题)_第5张图片
不过我们在真实的开发过程中不会使用第二种方式。

注意,指定生成的.class文件所在路径如果写成点的方式,表示生成的文件在我们当前所在目录。

方法三

我们可以使用通配符对同一文件夹下的多个.java文件进行编译。

例如 javac -d . *.java 表示编译当前目录下所有.java文件放到当前目录之下。

五.import关键字

语法:

import package1[.package2…].(classname|*);

实例:
Java---包(package)详解(包含各种编译运行问题)_第6张图片

//helloWorld2
package chapter2;
public class helloWorld2 {
     
    public void kk(){
     
        System.out.println("Hello World 222");
    }
}
//helloWorld3
import chapter2.*;
public class helloWorld3 {
     
    public static void main(String [] args){
     
        System.out.println("Hello World");
        helloWorld2 p = new helloWorld2();
        p.kk();
    }
}

结果:
Java---包(package)详解(包含各种编译运行问题)_第7张图片

六.java常见的包

Java.lang

基础包,有String,NUmber,Object等。

java.lang.reflect

反射机制包,所有的设计从此开始。

java.util

工具类基础包,包括数据结构的定义。

java.io

进行输入输出流操作的程序包。

java.net

网络程序开发的程序包。

java.sql

进行数据库编程的开发包。

java.applet

Java最原始的程序,直接嵌套在网页上。

java.awt, java.swing

java的图形界面开发包。

七.注意问题

JVM的类加载器(classloader)从当前的路径加载。

你可能感兴趣的:(Java,jvm,java)