Laporan Praktikum PBO
FINAL_03_Donni Adeleo Ardana_231080200055_PrakPBO.pdf
oleh Donni Adeleo Ardana (231080200055)
untuk mata kuliah Praktikum Pemrograman Berorientasi Objek (PBO)
BAB 1 Pengenalan Pemrograman Berorientasi Objek
Bab ini membahas dasar-dasar pemrograman berorientasi objek
(Object-Oriented Programming/OOP), yang merupakan paradigma pemrograman
berbasis objek dan class. Konsep utama OOP meliputi:
- Class:
cetakan (template) untuk membuat objek.
- Object:
instansiasi dari class.
- Encapsulation:
menyembunyikan detail implementasi melalui akses kontrol (private,
public).
- Inheritance:
pewarisan atribut dan metode dari satu class ke class lainnya.
- Polymorphism:
kemampuan objek untuk memiliki banyak bentuk.
Di bab ini juga dibahas cara membuat program sederhana menggunakan Java,
mencakup cara menulis class dan method dasar. Mahasiswa diperkenalkan dengan IDE
NetBeans, serta struktur dasar file .java.
BAB 2 Konsep Dasar Class dan
Object
Bab kedua berfokus pada implementasi konsep class dan object secara
lebih mendalam. Mahasiswa mulai mempraktikkan:
- Membuat class
dengan atribut (variabel anggota) dan method (fungsi anggota).
- Melakukan
instansiasi objek dari sebuah class.
- Memberikan
nilai (value) terhadap atribut objek melalui konstruktor atau setter.
- Menampilkan
data objek menggunakan method cetak (seperti tampilData()).
Contoh implementasi meliputi pembuatan class Mahasiswa dan Dosen, lengkap
dengan atribut seperti nama, NIM, jurusan, serta method yang menampilkan data
ke console.
BAB 3 Konstruktor dan Overloading
Pada bab ini, mahasiswa belajar tentang:
- Constructor:
method khusus yang dieksekusi saat objek dibuat, digunakan untuk
menginisialisasi nilai atribut.
- Overloading:
kemampuan untuk memiliki beberapa method dengan nama yang sama tetapi
parameter berbeda.
Bab ini memberi latihan membuat konstruktor default dan konstruktor dengan
parameter. Mahasiswa juga mencoba method overloading, misalnya method tampilData()
yang memiliki dua versi: satu tanpa parameter dan satu dengan parameter
tambahan.
BAB 4 Pewarisan (Inheritance)
Bab keempat menjelaskan konsep inheritance (pewarisan), yaitu kemampuan
suatu class untuk mewarisi atribut dan method dari class induk (superclass).
Beberapa hal yang dipelajari:
- Keyword extends
digunakan untuk membuat subclass dari superclass.
- Subclass
dapat menambahkan atribut atau method baru, dan juga dapat menimpa
(override) method dari superclass.
- Implementasi
dengan class seperti Pegawai sebagai superclass dan Dosen serta Staf
sebagai subclass.
Penerapan inheritance ini membantu mahasiswa memahami bagaimana konsep
turunan diterapkan untuk menghemat penulisan kode dan meningkatkan modularitas.
BAB 5 Enkapsulasi dan Akses
Modifier
Bab ini menjelaskan konsep enkapsulasi, yaitu membungkus data dan method
dalam satu kesatuan class, serta membatasi akses dengan modifier seperti:
- private:
hanya dapat diakses dalam class itu sendiri
- public:
dapat diakses dari mana saja
- protected:
dapat diakses oleh class turunan
Mahasiswa belajar menggunakan getter dan setter untuk mengakses dan
mengubah nilai atribut yang bersifat private. Konsep ini penting untuk menjaga
keamanan data dan mencegah manipulasi langsung.
BAB 6 Interface dan Abstract Class
Bab terakhir membahas dua konsep penting lanjutan dari OOP:
- Abstract
Class
- Tidak
dapat diinstansiasi secara langsung.
- Dapat
memiliki method abstrak (tanpa isi) dan method biasa.
- Digunakan
untuk mendefinisikan kerangka dasar class turunan.
- Interface
- Mirip dengan
abstract class tetapi hanya berisi deklarasi method (tanpa implementasi).
- Sebuah class
dapat mengimplementasikan lebih dari satu interface (multiple
inheritance).
Contoh implementasi meliputi interface Kelakuan dengan method beraktivitas(),
yang diimplementasikan dalam class seperti Manusia, Mahasiswa, atau Pegawai.
Kesimpulan Umum
Melalui enam bab praktikum ini, mahasiswa diharapkan:
- Menguasai
prinsip-prinsip utama OOP (class, object, inheritance, encapsulation,
polymorphism).
- Mampu
membuat aplikasi Java sederhana menggunakan pendekatan berorientasi objek.
- Terbiasa
menggunakan konstruktor, overloading, overriding, dan interface.
- Siap
mengembangkan program skala kecil hingga menengah menggunakan pendekatan
modular dan efisien.
Komentar
Posting Komentar