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;
}
}




