이것은 SWT UI 프로그래밍의 GridData 클래스에 관한 것입니다. 왜 GridData가 최종해야합니까?SWT의 GridData 클래스
GridData의 Java 문서에 그것이 최종이라고 나와 있습니다. 왜 그것이 최종적인 것인지 이해하고 싶습니다.
이것은 SWT UI 프로그래밍의 GridData 클래스에 관한 것입니다. 왜 GridData가 최종해야합니까?SWT의 GridData 클래스
GridData의 Java 문서에 그것이 최종이라고 나와 있습니다. 왜 그것이 최종적인 것인지 이해하고 싶습니다.
감사 및 감사는 솔직히 이유 최종되지도 없다, 그것은 연장하기로 결정되지 않은 모든 클래스를 만들기 위해 API 프로그래머의 일반적인 행동입니다.
자세한 내용은 When should one use final? 및 Using “final” modifier whenever applicable in java stackoverflow 질문을 읽어보십시오. 또한 SWT subclassing FAQ과 관련이 있습니다.
마취가 정확합니다. API 관점에서 누군가가 하위 분류에서 창의적 이었기 때문에 API의 미래 확장을 막기 위해 항상 모든 것을 최종적으로 만들고 싶습니다 ...
이 특정 예에서는 그 이유가있을 수 있습니다 그 디자이너는 미래에 클래스에 추가 멤버가 필요할지도 모릅니다. 예 : 현재 버전에는 minimumHeight
과 minimumWidth
이 있지만, maximumHeight
과 maximumWidth
도 존재하지 않습니다. 그렇다면 여러분이나 다른 누군가가 GridData
을이 정확한 이름으로 개인 회원으로 확장 한 경우 어떻게 될까요? 그렇다면 API 확장은 앞으로 호환되지 않을 것이고 많은 코드가 잠재적으로 이런 식으로 깨질 수 있습니다.
네, final을 사용해야하는 시점을 알았습니다.하지만 의심할만한 이유는 여기에 GridData가 있어야합니다 ... – user4654
잘못된 질문을 던지십시오. 질문이 왜 최종적인 것이 아니겠습니까? – Sorceror