Android에서보기와 다소 비슷한 추상 클래스가 있습니다. 다른 수업을하기 위해 수업을 확장하는 수업을 많이 만듭니다. 이제는 모든 클래스가 동일한 Paints를 공유하여 색상이 일치되도록하는 것이 좋습니다.언제/어떻게 추상 클래스의 정적 멤버를 초기화합니까? (지연로드 없음)
내 아이디어
패스 매 생성자에 어떤 상황이나 windowmetrics 것입니다,하지만 난 한 번만 필요에 따라 그 바보 느낀다.
정적 클래스에 init() 정적 메서드를 추가 할 수는 있지만 public static 메서드는 사용하지 않습니다.
수퍼 클래스의 정적 멤버를 설정하고 끝에는 수퍼 클래스의 정적 물건에 대한 원격 컨트롤과 같은 무언가를 null로 지정하는 단일 목적으로 서브 클래스를 만듭니다.
여기에는 어떤 위험이 있는지 또는 더 간단한 방법이 있는지 모르겠습니다.
편집 : 는, 정적 블록 그래서 초기화를 그 문맥 클래스에 전달 될 필요가 정적 내가 (안드로이드에 익숙하지 않은 사람들을 위해) 문맥을 필요로 회원들과 init을하지하는 등
왜 당신이 목적을 위해 추상 클래스에 정적 메서드가 필요합니까? 추상 클래스의 생성자에서 모든 확장 클래스에 공통 논리를 작성할 수 있습니다. 이 대답 좀 봐 http://stackoverflow.com/a/261159/572830 –
당신이 자신의 사용자 정의보기 또는 스타일을 정의하고 그들로부터 상속 받아야한다고 생각합니다 – CocoNess
@ TanjaV 문제가 남아, 내가 통과해야합니다 일부 정보는 런타임에 최종 크기 계산을 수행하고 그 정보는 내 기본 클래스를 상속하는 모든 클래스 사이에 정적으로 공유하고 싶습니다. – NikkyD