Dekorator static method
Termasuk bagian Pemrograman Berorientasi Objek dalam perjalanan Python di Coddy. Pelajaran 11 dari 64.
Dekorator @staticmethod membuat method yang tidak memerlukan self atau class. Method ini bekerja seperti fungsi biasa, tetapi merupakan bagian dari class.
Berikut contoh class dengan method statis:
class MathHelper:
@staticmethod
def add(a, b):
return a + b
@staticmethod
def is_even(number):
return number % 2 == 0Panggil method statis menggunakan nama class:
result = MathHelper.add(5, 3)
print(result)
check = MathHelper.is_even(10)
print(check)Kamu juga dapat memanggilnya dari sebuah object:
helper = MathHelper()
result2 = helper.add(2, 4)
print(result2)Output:
8
True
6Metode statis tidak mengakses data instans atau class:
class Calculator:
brand = "Python Calc"
def __init__(self, owner):
self.owner = owner
@staticmethod
def multiply(x, y):
# Tidak ada self di sini, jadi self.owner tidak tersedia
return x * yPoin utama: Gunakan @staticmethod saat kamu membutuhkan fungsi yang terkait dengan class, tetapi tidak memerlukan akses ke instans (self) atau data class. Parameter self tidak diperlukan.
Coba sendiri
Pelajaran ini tidak memiliki tantangan kode.
Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.
Semua pelajaran di Pemrograman Berorientasi Objek
1Dasar-Dasar OOP
Pengantar OOPFile EksternalClass dan ObjectParameter selfMethodAtributMethod Constructor (__init__)Rangkuman: Kalkulator Sederhana4Pewarisan
Pewarisan DasarFungsi super()Penimpaan MethodPewarisan BergandaUrutan Resolusi MethodRingkasan: Hierarki Karyawan5Polimorfisme
Meninjau Ulang Method OverridingDuck Typingclass dan method AbstrakDesain InterfaceRingkasan: Kalkulator Bentuk8Konsep OOP Lanjutan
Komposisi vs PewarisanMixinsMetode Statis dan Metode ClassDecorator ClassPengelola Konteks11Pola Desain Bagian 2
Pola PerintahPola AdapterPola DecoratorPola Template MethodPola StatePola Composite3Property class
Variabel instance vs variabel classDekorator propertyAtribut privatRangkuman: Pengelola Rekening Bank6Enkapsulasi
Anggota Public, Protected, PrivateModifier AksesPenyembunyian InformasiDecorator Property Tingkat LanjutUlasan: Sistem Catatan Siswa12Proyek: Manajemen Perpustakaan
Ikhtisar Proyekclass Buku dan PenggunaSistem PeminjamanFitur PencarianAntarmuka AdminPengujian dan IntegrasiLatihan sendiri: Compiler Python online