class vs object
Termasuk bagian Pemrograman Berorientasi Objek dalam perjalanan Python di Coddy. Pelajaran 3 dari 64.
Class dan object memiliki fungsi yang berbeda. Class adalah cetak biru, sedangkan object adalah sesuatu yang kamu buat berdasarkan cetak biru tersebut.
Berikut contoh class:
class Dog:
# dimiliki bersama oleh semua anjing
species = "Canis familiaris"Sekarang kita dapat mengakses atribut class secara langsung menggunakan Dog.species, dengan Dog sebagai nama class:
print(f"Class species: {Dog.species}")
# Class species: Canis familiarisIni mengakses data dari class itu sendiri, bukan dari object tertentu.
Sekarang mari kita pelajari cara kerjanya pada object. Buat object dari class Dog:
dog1 = Dog()
dog2 = Dog()Object dapat memiliki atribut individual yang tidak dapat dimiliki class:
dog1.name = "Nicky"
dog1.breed = "Siberian Husky"
dog2.name = "Teemon"
dog2.breed = "Shu'ali"Bandingkan hal yang dapat dilakukan oleh class dan object:
print(f"Object 1: {dog1.name} is a {dog1.breed}")
print(f"Object 2: {dog2.name} is a {dog2.breed}")
print(f"Both share class attribute: {Dog.species}")Output:
Object 1: Nicky is a Siberian Husky
Object 2: Teemon is a Shu'ali
Both share class attribute: Canis familiarisPerbedaan Utama: class Dog mendefinisikan hal-hal yang dimiliki semua anjing, sedangkan object dog1 dan dog2 mewakili anjing tertentu yang masing-masing memiliki property unik.
Tantangan
MudahLengkapi kode untuk membuat class Student dan dua object student. Tambahkan nama dan nilai yang berbeda untuk setiap student.
student.py: Di sinilah kamu akan mendefinisikan classStudent.driver.py: File eksekusi utama yang akan mengimpor dan menggunakan class Student milikmu:Lengkapi kode untuk membuat class
Studentdan dua object student. Tambahkan nama dan nilai yang berbeda untuk setiap student.Nama student1 adalah
"Alice"dengan nilai"A".Nama student2 adalah
"Bob"dengan nilai"B".
Coba sendiri
# Impor class Student
from student import Student
# TODO: Buat dua object siswa
# TODO: Tambahkan atribut ke student1
# TODO: Tambahkan atribut ke student2
# Tampilkan informasi siswa
print(f"{student1.name} has grade {student1.grade} at {Student.school}")
print(f"{student2.name} has grade {student2.grade} at {Student.school}")Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.
Semua pelajaran di Pemrograman Berorientasi Objek
1Dasar-Dasar OOP
File EksternalPengantar OOPclass vs objectParameter selfmethodAtributMethod Konstruktor (__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