Java로 컴포지션을 구현할 수 있습니까? 클래스 A를 만들고이 클래스의 인스턴스를 클래스 B에서 사용하면 A가 독립 객체를 단독으로 만들 수 없다는 것을 어떻게 보장 할 수 있습니까?자바 코드 작성
자바 코드 작성
답변
나는 그것이 가능하지 않다고 생각한다. 유일한 유사 솔루션은 A를 B의 개인 내부 클래스로 생성하는 것입니다. 그러면 B가 아닌 다른 누구도 A를 인스턴스화 할 수 없습니다.
컨테이너 클래스의 내부 클래스로 작성한 클래스를 가질 수 있습니다.
class ContainerClass{
class ContainedClass1{
}
class ContainedClass2{
}
}
가 ContainerClass
의 인스턴스에 연결되어 동일한 인스턴스없이 생성 할 수 없습니다 이쪽으로. 클래스를 비공개로 설정할 수 있습니다. 그러면 클래스 내에 만 생성 할 수 있습니다.
수 있습니다 정교한 또는 비유적인 예제를 제공하십시오. –
@qualtar 기본적으로 허용되는 대답과 동일한 대답입니다. –
정확하게 질문하는 것으로 이해하면 내부 클래스가 필요합니다. 본질적으로 내부 클래스를 만들려면 클래스 B 안에 클래스 A를 작성하십시오.
클래스 A를 B의 정적 내부 클래스로 만들고 A의 생성자를 private로 유지할 수 있습니다. 그러면 B만이 생성자를 사용할 수 있습니다. 참조
일부 링크 :
아마 당신은 클래스는 내가 안전하게 있다는 결론을 내릴 수 무엇입니까 회신에 따라 너무
- 1. json의 자바 코드 작성 방법
- 2. 자바 스크립트 코드 작성 도구
- 3. 자바 스크립트로 PHP 코드 재 작성
- 4. 자바 스크립트 코드 용 파서 작성
- 5. 자바 문자열 연산 - 효율적인 코드 작성
- 6. 크로스 브라우저 자바 스크립트 코드 작성 방법
- 7. MVC에서 자바 스크립트 코드 작성 면도칼 루프
- 8. 이클립스 코드 작성
- 9. 코드 작성 - 클래스 - 내 코드
- 10. 자바 스크립트로 양식 작성
- 11. JavaScript 코드 작성 개선을위한 힌트
- 12. autoComplete이 completeMethod는이 코드 작성
- 13. XML을 사용하여 코드 작성
- 14. 파일에 PHP 코드 작성
- 15. 확장 가능한 코드 작성
- 16. 유연한 코드 작성
- 17. html로 깨끗한 코드 작성
- 18. jQuery 코드 작성 방법
- 19. 중괄호없이 코드 작성
- 20. 마라톤 코드 작성 방법
- 21. 코드 해독 프로그램 작성
- 22. 네트워크 코드 작성 성능
- 23. 코드 재 작성 시도
- 24. 코드 작성 seeResponseMatchesJsonType 명령
- 25. 작성 C++ 코드
- 26. HTML 코드 작성 방법
- 27. opencv에서 코드 작성 오류
- 28. 멀티 서버 코드 작성
- 29. NUnit 테스트 코드 작성
- 30. powerset 코드 작성 문제
을 B에서로드 여부를 결정하기 위해 클래스 로더를 사용할 수 있습니다 내부 클래스를 사용하는 경우를 제외하고는 Java로 컴포지션을 구현할 수 없습니다 (이는 너무 명백합니다). 따라서 제 3 자 클래스는 결코 합성물로 포함될 수 없습니다. –
"독립 개체를 만들 수 없습니다"라는 타사 클래스가있는 경우 어떻게 구성하여 사용할 수 있습니까? –
@AmitKhanna : 물론 제 3 자 클래스의 객체를 만들 수 있습니다. 난 그저 제 3 자 클래스가 결코 합성물로 사용될 수 없다는 것을 확인하기를 원한다. –