추상 류 와 인터페이스의 개발 고려

2961 단어 추상 류
자바 의 추상 류 와 인터페이스의 구분 에 대한 논술 은 인터넷 에 많 지만 진정 으로 개발 에서 언제 사용 할 것 인 지 는 묻 는 사람 이 별로 없다.
 
아래 단락 의 문 자 는 추상 적 인 방법 과 클래스 에서 발췌 한 것 이다.
  • Consider using abstract classes if any of these statements apply to your situation:()
  • You want to share code among several closely related classes.(비슷 한 클래스 공유 코드 가 몇 개 있 을 때)
  • You expect that classes that extend your abstract class have many common methods or fields,or require access modifiers other than public(such as proctected and private).
  • You want to declare non-static or non-final fields.This enables you to define methods that can access and modify the state of the object to which they belonged.(비정 상 및 비 final 필드 를 설명 하고 싶 습 니 다.이 필드 들 은 대상 의 속성 상 태 를 접근 하고 수정 할 수 있 는 방법 을 정의 할 수 있 습 니 다.)

  • Consider using interfaces if any of these statements apply to your situation:
  • You expect that unrelated classes would implement your interface.For example,the interfaceComparableandCloneableare implemented by many unrelated classes.
  • You want to specify the behavior of a particular data type,but not concerned about who implements its behavior.(특정한 데이터 류 의 행 위 를 규범화 하고 싶 지만 누가 행 위 를 실 현 했 는 지 는 관심 이 없다)
  • 유형의 여러 상속 을 활용 하고 싶 습 니 다.(다 중 상속 을 실현 하고 싶 습 니 다)

  •      
              전체적으로 말 하면 인 터 페 이 스 는 추상 류 보다 더욱 유연 하 다.왜냐하면 인 터 페 이 스 는 하나의 표준 행 위 를 대표 할 뿐 당신 의 모든 행위 에 귀속 되 지 않 기 때문이다.
               이렇게 말하자면 추상 류 는 다른 부류 와 같다.모두 아버지 입 니 다.다만 이 아버 지 는 추상 적 입 니 다.그 는 단지 당신 을 낳 는 것 을 책임 질 뿐 입 니 다.그러나 그 는 이미 죽 었 거나 움 직 이지 않 을 것 입 니 다.그 는 실례 화 할 방법 이 없다.당신 은 그의 유전 자 를 물 려 받 을 수 밖 에 없 지만 그 는 당신 에 게 사람 이 되 는 것 을 가 르 칠 수 없습니다.아버 지 는 한 가지 만 있 을 수 있 습 니 다.인 터 페 이 스 는 직명 이다.직명 이 있 을 때마다 행동 을 해 야 한다.하지만 너 는 여러 직명 을 가 질 수 있다.직명 은 당신 이라는 사람의 행동 을 규범화 시 켰 을 뿐,아버 지 는 당신 의 유전 자 를 결정 하고 당신 의 종속 을 결정 하 셨 습 니 다.당신 이 다른 사람과 같은 아버 지 를 가 졌 을 때,당신들 은 혈연관계 가 있 습 니 다.당신들 이 모두 같은 직명 을 가지 고 있 을 때,당신들 은 아무런 관계 도 없 이,단지 같은 일 을 그렇게 교묘 하 게 할 수 있 습 니 다.이것 은 대상 을 대상 으로 실제 응용 프로그램 을 개발 하 는 과정 에서 자주 만 나 는 것 이다.당신 은 아버 지 를 원 하 십 니까?아니면 기능 을 원 하 십 니까?아빠 의 장점 은 아빠 와 만 있 을 수 있 고 이런 종속 유전 자 를 결정 하 며 비정 상 적 이 고 비 final 적 인 속성 을 결정 할 수 있다 는 것 이다.인터페이스의 장점 은 규범 에 맞지 않 는 혈연 을 바 꾸 는 것 이다.이런 종류의 역할 은 이런 종류의 의미 와 유형 과 인 터 페 이 스 는 전혀 관계 가 없다.단지 이런 유형 이 이렇게 해 야 한다 고 말 할 뿐이다.
              소프트웨어 공학 의 측면 에서 볼 때 엔 지 니 어 는 인 터 페 이 스 를 사용 하 는 것 을 더욱 좋아한다.상급 엔지니어 가 인 터 페 이 스 를 정의 하고 행 위 를 규범화 시 켰 기 때문에 하급 엔 지 니 어 는 실현 만 해 야 한다.그리고 어떤 유형 으로 든 실현 하면 공사 의 표준 성 을 유지 할 뿐만 아니 라 유연성 과 확장 성 도 크게 증가 했다.주입 기술 을 사용 하면 유연 한 변경 인터페이스 실현 을 증가 시 킬 수 있다.실례 화 코드 를 변경 할 필요 가 없다.

    좋은 웹페이지 즐겨찾기