zoukankan      html  css  js  c++  java
  • Java package和import

    package

    • 包的 3 个作用如下:
      1.区分相同名称的类。
      2.能够较好地管理大量的类。
      3.控制访问范围。

    • Java 包的命名规则如下:
      1.包名全部由小写字母(多个单词也全部小写)。
      2.如果包名包含多个层次,每个层次用“.”分割。
      3.包名一般由倒置的域名开头,比如 com.baidu,不要有 www。
      4.自定义包不能 java 开头。
      注意:如果在源文件中没有定义包,那么类、接口、枚举和注释类型文件将会被放进一个无名的包中,也称为默认包。在实际企业开发中,通常不会把类定义在默认包下。

    • 所有的Java类都是放在同一个目录下面的,因此类之间的相互调用无需显式声明调用。
      -同一个目录下,两个类的名字不能相同。
      -文件过多,查找和修改都不易,且容易出错。

    • Java支持多个目录放置Java,并且通过package/import/classpath/jar等机制配合使用,可以支持跨目录放置和调用Java类。

    -package包和C++中的namespace类似。
    -在Java类文件的第一句话给出包的名称。

    //cn/edu/ecnu/PackageExample.java
    package cn.edu.encu;
    public class PackageExample {
    
    	
    }
    
    

    类全称cn.edu.encu.PackageExample,短名称 PackageExample 。

    • 引用类的时候,必须采用全称引用;程序正文可以用短名称。
    • PackageExample.java必须严格放置在cn/edu/ecnu目录下。

    -包名 package name尽量唯一。
    -域名是唯一的,因此常用域名做包名。
    -域名逆序 cn.edu.encu 范围通常从大到小。
    -类的完整名字:包名+类名。


    import

    如果使用不同包中的其它类,需要使用该类的全名(包名+类名)。代码如下:

    example.Test test = new example.Test();
    

    其中,example 是包名,Test 是包中的类名,test 是类的对象。

    为了简化编程,Java 引入了 import 关键字,import 可以向某个 Java 文件中导入指定包层次下的某个类或全部类。import 语句位于 package 语句之后,类定义之前。一个 Java 源文件只能包含一个 package 语句,但可以包含多个 import 语句。多个import的顺序无关。

    使用 import 导入单个类的语法格式如下:

    import 包名+类名;
    

    上面语句用于直接导入指定类,例如导入前面的 example.Test 类,代码如下:

    import example.Test;
    

    使用 import 语句导入指定包下全部类的用法按如下:

    import example.*;
    

    上面 import 语句中的星号(*)只能代表类,不能代表包,表明导入 example 包下的所有类。
    提示:使用星号( * )可能会增加编译时间,特别是引入多个大包时,所以明确的导入你想要用到的类是一个好方法,需要注意的是使用星号对运行时间和类的大小没有影响。

    通过使用 import 语句可以简化编程,但 import 语句并不是必需的,如果在类里使用其它类的全名,可以不使用 import 语句。
    Java 默认为所有源文件导入 java.lang 包下的所有类,因此前面在 Java 程序中使用 String、System 类时都无须使用 import 语句来导入这些类。但对于前面介绍数组时提到的 Arrays 类,其位于 java.util 包下,则必须使用 import 语句来导入该类。


    总结:

    • Java通过包(package)来分开类
      -package必须和目录层次一样。

    • Java通过引用(import)来导入类
      -import类尽量准确
      参考资料:
      http://c.biancheng.net/view/6084.html

  • 相关阅读:
    Vue2.0组件实现动态搜索引擎(一)
    6款 jQuery Lightbox图片查看触控插件
    js学习总结----移动端概述和hybird模式
    js学习总结----less常用的方法
    js学习总结----less的基础语法和使用
    js学习总结----less基础和编译
    js学习总结----柯里化函数
    js学习总结----案例分页之前端代码实现和请求处理
    js学习总结----案例分页之服务器内容和数据的处理
    js学习总结----案例分页之需求分析和制定api文档及测试数据
  • 原文地址:https://www.cnblogs.com/Acapplella/p/13366685.html
Copyright © 2011-2022 走看看