2010-05-19 3 views

답변

4

수 없습니다. Objective-C 런타임 라이브러리를 사용하여 실행중인 응용 프로그램에서 메서드 구현을 바꿀 수 있기 때문에 리프 클래스의 메서드가 사용자가 제공 한 메서드인지 확인할 수 없습니다. 이것은 런타임 라이브러리의 디자인의 신중한 기능입니다.

+0

괜찮 았으면 개체 존재를 통해 변경할 수없는 수퍼 클래스 속성을 보호하는 방법. 프레임 워크 나 래퍼를 작성하는 동안 개발자가 이러한 상황을 처리하는 방법에 대해 설명합니다. – chethan

+0

@chethan 당신이하지 않거나, 개발자가 요구 사항과 희망을 문서화 한 것입니다. KVC에서 물건을 숨기거나 용도를 혼란스럽게하는 등의 일을 할 수 있지만, 사람들은 그 일을 막을 수 없습니다. –

+0

이것을 시도하십시오 :: http://iphonedevelopertips.com/objective-c/private-methods.html –

-1

이 잘 나는 확실하지 않다는 "최종"객관적인 C에 해당하지만, 당신이 원하는라는 당신의 서브 클래스에서 특정 메서드를 작성하지 않는 슈퍼 클래스의 메소드가있는 경우

플러스 "+"접두사로 작성된 메서드는 클래스 메서드이고 인스턴스 메서드가 아니므로 메서드가 항상 동일해야한다고 생각합니다.

관련 문제