Apakah perbezaan asas antara Kaedah Kelas dan Contoh dalam Python?

Patricia Arquette
Lepaskan: 2024-10-26 03:34:02
asal
574 orang telah melayarinya

What is the fundamental difference between Class and Instance Methods in Python?

Memahami Perbezaan Antara Kaedah Kelas dan Contoh dalam Python

Kaedah contoh biasanya digunakan dalam pengaturcaraan berorientasikan objek (OOP) dan dikaitkan dengan kejadian atau objek individu. Dalam Python, kaedah contoh mengambil parameter diri sebagai hujah pertama, yang mewakili contoh kelas di mana kaedah digunakan. Parameter ini membolehkan kaedah untuk mengakses dan mengubah suai data dan atribut tika.

Sebagai contoh, pertimbangkan kelas berikut dengan kaedah contoh bernama introduce():

<code class="python">class InstanceExample:
    def __init__(self, name):
        self.name = name

    def introduce(self):
        print(f"Hello, I'm {self.name}!")</code>
Salin selepas log masuk

Dalam senario ini, kaedah introduce() akan dipanggil pada contoh kelas InstanceExample, yang akan dihantar sebagai parameter kendiri.

Sebaliknya, kaedah kelas dikaitkan dengan kelas itu sendiri, bukannya kejadian individu. Mereka mengambil parameter cls sebagai hujah pertama, yang mewakili kelas yang dimiliki oleh kaedah tersebut. Kaedah kelas biasanya digunakan untuk operasi yang berkaitan dengan kelas itu sendiri, seperti mencipta atau mengubah suai atribut kelas.

Berikut ialah ilustrasi kaedah kelas dalam Python:

<code class="python">class ClassExample:
    class_attribute = 10

    @classmethod
    def set_class_attribute(cls, value):
        cls.class_attribute = value</code>
Salin selepas log masuk

Dalam kes ini , kaedah set_class_attribute() boleh digunakan menggunakan nama kelas, tanpa memerlukan contoh. Ia membenarkan pengubahsuaian atribut class class_attribute.

Perbezaan antara kaedah kelas dan contoh adalah penting dalam Python OOP dan memahami peranan parameter kendiri dan cls adalah penting untuk penggunaan berkesan konsep pengaturcaraan berorientasikan objek.

Atas ialah kandungan terperinci Apakah perbezaan asas antara Kaedah Kelas dan Contoh dalam Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!