문제

내 엔티티 (JDO)의 Java (GAE/J)와 Google Appengine에서 동일한 클래스를 상속/연장하는 여러 클래스를 가질 수 있습니까? 예를 들어 나는 다음과 같습니다.

  • 내용 (추상 클래스)
  • 강의

그리고 내 코스는 다음과 같습니다.

  • 컨텐츠를 확장하는 비디오 목록
  • 책 목록

동시에

  • 비디오에는 태그 목록이 있습니다
  • 책에는 태그 목록이 있습니다
  • 코스에는 태그 목록이 있습니다

gae를 할 수 있습니까?

나는 이것과 비슷하지만 너무 많은 문제가 있습니다. 이런 종류의 예제가 있습니까?

도움이 되었습니까?

해결책

새 질문 제목을 기반으로 업데이트하십시오

나는 아직도 당신의 어려움이 무엇인지 이해하지 못하지만, 나는 그것을 촬영할 것입니다

당신의 질문은

내 엔티티의 Java (GAE/J)와 Google Appengine에서 동일한 클래스를 상속/연장하는 여러 클래스를 가질 수 있습니까?

대답은 그렇습니다. 왜 그렇지 않습니까? 나는 당신의 질문에 할 수없는 아무것도 보지 못합니다. 어떤 문제가 있습니까?

나는 이것과 비슷하지만 너무 많은 문제가 있습니다. 이런 종류의 예제가 있습니까? 당신이 게시 한 설명에 대해 잘못된 것을 볼 수 없기 때문에 정확히 어떻게하고 있습니까?

그리고 당신을 돕기 위해, 여기에 할 수있는 한 가지 방법이 있습니다.

interface Tagable {
 public doSomeThingWithTagList(); 
} 

class abstract Content implements Tagable {
 List<Tag> tagList; 
} 

class Video extend Content implements Tagable {
} 

class Book Tagable{ 
 List<Tag> tagList; 
} 

class Course Tagable {
   List<Video> videoList;
   List<Books> bookList;
   List<Tag> tagList 
} 

다른 팁

나는 당신이 언급 한 내용을 바탕으로 여기에서 어둠 속에서 촬영할 것입니다.

  • 관리 방법과 함께 태그 목록을 컨텐츠에 넣으십시오.
  • 비디오, 서적 및 코스는 모두 컨텐츠를 확장 할 수 있습니다 (디자인에서 이것이 의미가 있는지 확실하지 않음)
  • 코스에는 비디오 및 책 목록이 포함될 수 있습니다.
  • 모두 태그 목록이 있습니다

내가 언급했듯이, 이것은 당신의 디자인에서 논리적으로 의미가 없지만 더 많은 정보가 없으면 말할 수 없습니다.

당신이 언급 한 대부분의 계급 관계는 상속이 아닌 구성의 사례가되어야합니다. Java에서 여러 구현 상속을 수행 할 수는 없지만 여러 인터페이스를 구현할 수 있습니다. 구성에는 이러한 한계가 없으며 객체에는 다른 (다중) 클래스의 다른 객체 (구성)에 대한 참조가 포함될 수 있습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top