Java 程序是由若干个类组成的,类也是面向对象编程思想的具体实现。
以下为类的定义:
public class User {
//私有属性
private Long userId;
private String name;
private Integer age;
// 构造方法
public User() {
}
//有残构造方法
public User(Long userId, String name, Integer age) {
this.userId = userId;
this.name = name;
this.age = age;
}
//普通方法
public void say() {
System.out.println("hello world");
}
// 对外包装属性
public String getName() {
return this.name;
}
}
关键字import的三种用法
单类型导入
当我们需要使用不同包下的类时,就需要使用 import 导入包或类,这个时候才能正常使用。例如,我们要使用java.util下的 ArrayList 就必须使用 import java.util.ArrayList,代码如下:
// 导入 ArrayList 类
import java.util.ArrayList;
class Test {
public static void main(String[] args) {
ArrayList list = new ArrayList();
}
}
按需类型导入
如果我们在同一个类中使用了同一个包下面的较多类时候,就会使用按需类型导入。
// 用到了java.util包目录下的List、ArrayList和LinkedList类
//import java.util.ArrayList;
//import java.util.LinkedList;
//import java.util.List;
//如果不想类上有太多import,就可以直接import 包名.*
import java.util.*;
public class Test {
public static void main(String[] args) {
List list = new ArrayList<>();
List list1 = new LinkedList();
}
}
这个只是表象,其实也是一个一个的导入的,只是在代码层面看起来是一次性全部倒入了。
静态导入
import 还可以导入静态方法和静态域的功能,比如以下代码:
//**精准导入**
//直接导入具体的静态变量、常量、方法方法,注意导入方法直接写方法名不需要括号。
import static com.assignment.test.StaticFieldsClass.staticField;
import static com.assignment.test.StaticFieldsClass.staticFunction;
//或者使用如下形式:
//**按需导入**不必逐一指出静态成员名称的导入方式
//import static com.assignment.test.StaticFieldsClass.*;
public class StaticTest {
public static void main(String[] args) {
//这里直接写静态成员而不需要通过类名调用
System.out.println(staticField);
staticFunction();
}
}
以上代码也可以顺利的执行,这也是 import 好玩的一个地方。