你的位置:首页 > Java教程

[Java教程]java包和jar包


1.包

package  pack;                             /*定义包,放在程序的第一行,包名所以字母小写*/


class PackageDemo
{
    public static void main(String[] args)
    {
        packa.DemoA a=new packa.DemoA();              /*编译时将会出现两个错误,
                                           1.类名错误(需要在类名前写指定包下的名字)   
                                           2.package包不在(包定义在别的目录下,需要设置变量(set=包所在的位置))
                                           3.权限不够,要足够大,设置成public,访问的成员也要public
                                           4.编译顺序,先编译要用的类
                                          */
        a.show();
    }
}
/*-d的使用*/
/*每一次添加一次文件,那不是很烦,所以,有一个参数给我们添加
  加-d .       两个空格隔开,就相当于添加了当前目录的包了
  以前没有包,是把当前目录当成默认包存在
  -d  还可以指定去其他目录  这样做能够将当前文件与运行程序相分离,这样做,我们只需要将程序给别人就可以
  (在其它盘的运行程序想要运行,必须设定类的位置,否则没有结果,就是设置环境环境变量,设置到副目录即可)
*/


/*不同包中的类该如何进行访问呢?在程序上面写了4个注意事项*/

/*包的特点*/
/*包可以写很多类,一个公有,其它私有,所以也具有封装性*/


/*包的总结
   包与包之间进行访问,被访问包中的类以及类中的成员,需要public访问
   不同包中的子类还可以直接访问父类中被protected访问的成员

   包与包之间可以使用的权限只有两种  public 和 protected
   复习:权限大于等于父类函数的权限才能覆盖
   一个包内不能出现两个公有类或者两个公有接口,必须新建一个包,不能集成
   多重包,也是用点
*/

/*为了简化类名的书写(创建类的对象在类名前要写很多包名,这很麻烦)
1.使用关键字  import(导入的意思)(格式:包名.类名)
2.导入了之后,直接创建对象即可
3.导入的是包中的类
4.加*  代表导入所有类(最后加*是导入子包中所有的类)
5.建议不要用通配符,因为这比较占用内存空间,用那个就加载那个,以后基本不用自己加
6.不同包有同一类名,那么要避免二义性,要在类名前加具体的包名
7.建立包名不要重复,可以使用url来完成定义,url是唯一的
8.包名怎么定义?   域名+包名(具体功能的缩写)
*/

 

package packa;

public class DemoA extends packb.DemoB   /*继承另一包里的类*/
{
    public static void main(String args[])
    {
        void show()
        {
            System.out.println("demoa show run");
            method();
        }
    }
}

 

 

package packb;

public class DemoB
{
    public static void main(String args[])
    {
        public void method()
        {
            System.out.println("demob method run");
        }
    }
}

 

 

 

2.jar包

/*Java的压缩包(什么是Jar包:用到jdk的工具 jar.exe)
1.方便项目的携带
2.方便于使用,只要在classPath设置jar路径即可
3.数据库驱动,SSH框架等都是以jar包实现的
*/

/*复习
1.编译,- d 对包的编译
2.运行  包名+类名
*/

/*怎么创建,与java等的工具使用类似
1.先了解
 -c  创建新的归档文件
 -t  列出归档目录
 -x  从档案中提取指定的 (或所有) 文件
 -u  更新现有的归档文件
 -v  在标准输出中生成详细输出
 -f  指定归档文件名
 -m  包含指定清单文件中的清单信息
 -e  为捆绑到可执行 jar 文件的独立应用程序
     指定应用程序入口点
 -0  仅存储; 不使用情况任何 ZIP 压缩
 -M  不创建条目的清单文件
 -i  为指定的 jar 文件生成索引信息
 -C  更改为指定的目录并包含其中的文件
 2.创建
 (要压缩包所在的目录)jar -cf  (压缩包名字 ***。jar)  (放进去的包名)
 3.查看
 jar -tf  (压缩包名字 ***。jar)
 4.使用jar包(平时都是从网上下载)
 1.下载来的jar包  看index文件(在doc里面)
 2.- cfv  -tvf   >路径.txt(可以显示的方式都用这个放在文挡下查看)
 
*/