zoukankan      html  css  js  c++  java
  • 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一个类的对象也可以直接出现调用父类的属性和方法;

       

  • 相关阅读:
    [每日一讲] Python系列:浅拷贝与深拷贝
    [每日一讲] Python系列:变量、内存管理与传递
    [每日一讲] Python系列:字典
    [每日一讲] Python系列:列表与元组
    [已开源/文章教程]独立开发 一个社交 APP 的源码/架构分享 (已上架)
    从选择到上传,可能是最贴心的高仿朋友圈编辑了
    完整的社交app源码android+laravel
    基于Laravel+Swoole开发智能家居后端
    APP架子迁移指南(三)
    Laravel如何优雅的使用Swoole
  • 原文地址:https://www.cnblogs.com/li7anStrugglePath/p/12733510.html
Copyright © 2011-2022 走看看