java包
—— CSDN 原创文章
包语句是java文件的第一条语句,且最多一条。语法如下:
package 包名[.包名][...];
举个例子:
代码目录结构:
/* * @Author: bpf * @FilePath: \Learn in the Internet\Code\java\cnblogs\myPack\Point.java */package cnblogs.myPack; // 包语句public class Point { String name = null; float x; // x坐标 float y; // y坐标 public Point() { // 默认构造方法 } public Point(float a, float b) { // 构造方法重载 x = a; y = b; } public Point(float a, float b, String s) { // 构造方法重载 x = a; y = b; name = s; } public void showPoint() { // 显示点的信息 if(name != null) System.out.printf("%s(%.2f, %.2f)\n", name, x, y); else System.out.printf("p(%.2f, %.2f)\n", x, y); } public double distance(Point p) { //计算两点距离 return Math.sqrt(Math.pow((p.x - x), 2) + Math.pow((p.y - y), 2)); }}class Test { public static void main(String args[]) { Point O = new Point(0, 0, "O"); Point A = new Point(3, 4, "A"); System.out.printf("d(OA) = %f\n", A.distance(O)); }}
编译时,当前目录应位于第一个包的上级目录下,如:在D:/Code目录下创建com.my.HelloWorld包,编译时应位于D:/Code位置下。
javac 包名[\包名]\源文件
举个例子:
运行时,目录位置与上述相同。
java 包名[.包名].主类
举个例子:
导包语句的数量不限,语法如下," .* "表示导入包中的所有类。
import 包名[.包名][.类名|.*];
前面说过,java.lang是Java的核心类,系统会自动导入。因此,每个文件中会有下面一个语句,所以,我们使用Math类、String类等是不需要导入的。
import java.lang.*;
举个例子:就上面的Point.java文件为例,编写位于外部的java文件导入Point类。
/* * @Author: bpf * @FilePath: \Learn in the Internet\Code\java\E.java */import cnblogs.myPack.Point;public class E { public static void main(String args[]) { Point O = new Point(0, 0, "O"); Point A = new Point(3, 4, "A"); O.showPoint(); A.showPoint(); System.out.printf("d(OA) = %f\n", A.distance(O)); }}
静态导包只导入类中的静态属性,即类变量。语法如下:
import static 包名[.包名].类名.类变量名|.*;
举个例子:计算圆面积。
/* * @Author: bpf * @FilePath: \Learn in the Internet\Code\java\E.java */import static java.lang.Math.PI;public class E { public static void main(String args[]) { int r = 125; double area = PI * r * r; System.out.println(area); }}
其类封装位于java.lang包中,类名分别为:Boolean、Byte、Short、Character、Integer、Long、Float、Double
联系客服