******* 제3회 스터디 내용 *******
강사 : 김득중 옹 [pelter@nate.com]
일시 : 2006년 4월 1일
시간 : 2시 ~ 5시
날씨 : 봄비 주륵주륵
참석자 : 이예슬,정지혜.이광혁
스터디내용 [추상화와 interface ]
1.인터페이스 구현한다.
2.클래스 상속한다.
*interface를 구현한다는 것은 이런것이다. 예를 들겠삼.
(각 회사마다 실행되는 리모컨을 만들어보자)
#인터페이스 :TVboard
-리모컨에 필요한 기능을 정의만 한다.(구체적행동은 No)
public interface TVBoard{
public void channelDown();
public void channelUp();
public void volumeDown();
public void volumeUp();
public void powerOnOff(boolean power);
}
#인터페이스를 구현클래스 : 삼성 TV (구체적인 내용기술)
-인터페이스에 정의한 기능은 삼성TV의 특징에 따른 정의
public class SamsungTV extends Object implements TVBoard{
private String name="SamsungTV TV";
private int volume = 5;
private int channel = 7;
private boolean power = false;
public SamsungTV(){
System.out.println("SamsungTV입니다");
}
public void channelDown(){
this.channel -=1;
System.out.println(this.name + "-채널Down");
}
public void channelUp(){
this.channel +=1;
System.out.println(this.name + "-채널Up");
}
public void powerOnOff(boolean power){
this.power = power;
if(this.power==false){
System.out.println(this.name + "-전원Off");
}else{
System.out.println(this.name + "-전원On");
}
}
}
#진짜 리모컨(완성품) : TVmain
public class TVTestMain{
public static void main(String[] args){
TVBoard s = new SamsungTV();
s.powerOnOff(true);//TV를 켭니다.
s.channelUp();//채널을 올립니다.
s.powerOnOff(false);
System.out.println();
}
}
실제활용예:
기업에서는 이렇게 쓰입니다. 대표적인 예
소프트웨어회사가 제품을 개발하였음.
DB를 각각의 오라클,msSql,MySQL에 저장하기위해서는
다른 코드가 필요함.
이럴때 인터페이스기능을 구현하면 원하는 DB를 연결할 수 있음.