답변:
정적 메시지 instancesRespondToSelector : (SEL) selector도 있습니다. 다음과 같이 호출합니다.
[MyClass instancesRespondToSelector:@selector(someMethod:withParams:)]
또는 다음과 같이 :
[[myObject class] instancesRespondToSelector:@selector(someMethod:withParams:)]
이것은 이것에 따라 하나의 생성자 또는 다른 생성자를 호출하려는 경우 유용 할 수 있습니다 (즉, 인스턴스 자체를 갖기 전에).
respondsToSelector를 찾고 있습니다 : -
if ([foo respondsToSelector: @selector(bar)] {
[foo bar];
}
으로 DONAL 말한다 위에서 푸 수 있음을 알려줍니다 확실히 바 선택기를 수신 처리합니다. 그러나 foo가 bar 메시지를 수신 할 일부 기본 객체로 bar를 전달하는 프록시 인 경우, responsesToSelector :는 메시지가 bar에 응답하는 객체로 전달 되더라도 NO를 알려줍니다.
- forwardInvocation:) 선언하지 않은 선택자에 응답 할 수 있기 때문에 이것이 올바른 접근 방식인지 여부에 대한 질문도 있습니다 .