【package】java
<1>为了解决类的命名冲突问题,Java引入包(package)机制,提供类的多重类命名空间。app
<2>package做为源文件的第一条语句(缺省时指定为无名包),包的命名规范为:公司域名倒置.自定义包spa
<3>Java编译器把包对应于文件系统的目录管理,在package语句中,用'.'来指明包(目录)的层次,例如:rem
package com.nato;编译器
则该文件中全部的类位于\com\nato目录下域名
【注意】it
<1>必须保证该类的class文件位于正确目录下io
<2>必须保证class文件的最上层包(即com文件夹)的父目录位于classpath下(com文件夹父目录位于系统变量classpath下)编译
<3>执行一个类须要写全包名class
注:任何类找不到的问题,就须要设置classpath。
【Exception】
<1>Please remove or make sure it appears in the correct subdirectory of the classpath.
[请确认类是否在classpath的正确子目录下]
在这里应该在当前project目录下,新建文件夹com,而后在新建文件夹nato,再把目标文件放到这个目录下,这样才能与包
对应。
<2>cannot resolve symbol
[不能解析该符号]
未引入包;固然也能够写成com.nato.A a = new com.nato.A();
【import】
<1>若是将一个类打包,则使用该类时,必须使用该类的全名,这样Java编译器才会找到该类。
<2>能够不使用import语句直接使用java.lang包中的类。
【J2SDK】
查看JDK的文件夹:jre--lib--rt.jar--右击以压缩文件形式打开(WinRAR)--各类包
【打包】
定位到正确目录--jar--显示提示指令--jar -cvf com.nato *.*
--cvf(-c创建新的存档,-v生成详细输出到标准输出上,-f指定存档文件名)
--com.nato是想要生成的jar文件名称
--*.*(把当前目录和其子目录一块儿打包)
能够把本身打包好的文件放到classpath中,这样就能直接加载里面的类了。