Java (자바) 독학 제어문 _ 인터페이스 (Interface)
1. 인터페이스 (Interface)
- 다른 클래스의 틀이 되거나 중간 매개 역할을 하는 일종의 추상 클래스
- 객체를 생성하지 못함
- 구현(inplements)을 위해 사용
- 부모 클래스는 각 클래스당 1개만 확정받을 수 있지만, 부모 인터페이스는 여러 개 구현 가능
- 특정 클래스가 구현해서 해당 메소드를 재정의(오버 라이딩)해서 사용해야 함.
- 변수를 선언할 때 맴버 변수(대입이 가능한 변수)를 선언할 수 없음
- 변수를 선언할 경우에는 상수 (constant)로 갖을 수 있음
- e.g.
class: private int age;
interface: public static final int AGE = 10;
** final이 붙은 변수에는 더 이상 값 대입이 불가능
- 메소드를 선언할 때에는 추상(abstract) 메소드만 선언 가능
- e.g.
class
public int methodA (int a, int b) {
return a + b;
}
interface
public int methodB (int a, int b);
** 메소드를 선언만 하는 할 수 있음
2. 사용 이유
- 협업 개발을 할 때 변수명, 구현 방식 등을 통일시킬 수 있음
3. 인터페이스 (Interface) Test
package에서 오른쪽 클릭 -> New -> Interface 클릭
Name: InterfaceTest_01
Finish 클릭
Class Name: InterfaceMain_01
Interface 추가
public static void main(String[] args) 클릭
Eclips Interface 추가한 class 생성하면 자동으로 Override 생성
InterfaceTest_01 코드
1
2
3
4
5
6
|
public interface InterfaceTest_01 {
public int method1(int a, int b);
public String method2(String a, String b);
}
|
cs |
InterfaceMain_01 코드
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
public class InterfaceMain_01 implements InterfaceTest_01 {
@Override
public int method1(int a, int b) {
return a + b;
}
@Override
public String method2(String a, String b) {
return a + b;
}
public static void main(String[] args) {
InterfaceMain_01 test = new InterfaceMain_01();
System.out.println(test.method1(4, 6));
System.out.println(test.method2("안녕하세요.", " Ecoder입니다."));
}
}
|
cs |
저장(ctrl + s) 후 F11을 눌러 출력되는 내용 확인하기
4. 과제
인터페이스를 만들어 원, 삼각형, 사각형 넓이 구하는 메소드를 생성하시고,
클래스를 만들어 Override 해 보세요.
'Java (자바)' 카테고리의 다른 글
쉽게 따라하는 Java (자바) 독학 _ 다형성 (Polymorphism) (0) | 2022.12.19 |
---|---|
쉽게 따라하는 Java (자바) 독학 _ 메소드 오버로딩 (Overloading), 오버라이딩(Overriding) (0) | 2022.12.16 |
쉽게 따라하는 Java (자바) 독학 _ 상속 (Inheritance) (0) | 2022.12.14 |
쉽게 따라하는 Java (자바) 독학 _ 생성자 (Constructor) (0) | 2022.12.13 |
쉽게 따라하는 Java (자바) 독학 _ 접근 지정자 (public, private) (0) | 2022.12.12 |
댓글