---
# System prepended metadata

title: import 靜態成員
tags: [ocpjp]

---

# import 靜態成員
**Question:**
```java=
package exam.ocpjp.v1.q053.clothing;

public class Shirt {
	public static String getColor() {
		return "Green";
	}
}
```

```java=
package exam.ocpjp.v1.q053.clothing.pants;

import static exam.ocpjp.v1.q053.clothing.Shirt.getColor;

public class Jeans {
	public void matchShirt() {
		String color = getColor();
		if(color.equals("Green")) {
			System.out.println("Fit");
		}
	}
	public static void main(String[] args) {
		Jeans trouser = new Jeans();
		trouser.matchShirt();
	}
}
```

- [參考網站](https://openhome.cc/Gossip/JavaGossip-V1/StaticImport.htm)
:::info
### 例子，Arrays 類別 中有很多的靜態方法，為了使用方便，可使用"import static"將這些靜態方法import至程式中，例如：
```java=
 import static java.lang.System.out;
 import static java.util.Arrays.sort;
 
 public class UseImportStatic {
    public static void main(String[] args) {
        int[] array = {2, 5, 3, 1, 7, 6, 8};

        sort(array);

        for(int i : array) {
            out.print(i + " ");
        }
    }
 }
```
### 如果您想要import類別下所有的靜態成員，可以使用 '*' 字元，例如：
```java=
import static java.lang.System.*;
import static java.util.Arrays.*;
 
public class UseImportStatic {
    public static void main(String[] args) {
        int[] array = {2, 5, 3, 1, 7, 6, 8};

        sort(array);

        for(int i : array) {
            out.print(i + " ");
        }
    }
} 
```
編譯時編譯器遇到該static方法名稱，就會自動讀取該類別的靜態方法，所以這還是編譯器給的蜜糖（Compiler suger）。
:::

###### tags: `ocpjp`