2012-05-06 3 views

답변

4

+로 시작하는 메소드는 class 메소드입니다. 즉, 실제 객체 (클래스의 인스턴스)에서는 호출되지 않지만 클래스 자체에서는 호출되지 않습니다.

+0

인 클래스 메서드로 시작합니다. 객체가 아닌 클래스 자체에서 호출하는 경우의 차이점은 무엇입니까? – CoreCode

+1

@CoreCode 클래스의 인스턴스 메서드를 호출 할 수 없습니다. 이러한 메소드를 사용하려면 클래스의 인스턴스가 필요합니다. –

+0

인스턴스 메서드는 객체에서 호출됩니다. 즉, 두 인스턴스의 데이터 구조 값이 다른 경우 동일한 클래스의 각 인스턴스마다 다르게 동작 할 수 있습니다. 그러나 하나의 특정 클래스에서 호출 될 때 클래스 메소드는 항상 같은 종류의 것을 수행합니다 (주어진 동일한 인수와 해당 메소드와 관련된 정적 변수가 수정되지 않은 경우). –

0

반환 유형 앞에 "+"가있는 메서드는 정적 메서드 (해당 클래스의 개체를 인스턴스화하지 않고 존재 함)가 있음을 나타냅니다. "-"가있는 메소드는 개별 객체와 관련이 있습니다.

+0

일반적으로 Objective C 프로그래머는이를" Java에서와 같이 "정적 메서드"가 아닌 "클래스 메서드"가 될 것입니다. – echristopherson

+0

그래, 나도 알아.하지만 비슷한 방식으로 말하고있어. 사실, 클래스 메서드는 C#, java, C++ 등의 정적 메서드와 동일합니다. ;-) – innuendoreplay

관련 문제