cari

Rumah  >  Soal Jawab  >  teks badan

objective-c - 在Obj-C中实例方法和类方法的区别是什么?

实例方法,即需要实例化对象调用的方法。
类方法,即类直接调用的方法。

我不明白什么场合用类方法,什么场合用实例方法。两者相比较真正的优势和劣势又是什么?

習慣沉默習慣沉默2811 hari yang lalu803

membalas semua(3)saya akan balas

  • 迷茫

    迷茫2017-05-02 09:22:30

    Kaedah kelas biasanya digunakan untuk menyediakan pemprosesan terpiawai biasanya digunakan untuk menyediakan pemprosesan diperibadikan (mengikat kepada kejadian tertentu).

    balas
    0
  • 曾经蜡笔没有小新

    曾经蜡笔没有小新2017-05-02 09:22:30

    Sepatutnya tiada kelebihan dan kekurangan.

    • Jika kaedah mempunyai parameter input yang sama, output akan dipengaruhi oleh pemboleh ubah contoh kejadian objek yang berbeza Secara amnya, ia harus ditulis sebagai kaedah contoh.

    • Jika parameter input adalah sama tetapi tidak dipengaruhi oleh pembolehubah tika (statik bukan pembolehubah tika), anda boleh menulis kaedah kelas dan memberikannya kepada kelas untuk dipanggil. Contohnya

    - (NSString *)getCertainString
    {
        return @"The string."
    }

    Anda boleh menulis hantu jenis ini sebagai kaedah contoh, tetapi bukan sahaja hantu itu akan digunakan/dilepaskan setiap kali ia dipanggil, ia juga akan menjejaskan bacaan kod.

    • Kaedah kelas lebih biasa dalam mod tunggal dan mod kilang. Kelas dalam program mod tunggal ini hanya mempunyai satu contoh; mod kilang menghasilkan kejadian yang berbeza dan mengembalikannya berdasarkan parameter.

    balas
    0
  • 阿神

    阿神2017-05-02 09:22:30

    Tiada perbezaan antara kaedah, ia hanya untuk kemudahan penggunaan Jika anda perlu membezakan, perkara berikut harus dipertimbangkan

    Kelemahan kaedah kelas: Dalam kaedah kelas, diri mewakili kelas, bukan objek kelas, jadi dalam kaedah kelas anda tidak boleh menggunakan diri untuk memanggil atribut, anda juga tidak boleh memanggil kaedah contoh kelas ini.
    Kelas Kelebihan kaedah: mudah untuk memanggil, tidak perlu mencipta objek

    balas
    0
  • Batalbalas