목적 C에서 java의 interface와 동일한 개념은 무엇입니까? 인터페이스를 만들고 인터페이스에서 상속하는 여러 클래스에서 공유 할 몇 가지 공통 변수와 메서드를 정의하려고합니다. 외부 클래스가 자식 클래스를 사용하고자 할 때 올바른 자식 클래스를 가리키는 인터페이스의 참조 객체를 가져옵니다.런타임 다형성과 상속 구현
목표 C에서이를 달성하는 방법은 무엇입니까?
목적 C에서 java의 interface와 동일한 개념은 무엇입니까? 인터페이스를 만들고 인터페이스에서 상속하는 여러 클래스에서 공유 할 몇 가지 공통 변수와 메서드를 정의하려고합니다. 외부 클래스가 자식 클래스를 사용하고자 할 때 올바른 자식 클래스를 가리키는 인터페이스의 참조 객체를 가져옵니다.런타임 다형성과 상속 구현
목표 C에서이를 달성하는 방법은 무엇입니까?
목표 - C에서, 당신은 Protocols를 이용하여이를 달성 할 수 있습니다. 프로토콜은 기본적으로 Java 인터페이스의 선구자이므로 대부분의 동작은 자연스럽게 이루어져야합니다.
프로토콜 선언은 다음과 같습니다 :
@protocol Foo
-(void) foo;
-(int) boo: (int) arg;
@end
이이 클래스에 의해 구현 될 수있다. 다음과 같은 경우에는 MyClass가 Foo 프로토콜을 준수한다고 말할 수 있습니다.
마지막으로@interface MyClass <Foo>
{
}
@end
@implementation MyClass
-(void) foo {
//do something
}
-(int) boo: (int) arg {
//do something else
return arg;
}
@end
,이처럼 주위를 전달할 수 있습니다
-(void) someMethod: (id<Foo>) arg;
을 당신이 개체에 대한 구체적해야하는 경우, 그들은이처럼 사용할 수 있습니다 :
-(void) someMethod: (NSObject<Foo> *) arg;