Java基础--package

package

包(package)

  1. 对文件进行分类管理;
  2. 给类提供多层命名空间;
  3. 写在程序文件的第一行;
  4. 类名的全称是 包名.类名;
  5. 包也是一种封装的形式;

关键字:package

  1. 要放在程序文件的第一行,包名所哟字母小写;

    package packa;
    public class DemoA //extends packb.DemoB
    {
    public  void show()
    {
        System.out.println("demoa show run");   
    }
    }
    
  2. 有包的源文件在编译时要带参数编译命令格式为:
    javac -d 存储文件路径;
    注:若为javac -d,表示存放在当前目录下;

  3. 有package的源代码编译后将会在当前目录下自动生成名为包名的文件夹,所有该源码的class文件全部存放在该文件夹内;
  4. package编译的文件在执行是要输入全名,即:包名.类名;

知识点:类前面加了public后类名必须要与java文件名保持一致,一个java文件里边不能出现两个以上的公有类或者接口;

定义包时的相关问题

  1. 当在一个包中建立其他包中类的对象是,必须要写类名的全名或者先通过import导入该类的目录,否则找不到类文件;
  2. 如果引用的其他包不在当前目录下,需要设置classpath,告诉jvm指定包的位置;
  3. 包与包之间进行访问,被访问的包中的类以及类中的成员,需要public修饰,不同包中的子类还可以直接访问父类中被protected(关键字:权限修饰符)权限修饰的成员;

    package packb;
    public class DemoB 
    {
    protected /*保护*/ void method()
    {
        System.out.println("demoB method run");
    }
    }

    包与包之间可以使用的权限只有两种:pubic 、 protected;

  4. 相关权限的使用范围:

    权限修饰符publicprotecteddefaultprivate
    同一个类中
    同一个包中
    子类
    不同包中

关键字:import(导入)

  1. 为了简化类名的书写,import导入的是包中的类,通过该关键字导入某目录下的类后,新建对象就无需再加包名;
  2. 建议,不要写通配符:”*”,需要用到包中的哪个类,就导入哪个类;
  3. 注意:当多个包中有相同类时,且都导入了,新建对象时就必须要写类全名;
  4. 建议定义包名不要重复,可以使用url来完成定义,url是唯一的;
    例:某网站:www.address.cn;
    定义包名:package cn.address.demo;

    import packa.*;
    import packb.*;
    class  PackageDemo
    {
    public static void main(String[] args) 
    {
        DemoC c = new DemoC();
    //      packa.DemoA d = new packa.DemoA();
    //      d.show();
    //      packb.DemoB d = new packb.DemoB();
    //      d.method();
    }
    }
    

扩展:
java.lang : java的核心包 jdk1.2版本以后,该包中的类自动导入。
java.awt: 用于制作图形界面。
java.io:input output 用于操作设备上的数据。
java.util : 这里定义是java的工具类。集合,日期。
java.net:用于网络通讯的。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值