【package】
 

<1>为了解决类的命名冲突问题,Java引入包(package)机制,提供类的多重类命名空间。

<2>package作为源文件的第一条语句(缺省时指定为无名包),包的命名规范为:公司域名倒置.自定义包
<3>Java编译器把包对应于文件系统的目录管理,在package语句中,用\’.\’来指明包(目录)的层次,例如:
       package com.nato;
       则该文件中所有的类位于\com\nato目录下
【注意】
<1>必须保证该类的class文件位于正确目录下
<2>必须保证class文件的最上层包(即com文件夹)的父目录位于classpath下(com文件夹父目录位于系统变量classpath下)
<3>执行一个类需要写全包名
注:任何类找不到的问题,就需要设置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中,这样就能直接加载里面的类了。
 
 
 
 
 
 
 

版权声明:本文为yedushusheng原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/yedushusheng/p/4354728.html