소셜 미디어 IOS 앱의 프로토콜 기본 - 더미

IOS 앱의 프로토콜 기본 - 더미

비디오: iOS의 꽃, 테이블뷰 2024

비디오: iOS의 꽃, 테이블뷰 2024
Anonim

정의에 따라 프로토콜은 iOS 앱의 모든 클래스에서 구현할 수있는 메소드 세트를 명확히합니다. 프로토콜은 클래스에 의해 구현 된 인터페이스를 정의하는 데 사용됩니다. 프로토콜은 종종 위임 객체의 인터페이스를 지정하는 데 사용됩니다. 프로토콜 기능을 사용하면 다형성 클래스를 작성하기 위해 서브 클래 싱을 강제하지 않아도됩니다.

Objective-C (C ++과 달리)는 클래스가 여러 수퍼 클래스를 가질 수 없도록합니다. 프로토콜은 다중 상속을 허용하지 않기 때문에 Objective-C에서 필수적인 기능입니다.

이 클래스는 에 말했다되는 프로토콜에> 을 준수합니다. 프로토콜의 정의는 클래스의 인터페이스 정의와 유사합니다. 그러나 프로토콜에는 상위 클래스 나 인스턴스 변수가 없습니다. 여기서 접미사 계산기 프로그램 프로토콜 정의 (인쇄)의 예:

인쇄용 @protocol - (공극)가 printMe; 이 기본 @optional이기 때문에 // 나는, @Required 생략 할 수 있습니다 - (있는 NSString *) printMeToString; -d

2. 0 프로토콜 방법이 요구 될 수 있습니다 오브젝티브 C (디폴트) 또는 임의의 (큰 요란 참과) 함께 도착. 컴파일러 지시어도 여기에 있습니다.

@interface StackOfInteger: NSObject … -d

StackOfInteger 클래스의 프로토콜 구현은 다음과 같습니다.

@implementation StackOfInteger; … StackOfInteger 다른 방법은 … /////////// 방법은 인쇄 프로토콜 //////////// 구현 - (무효) printMe {INT의 K를 stackCount = 요소 개수]; printMeToString 메서드는 선택 사항이므로 구현되지 않았습니다.

Last> % dlast) ! - 1 ->

프로그램은 객체가 프로토콜을 따르는 지 여부를 테스트 할 수 있습니다. 다음 코드에는이 테스트의 예제가 포함되어 있습니다 (샘플의 주 프로그램에서 가져옴): 

printf (myStack printMe);} else {NSLog (@ "객체가 프로토콜 % @ n을 따르지 않습니다.", "NSLog (@"객체가 다음을 준수하지 않습니다: @protocol (Printable));} id someObject = [[PostfixCalculator alloc] initWithExpression: @ "44 55 *"] 프로토콜 ") 상기 myStack 오브젝트 프로토콜에 부합하므로}

및 그 printMe printMeToString 메소드가 호출된다.someObject (예제를 더 의미있게 만드는 유형 ID)가 Printable 프로토콜을 따르지 않으므로 적합성 테스트가 실패합니다.

respondsToSelector 메소드를 사용하여 선택적 메소드의 존재 여부를 테스트 할 수도 있습니다.

클래스는 프로토콜에 정의 된 메소드를 구현함으로써 프로토콜을 채택 할 수 있습니다. 즉, 인터페이스에서 프로토콜을 선언 할 필요가 없습니다. 그러나, 클래스가 프로토콜 메소드를 구현하더라도, 프로토콜을 따르지 않고 (999), 선행 적합성 테스트를 실패 할 것이다.

IOS 앱의 프로토콜 기본 - 더미

편집자의 선택

소셜 미디어 측정법을 사용하여 판매를 늘리는 방법 - 소셜 미디어 측정 항목을 사용하는 한 회사

소셜 미디어 측정법을 사용하여 판매를 늘리는 방법 - 소셜 미디어 측정 항목을 사용하는 한 회사

판매를위한 크로스 플랫폼 참여는 Best Buy입니다. Best Buy는 모바일 쇼핑 및 소셜 쇼핑을 매장의 각 품목에 대한 QR 코드를 사용하여 매장 내 경험으로 가져 왔습니다. 고객은 상점의 각 항목에 대한 QR 코드를 스캔하여 리뷰를 포함한 더 많은 정보를 얻을 수 있습니다.

블로그에 Google 웹 로그 분석을 설치하는 방법 - 아직없는 경우

블로그에 Google 웹 로그 분석을 설치하는 방법 - 아직없는 경우

블로그 또는 사이트에서 Google 웹 로그 분석 추적 통계를 사용하여 빠르고 쉽게 설치할 수 있습니다. 설치는 1 분 밖에 걸리지 않으며 완전히 고통스럽지 않습니다. 먼저 Google 애널리틱스 ID를 가져 와서 어딘가에 작성하십시오. 쉽게 찾을 수 있습니다. Google 애널리틱스와 대시 보드에서 로그인하십시오.

웹 사이트에 Google 웹 로그 분석을 설치하는 방법 - 웹 사이트에 Google 웹 로그 분석을 설치하는

웹 사이트에 Google 웹 로그 분석을 설치하는 방법 - 웹 사이트에 Google 웹 로그 분석을 설치하는

단 1 분이며 고통스럽지 않습니다. 곧 Google 애널리틱스 덕분에 잠자는 동안 소셜 미디어 측정 항목을 추적하게 될 것입니다. 먼저 Google 애널리틱스 ID를 가져 와서 어딘가에 작성하십시오. 쉽게 찾을 수 있습니다. Google 애널리틱스 및 대시 보드에 로그인하고 톱니 바퀴 아이콘을 클릭하기 만하면됩니다. ...

편집자의 선택

마케팅 자동화에서 분할 테스트의 기본 이점 - A / B 테스트라고도하는 더미 테스트

마케팅 자동화에서 분할 테스트의 기본 이점 - A / B 테스트라고도하는 더미 테스트

다 변수 테스트뿐만 아니라 요인 일정을 유지하고 다양한 시나리오에서 다른 결과를 테스트하여 마케팅 자동화 테스트를 수행하는 것을 의미합니다. 하나의 유료 검색 광고를 통해 사람들을 2 개의 개별 방문 페이지로 유도하는 것이 그 예입니다. 방문 페이지 테스트하기 ...

자동화 된 마케팅을위한 컨텐츠 작성의 기본 - 인형

자동화 된 마케팅을위한 컨텐츠 작성의 기본 - 인형

마케팅 자동화 도구의 사용을 극대화하기 위해 먼저 사람과 콘텐츠와의 관계를 이해해야합니다. 올바른 사람에게 올바른 콘텐츠를 보내는 경우에만 자동화가 유용합니다. 이를 올바르게 수행하는 방법에 대한 기본적인 이해를 돕기 위해 사람들은 두 가지 유형이 관련되어 있음을 인식해야합니다 ...

Microsoft Dynamics CRM을 사용하는 e-Mail 및 Microsoft Dynamics CRM- 더미

Microsoft Dynamics CRM을 사용하는 e-Mail 및 Microsoft Dynamics CRM- 더미

고객 관계를 관리하는 데 도움이되는 Microsoft 도구 현대 직장에서 가장 유용한 도구 중 하나는 전자 메일이므로 전자 메일을 만들고 읽거나, 전자 메일을 특정 레코드에 연결하거나, 일정을 관리하는 데 숙련되어 있어야합니다. ...

편집자의 선택

웹 호스팅 계획에서 더 많은 것을 얻기위한 10 가지 팁 - 인형

웹 호스팅 계획에서 더 많은 것을 얻기위한 10 가지 팁 - 인형

당신은 자신의 웹 사이트 또는 블로그를 가지고 있고, 고객, 독자 또는 웹 호스팅 기술에 의존하는 추종자 만 있습니다. 다음 팁은 웹 호스팅 계획을 최대한 활용하는 데 도움이됩니다. 제어판에서 백업 옵션을 확인하십시오. 일부 제어판을 사용하면 자동화 된 백업을 수행 할 수 있습니다. ...

귀하의 웹 호스트가 귀하를 도와주지 않는 10 가지 사항 (무료) - 인형

귀하의 웹 호스트가 귀하를 도와주지 않는 10 가지 사항 (무료) - 인형

은 웹 호스트만큼 멋지고, 웹 사이트를 디자인, 제작 및 운영하는 데 도움이되는 일에는 한계가 있습니다. 그것은 모두 돈으로옵니다. 귀하가 기꺼이 지불하는 한 귀하의 호스트는 기꺼이 도움이 될 것입니다. 각 호스트는 다릅니다. ...