zoukankan      html  css  js  c++  java
  • Java基础教程(13)--包

      为了使类型更易于查找,避免命名冲突和访问控制,我们应该使用包来对自己定义的类型进行管理。这里说的类型可以是类、接口、枚举和注解(枚举和注解的内容会在后续教程中介绍)。使用包来管理我们的代码,有以下几个目的:

    • 便于查找:将相似或相关的类型放在同一个包下,项目整体的结构更加清晰,同时也有助于自己和其他人在使用时可以轻松地找到对应的类型。
    • 避免命名冲突:如果自己代码中的类型与其他已经存在的类型同名,使用包来创建新的命名空间可以避免命名冲突。
    • 访问控制:对于使用public修饰的类型来说,在本包或其他包中都可以使用这个类型;对于没有使用访问修饰符的类型来说,则只能在本包中进行访问,其他包中的类型则无法访问。

    1.包的命名规则

      包的命名满足以下规则:

    1. 包名建议全部小写,以避免与类或接口的名称冲突;
    2. 父包和子包之间使用点(.)隔开;
    3. 建议将公司的互联网域名以逆序的形式作为包名,例如某公司的域名为example.xyz,则mypackage包的命名为xyz.example.mypackage;

    2.将类型放入包中

      要想将一个类型放进包中,首先需要在源文件中使用package语句。package语句的语法是package关键字后面跟上这个类型所在的包。这条语句要放在源文件的开头,例如:

    package xyz.example.mypackage;
    
    public class Demo {
        ...
    }
    

      如果没有在源文件中添加package语句,这个类型就被放在一个默认包中。一般来说,不推荐使用默认包,建议将每一个自己定义的类型都放在对应的包中。
      将一个类型放进包中不但要在源文件中使用package语句,还要将源文件放在与包名匹配的目录中。例如,xyz.example.mypackage包中的源文件应该被放置在目录xyz/example/mypackage中。

    3.使用包中的类型

    (1)使用完整的包名
      在要使用的类型前加上完整的包名,就可以在程序中使用这个类型了,例如:

    java.util.List<String> list = new java.util.ArrayList<>();
    

    (2)导入类型
      在每个类型前使用完整的包名显然很繁琐,更常用的方式是使用import语句。在import关键字后面跟上具体类型的完整路径即可将该类型导入当前源文件。例如,上面的例子可以写成:

    import java.util.List;
    import java.util.ArrayList;
    ...
    List<String> list = new ArrayList<>();
    

    (3)导入整个包
      还可以使用import导入某个包下所有的类型。就像下面这样:

    import java.util.*;
    

      需要注意的是,*代表该包下所有的类型,但不包括子包。如果要导入子包或子包中的类型,则需要另外的import语句。
    (4)静态导入
      import语句不仅可以导入类型,还可以导入静态方法和静态域。例如,如果在源文件的顶部添加一条语句:

    import static java.lang.System.out;
    

    就可以使用System类的静态方法和域,而不必加类名前缀:

    out.println("Hello, World!");
    
  • 相关阅读:
    关于DOM与BOM
    常用单位及颜色表
    关于Grid
    form表单
    自我介绍
    python——3种字符串反转方法
    JavaScript 正则表达式
    关于JavaScript的DOM和BOM
    CSS颜色表示的几种方式
    CSS的常用单位介绍
  • 原文地址:https://www.cnblogs.com/maconn/p/9974297.html
Copyright © 2011-2022 走看看