Java 中 import 语句和 static import 语句的区别是什么?
我们可以使用 import 语句**导入特定包的类和接口**。当使用 import 语句时,不需要使用**完全限定名**,可以直接使用**简短名称**。我们可以使用**static import**来**导入特定类和包的静态成员**。当使用**static import**时,**不需要使用类名**来访问静态成员,可以直接使用。
import 语句
- 要从另一个包访问类或方法,我们需要使用**完全限定名**,或者可以使用**import**语句。
- 类或方法也必须是可访问的。可访问性基于**访问修饰符**。
- **私有**成员只能在同一个类中访问。因此,即使使用完全限定名或 import 语句,我们也无法访问私有成员。
- Java 会自动将**java.lang**包导入我们的代码中。
示例
import java.util.Vector;
public class ImportDemo {
public ImportDemo() {
//Imported using keyword, hence able to access directly in the code without package qualification.
Vector v = new Vector();
v.add("Tutorials");
v.add("Point");
v.add("India");
System.out.println("Vector values are: "+ v);
//Package not imported, hence referring to it using the complete package.
java.util.ArrayList list = new java.util.ArrayList();
list.add("Tutorix");
list.add("India");
System.out.println("Array List values are: "+ list);
}
public static void main(String arg[]) {
new ImportDemo();
}
}输出
Vector values are: [Tutorials, Point, India] Array List values are: [Tutorix, India]
静态导入语句
- **静态导入**将导入所有静态数据,以便可以**无需类名**使用。
- **静态导入**声明有两种形式:一种导入特定静态成员,称为**单个静态导入**;另一种导入类的所有**静态成员**,称为**按需静态导入**。
- 静态导入在**Java 5 版本**中引入。
- 使用静态导入的优点之一是**减少按键次数和提高可重用性**。
示例
import static java.lang.System.*; //Using Static Import
public class StaticImportDemo {
public static void main(String args[]) {
//System.out is not used as it is imported using the keyword stati.
out.println("Welcome to Tutorials Point");
}
}输出
Welcome to Tutorials Point
广告
数据结构
网络
关系数据库管理系统 (RDBMS)
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP