Java核心技术(初阶)知识点复习——[9]文件的分布式放置和import

Java支持多目录放置.java文件,并且通过package/import/classpath/jar等机制,以实现类的跨目录分布式放置和调用;

  通过引入包(package)来组织管理不同类的集合,解决了类命名冲突的问题,类位于包内;

  Java API(Application Programming Interfac)中提供的类接口就是通过封装在包内来使用的;

 1.package机制

  [1]一个package对应目录文件夹,必须放在第一行

  [2]package包名唯一,故常用域名作为包名;

  [3]如果两个类在同一个目录中,可以省略import关键字;

   可以用*引入一个目录下的所有类,比如import.java.lang*,但不能递归包含各个目录下的子目录文件,

   如java.lang.reflect.*包中内容在上一行import句中未能引入;

   不能同时import两个不同包中的同名类,只能通过类的全名来明确指出是哪个类;

注:不建议使用*引入,以避免出现不同包中出现同名类,导致指代不名的情况;

  [4]package和import的命令行

  (待补充)

 注:无论是jdk提供的类还是自己定义的包中的类,都必须用import语句标识使用类的全名,以通知编译器在编译时找到相应的类文件,但下述两种情况除外:

  1)位于同一个包内的类可以相互引用,不必使用import语句或类的全名,即friendly类内友好;

  2)在.java源程序中用到了Java类库中java.lang包中的类,可以直接引用,不必使用import语句或类的全名;因为Object类位于了java.lang包中;

2.jar机制

  [1]jar文件是Java所特有的一种文件格式,是一组.class文件的压缩包,用于可执行程序文件的传播;

  [2]jar文件只包括.class文件,本质上是字节码不可读,故可以起到保护源文件.java的作用;此外压缩包可以更方便的展示版本号,更易于版本控制;

  [3]Export方法比较简单;Import方法:右键→Properties→Java Build Path→Libraries→Add External JARs,从而直接使用外部类(但是看不见源码);

 

3.package机制引申出的Java访问控制机制

  [1]private:同一类内部;修饰成员变量、成员方法、构造函数;

   default(通常不写,写了反而会报错):同一包;修饰成员变量、成员方法、构造函数、类

   protected:不同包子类;修饰成员变量、成员方法、构造函数;

   public:不同包非子类;修饰成员变量、成员方法、构造函数、类;

注:这个是指在类内生成另外一个类的实例时,这个调用类的实例可以在当前类中使用的属性或方法;

  对于子类和父类,不需要new一个类的对象也可以直接出现调用父类的属性和方法;

   

 

posted @ 2020-04-19 21:03  小菜在路上  阅读(139)  评论(0编辑  收藏  举报