Rumah Media Sosial Bagaimana Menggunakan Protokol untuk Menentukan Metode untuk Aplikasi iOS - dummies

Bagaimana Menggunakan Protokol untuk Menentukan Metode untuk Aplikasi iOS - dummies

Video: Learning iOS: Create your own app with Objective-C! by Tianyu Liu 2024

Video: Learning iOS: Create your own app with Objective-C! by Tianyu Liu 2024
Anonim

Protokol mendefinisikan kumpulan metode yang dapat diterapkan oleh kelas manapun. Pikirkan protokol sebagai antarmuka yang mendefinisikan kelas yang harus diimplementasikan. Protokol sering digunakan untuk menentukan interface untuk mendelegasikan objek.

Dengan fitur protokol, Anda dapat menghindari keharusan memaksa subclass untuk membuat kelas polimorfik. Objective-C (tidak seperti C ++) tidak mengizinkan kelas memiliki beberapa superclasses. Oleh karena itu, Protokol merupakan fitur penting dalam Objective-C karena tidak memungkinkan multiple inheritance.

Saat kelas menerapkan metode dalam sebuah protokol, kelas dikatakan menyesuaikan dengan protokol.

Definisi protokol mirip dengan definisi antarmuka untuk kelas. Namun, protokol tidak memiliki kelas induk atau instance variable. Berikut adalah contoh definisi protokol (Printable) dari program kalkulator postfix:

@protocol Printable - (void) printMe; // aku bisa meninggalkan @quoring, karena itu adalah default @optional - (NSString *) printMeToString; -d

Dengan kedatangan (dan memang dengan keriuhan yang hebat) dari Objective-C 2. 0, metode protokol dapat diperlukan (default) atau opsional.

Berikut adalah deklarasi StackOfInteger yang menyatakan bahwa ia akan menerapkan protokol: @interface StackOfInteger: NSObject … -d

Berikut adalah implementasi protokol di kelas StackOfInteger:

@implementation StackOfInteger; … Metode StackOfInteger Lainnya … /////////// Metode untuk menerapkan protokol Printable //////////// - (void) printMe {int k, stackCount = [elements count]; NSLog (@ "Stack-> Last>% dlast); untuk (k = 0; k% @ 

Perhatikan bahwa metode printMeToString tidak diimplementasikan karena bersifat opsional.

< Program yang dapat menguji apakah sebuah objek sesuai dengan sebuah protokol. Kode berikut mencakup contoh tes ini (diambil dari program utama sampel):

printf ("Menguji kesesuaian dengan protocolsn "); if ([myStack conformsToProtocol: @protocol (Printable)]) {printf (" Using protocol methodsn "); [myStack printMe];} else {NSLog (@" Objek tidak sesuai dengan protokol% @ n ", @protocol (Printable));} id someObject = [[PostfixCalculator alloc] initWithExpression: @ "44 55 *"]; if (! [someObject conformsToProtocol: @protocol (Printable)]) {NSLog (@ "Objek tidak sesuai dengan protokol ");}

Karena objek myStack sesuai dengan protokol, metode printMe dan printMeToString dipanggil. Karena someObject (yang tipe id untuk membuat contoh lebih bermakna) tidak sesuai dengan protokol Printable, tes untuk kesesuaian gagal

Anda juga dapat menguji adanya metode opsional dengan menggunakan metode respondsToSelector.

Anda dapat membuat sebuah kelas mengadopsi sebuah protokol hanya dengan menerapkan metode yang didefinisikan oleh protokol tersebut. Artinya, Anda tidak perlu mendeklarasikan protokol di antar muka. Namun, meskipun kelas menerapkan metode protokol, protokol tersebut tidak akan sesuai dengan protokol dan akan membatalkan uji kesesuaian sebelumnya.

Bagaimana Menggunakan Protokol untuk Menentukan Metode untuk Aplikasi iOS - dummies

Pilihan Editor

Adobe CS5 Illustrator Gradient Creation - dummies

Adobe CS5 Illustrator Gradient Creation - dummies

Anda dapat menggunakan Adobe Creative Suite 5 (Adobe CS5) Illustrator untuk tidak hanya membuat gradien serta menerapkannya. Gradien adalah variasi tonal yang digunakan untuk menerapkan efek warna yang berubah dengan lancar. Sebelum memulai proses menciptakan gradien, akan lebih baik jika melepaskan panel Color Anda. Klik tab Color ...

Adobe CS5 Illustrator Live Trace Feature - dummies

Adobe CS5 Illustrator Live Trace Feature - dummies

Fungsi Creative Corustage Adobe Creative Suite 5 (Adobe CS5) memungkinkan Anda menggunakan gambar yang ada dalam karya seni baru Anda. Anda dapat secara otomatis melacak gambar bitmap dengan menggunakan berbagai pengaturan yang berkisar dari seni garis hitam dan putih hingga seni vektor dengan banyak warna yang dapat diekstraksi dari gambar Anda.

Adobe CS5 Ilustrator Object Hiding - dummies

Adobe CS5 Ilustrator Object Hiding - dummies

Menyembunyikan sebuah benda di Adobe Creative Suite 5 (Adobe CS5) Ilustrator digunakan saat objek yang ingin Anda pilih terjebak di belakang sesuatu yang lain atau bila Anda perlu memilih satu objek dan satu lagi berulang kali mengaktifkannya. Kesempatan bagus untuk menggunakan perintah Hide adalah saat Anda membuat teks di dalam bentuk. Seperti ...

Pilihan Editor

Melakukan Analisis Situs Web Lanjutan dengan Omniture - dummies

Melakukan Analisis Situs Web Lanjutan dengan Omniture - dummies

Walaupun paket analisis Web gratis tersedia, Anda mungkin ingin mengeluarkan uang untuk alat analisis yang lebih canggih. Sesuatu seperti Omniture akan melakukan hal itu. Mengapa? Karena ada lebih banyak untuk menjalankan situs Web daripada menarik orang melalui mesin pencari, itulah yang difokuskan oleh banyak alat gratis. Alat berbayar, seperti Omniture, ...

Elemen Penting untuk SEO Mendapatkan Tingkatan Kata Kunci Tinggi - dummies

Elemen Penting untuk SEO Mendapatkan Tingkatan Kata Kunci Tinggi - dummies

Jika lokasi terbaik di web ada di halaman salah satu search engine, Anda perlu mengetahui elemen SEO yang bisa mengantarmu disana. Tempat yang baik untuk memulai adalah dengan kata kunci. Mesin pencari menggunakan proses lanjutan untuk mengkategorikan dan menganalisis penggunaan kata kunci dan faktor lainnya untuk mengetahui ...

Siaran Pers sebagai Sumber Konten SEO - dummies

Siaran Pers sebagai Sumber Konten SEO - dummies

Hal yang menyenangkan tentang siaran pers adalah Anda bisa menggunakannya di situs Anda tanpa izin, dan beberapa di antaranya sudah bisa dioptimalkan mesin pencari. Tujuan siaran pers adalah mengirimkannya dan melihat siapa yang memungutnya. Anda tidak perlu menghubungi pemilik siaran pers, karena ...

Pilihan Editor

Membangun Kode Sarang di Java - dummies

Membangun Kode Sarang di Java - dummies

Anda dapat menulis kode bersarang dengan pernyataan di Java. Pernahkah Anda melihat boneka nakal Rusia Matryoshka yang lucu? Buka satu, dan satu lagi ada di dalamnya. Buka yang kedua, dan yang ketiga ada di dalamnya. Ini seperti itu. (Bicara tentang kesenangan!) Daftar ini menunjukkan caranya. impor java statis lang. Sistem. di luar; impor java util. Pemindai; kelas publik ...

Memanggil Pembuat Java di Android App - dummies

Memanggil Pembuat Java di Android App - dummies

Anda dapat menggunakan panggilan konstruktor Java di Android Anda aplikasi. Panggilan konstruktor menciptakan objek baru dari kelas yang ada. Anda bisa melihat panggilan konstruktor dengan memperhatikan bahwa panggilan konstruktor dimulai dengan kata kunci baru Java: nama BagOfCheese () dan A constructor call yang baru adalah nama kelas Java: BagOfCheese baru () ...

Membuat Custom Code dengan Java API untuk XML Binding (JAXB) - dummies

Membuat Custom Code dengan Java API untuk XML Binding (JAXB) - dummies

Anda dapat Buat kode yang disesuaikan dengan JAXB - Java API for XML Binding. Dengan JAXB, Anda mengambil dokumen XML dan Anda membuat file kelas Java yang sempurna untuk memproses dokumen. Bila kebutuhan Anda berubah dan kelas tidak lagi melakukan apa yang Anda inginkan, Anda baru saja menelurkan yang baru ...