JAVA

Hagi 2009. 8. 20. 16:48

 

인터페이스(Interface)는

흐름만 알고자 할때 또는 생각만 전하고자 할때 쓰인다.

공급자 측면에서는 명세서, 사용자 측면에서는 자격조건 검사 ...

한마디로 말하자면, 설계도이다. (박강사님왈)

 

예를 들어서...

 

package kr.co.bit.lecture.game;

public interface MoraGame {
 // 1. 안내 메시지 출력 -> public void printHelp();
 // 2. 컴퓨터 선택 저장 -> public void generateComputerChoice();
 // 3. 사용자 선택 입력 -> public void getUserChoice();
 // 4. 비교 ->                  public void compare();
 // 5. 결과 출력 ->           public void printResult();
}

 

홀짝 게임을 이렇게 설계해 놓고...

 

다른 곳에서 받아서 코딩한다.

 

(추가 2009-09-13)

interface와 추상클래스를 쓰는 이유는?

두 개 이상의 조합간의 약속일때 쓴다...

public class BoardDaoJDBC implements BoardDao {
      private JDBCConfig config;
      private JDBCTemplate template;
 
      public BoardDaoJDBC(){
             this.config = new JDBCConfig();
             this.template = new JDBCTemplate(config);
     }
      public void insertBoard(BoardVO board) {
              BoardInsertDelegate delegate = new BoardInsertDelegate(board);

 //Insert의 Query를 날릴때, UpdateDelegate(인터페이스)에서 형식을 정해 놓고 BoardInsertDelegate 클래스에서 구현한다.

//이렇게 하면 다음번에 sql만 변할 때, 변경에 유리하다( 유지보수 )  ... <첨부파일 참고>
               try {
                      this.template.executeUpdate(delegate);
               } catch (DataAccessException e) {
                      e.printStackTrace();
               }
      }

}

 

 

BoardDao.java

 

BoardDaoJDBC.java

 

BoardInsertDelegate.java

 

BoardVO.java

 

JDBCConfig.java

 

JDBCTemplate.java

 

QueryDelegate.java

 

UpdateDelegate.java

 

DataAccessException.java

더 자세한 설명은...

http://blog.naver.com/wsdcaptain?Redirect=Log&logNo=40065181359

 

인스턴스(Instance)

 

일단 이것에 관한 자료가 많지 않아서 3분의 의견을 올려본다. 아직 정확하게 의미가 파악되지 않는다.

 

1. 일반적으로 어떤 집합에 대해서, 그 집합의 개별적인 요소. 객체 지향 프로그래밍(OOP)에서, 어떤 등급에 속하는 각 객체를 인스턴스라고 한다. 예를 들면 ‘목록(list)’이라는 등급을 정의하고 그 다음에 ‘본인 목록(my list)’이라는 객체를 생성(기억 장치 할당)하면 그 등급의 인스턴스가 생성된다. 또한 변수가 포함되어 있는 어떤 논리식의 변수에 구체적인 값을 대입하여 식을 만들면 원래 식의 인스턴스가 만들어진다. 이런 의미에서 인스턴스를 실현치라고 합니다.

 

2. 프로그래밍에서 인스턴스라고 하면 객체와 동일한 것이라 생각하시면 됩니다.

일반적인 변수와 비슷한 개념인데, 클래스로 만든 변수를 인스턴스 또는 객체라고 합니다.

 

3. 일반적으로 어떤 집합에 대해서, 그 집합의 개별적인 요소. 객체 지향 프로그래밍(OOP)에서, 어떤 등급에 속하는 각 객체를 인스턴스라고 한다. 예를 들면 ‘목록(list)’이라는 등급을 정의하고 그 다음에 ‘본인 목록(my list)’이라는 객체를 생성(기억 장치 할당)하면 그 등급의 인스턴스가 생성된다. 또한 변수가 포함되어 있는 어떤 논리식의 변수에 구체적인 값을 대입하여 식을 만들면 원래 식의 인스턴스가 만들어진다. 이런 의미에서 인스턴스를 실현치라고 합니다.

 

http://ask.nate.com/qna/view.html?n=9082995 에서 가져 옴