目录
一、Java类包
类包(包):
1. 每个类都隶属于一个类包;
2. 一个包中的类的类名不能重复,不同包中的类名不相互影响,但这样指定时就必须给出完整路径;
3. 类包(包)能有效避免同名类冲突的情况;
4. 同一个包中的类相互访问时,可以不指定包名;
5. 同一个包中的类不必放在同一个位置。如com.lzw.class1和com.lzw.class2可以一个放在C盘一个放在D盘,只要将CLASSPATH分别指向这两个位置即可。
1、包的创建
1)包的命名:命名规则:全部使用小写字母
Java中包名设计应与文件系统结构相对应。如一个包名为com.lzw,那么该包的类位于com文件夹下的lzw子文件夹下。
2)包的创建:
1---在Eclipse中创建包----右键src,new,package----按上述格式命名。
2---在类中定义包名----必须是文件中第一行非注释代码
package 包名;
当使用package关键字为类指定包名之后,包名将会成为类名中的一部分,则这个类必须指定全名。
package com.lzw; //指定包名
public class Math{
public static void main(String[] args){
System.out.prinln("不是java.lang.Math类,而是com.lzw.Math类");
}
}
2、导入包
1)使用import关键字导入包
import com.lzw.Math;
import com.lzw2.*;
a、如果类定义中已经导入com.lzw.Math类,在类体重在使用其他包中的Math类时则必须指定完整的带有包格式的类名。
b、在程序中添加import关键字时,就开始在CLASSPATH指定的目录中进行查找,查找子目录中com.lzw,然后从这个目录下编译完成的文件中查找是否有名称符合者,最后寻找到Math.class文件。
c、当使用import制定了一个包中的所有类时,并不会制定这个包的子包中的类。如果要用到这个包中的子类,需要再次对子包作单独引用。
d、
2)使用import导入静态成员变量
import static 静态成员;
可以在程序中直接引用这些导入的静态成员:
package com.lzw;
import static java.lang.Math.max; //导入静态成员方法
import static java.lang.System.out; //导入静态成员变量
public class ImportTest{
public static void main(String[] args){
out.prinln(max(1,4)); //在主方法中可以直接使用这些静态成员
}
}
二、final变量
private final double PI = 3.14; | 声明一个final常量。 不可以再改变该常量的值。 |
必须在声明时对该常量进行赋值。 定义为final的常量需要使用大写字母命名, 且中间用下划线连接。 |
private static final int VALUE = 10; | 声明一个final、static常量 |