본문 바로가기
Java

Java Interface(인터페이스)

by 히예네 2023. 2. 5.
728x90
반응형

Interface : abstract만 가지는 완전체 추상 클래스.

인터페이스는 규칙없이 동작이름을 짓는것을 방지하기 위해 동작의 이름을 규격화시킨다. 

기능의 이름을 통일시켜 관리를 용이하게 한다. 

 

예를 들어

메모앱을 만든다고하자. 개발자들이 메모작성 메소드를

write, note, memo 등등 제각각쓰게되면 관리자 입장에서는 혼돈이 온다.

그래서 인터페이스를 구축하여 메모작성 메소드의 이름을 write로 통일하게끔 강제적으로 만든다.

 

public interface  Memo{
	
	abstract void write();//기능의 이름만 정하는 설계도면임
	
//	//일반 메소드는 만들수없다.  에러!  인터페이스는 규격을 만드는 메소드이다! 
//	void show() {  
//		
//	}
	
	//인터페이스 안에서는 모든 메소드가 abstract이므로 자동 적용됨 
	void bbb(); //{}가 없다

 

인터페이스 구현할때는 implements를 쓴다. (상속할때는 extends)

write에 있는 추상메소드를 반드시 구현해줘야한다. 

public class Second implements Memo{
	
	@Override
	public void write() {
		System.out.println("오버라이딩 해줘야함");
	}
}

}

 

 

인터페이스는 다중구현이 가능하다! 다중상속은 컴마를 찍어서 넣어준다. 

728x90
반응형

'Java' 카테고리의 다른 글

Java Object class  (1) 2023.02.06
Java Polymorphism(다형성)  (0) 2023.02.06
java abstract  (0) 2023.01.30
java Final  (0) 2023.01.29
java 오버라이드(Override)  (0) 2023.01.29