IT/자바

인터페이스1

Beautifulkim 2018. 5. 8. 11:34

MyMain_BaseCalc.java

BaseCalc.java

BaseCalclmpl.java

package mymain;

import inter.BaseCalc;
import inter.BaseCalclmpl;

public class MyMain_BaseCalc {

	public static void main(String[] args) {
		//인터페이스는 사용할 때 필요
		//클래스는 객체 생성할때 필요
		
		//interface			class
		//설명서			설계도(서)
		BaseCalc calc = new BaseCalclmpl();
		
		int a = 10, b = 5, c;
		c = calc.plus(a, b);
		System.out.printf("%d + %d = %d\n", a, b, c);
		
	}

}
package inter;
//본 파일은 설명서(사용자 입장에서 외부에 노출 : 설명서만 노출됨)
//interface 안에는 오로지 상수와 추상메소드만 삽입 가능
public interface BaseCalc {

	public static final double PI2=3.14;
	//(public static final)생략가능
						double PI=3.14;
						
	
	//접근제한 (abstract) 생략
					int plus(int a, int b);
	//full 정석형태
	public abstract int minus(int a, int b);
	//Declaration : 선언문
	//Implementation : 도구
}
package inter;

// extend, implements : 둘다 상속
//인터페이스와 클래스간의 상속은 implements 
//설명서 대로 구현한 객체
public class BaseCalclmpl implements BaseCalc {

	@Override
	public int plus(int a, int b) {
		// TODO Auto-generated method stub
		return a+b;
	}

	@Override
	public int minus(int a, int b) {
		// TODO Auto-generated method stub
		return a-b;
	}

}