Tugas Minggu 3 - Alpro 2 - Si UNIPDU
Class & Object
A. Pengertian OOP
Dalam bahasa indonesia, Pemrograman Berorientasi Objek (PBO) atau Object Oriented Programming (OOP) adalah jenis pemrograman komputer di mana programmer mendefinisikan tipe data dari struktur data, dan juga jenis operasi (fungsi) yang dapat diterapkan pada struktur data. Kemudian, struktur data ini yang nantinya akan menjadi objek yang meliputi data dan fungsi.
Selain itu, programmer dapat menciptakan hubungan antar objek. Misalnya, karakteristik suatu objek dapat menurun dari objek lain.
Berikut merupakan komponen OOP yang perlu diketahui.
1. Class
Class bertugas untuk mengumpulkan prosedur/fungsi dan variabel dalam satu tempat. Class merupakan blueprint dari sebuah objek atau cetakan untuk membuat objek.
Contoh penggunaan class
public class BangunDatar {
//Deklarasi Variabel
}
2. Object
Object adalah instance dari class secara umum merepresentasikan (template) sebuah object, sebuah instance adalah representasi nyata dari class itu sendiri.
Contoh object
public class Main {
public static void main(String args[]){
// Ini adalah object untuk Bangun Datar
bangunDatar bangundatar = new bangunDatar();
}
}
3. Attribute
Attribute merupakan bagian dari sebuah class yang masih berhubungan erat dari class tersebut. Atribut bisa juga disebut sebagai properti atau properties dari sebuah class. Contohnya ketika kamu punya sebuah Class Mahasiswa, maka kamu dapat menambahkan atribut seperti nama, umur, alamat dsb.
Contoh Penggunaan Atribut
public class Mahasiswa{
String nama, alamat;
Int umur;
Mahasiswa(){ //konstruktor
nama = “unknown”; //attribute
umur = “unknown”; //attribute
alamat = “unknown” //attribute
}
4. Method (Void dan Return)
Method berperan menjelaskan bagaimana suatu atribut beraksi. Peran yang dimaksud berupa tingkah laku (behavior) yang dapat digambarkan oleh suatu method. Method ini ada 2 bagian yaitu method void dan void return.
1. Void adalah method yang tidak memiliki nilai kembali/return.
2. Return adalah method yang mengembalikan nilai secara langsung atau sebuah nilai dari variable.
Contoh
class Mahasiswa{
Public String nama, alamat;
Public Int umur;
Mahasiswa(){ //constuctor
nama = “unknown”; //attribute
umur = “unknown”; //attribute
alamat = “unknown”; //attribute
public void PrintData() { //Method
System.out.println(“Nama : “+this.nama);
System.out.println(“Umur : “+this.umur);
System.out.println(“Alamat : “+this.alamat);
}
}
//Class Main
public class Main {
public static void main(String[] args) {
Mahasiswa mhs = new Mahasiswa();
mhs.PrintData(); //Pemanggilan Method pada Main.cs
}
}
Contoh Program Class dan Object1. Induk Class Bangun Datar
public class BangunDatar {
//Deklarasi Variabel
float luas, keliling;
float luas(){
System.out.println("Menghitung luas bangun datar");
return 0;
}
float keliling(){
System.out.println("Menghitung keliling bangun datar");
return 0;
}
}
2. Class untuk Persegi
public class ClassPersegi extends BangunDatar {
int panjang = 4;
int lebar = 4;
int sisi;
@Override
float luas(){
return this.sisi * this.sisi;
}
@Override
float keliling(){
return this.panjang * this.lebar;
}
}
3. Class untuk Lingkaran
public class ClassLingkaran extends BangunDatar {
float r;
double phi = 3.14;
@Override
float luas(){
return (float) (phi * this.r * this.r);
}
@Override
float keliling(){
return (float) (2 * phi * this.r);
}
}
4. Class untuk Persegi Panjang
5. Class untuk Segitigapublic class ClassPersegiPanjang extends BangunDatar { int panjang; int lebar; @Override float luas(){ return this.panjang * this.lebar; } @Override float keliling(){ return (float) (2 * this.panjang + this.lebar); } }public class ClassSegitiga extends BangunDatar { float alas; float tinggi; int sisi; @Override float luas(){ return (float) (0.5 * this.alas * this.tinggi); } @Override float keliling(){ return this.sisi * this.sisi * this.sisi; } }6. Class Main
public class ClassMain {
public static void main(String args[]){
// Objek Bangun Datar
BangunDatar bangunDatar = new BangunDatar();
// Objek Persegi
ClassPersegi persegi = new ClassPersegi();
persegi.sisi = 2;
// Objek Lingkaran
ClassLingkaran lingkaran = new ClassLingkaran();
lingkaran.r = 22;
// Objek Persegi Panjang
ClassPersegiPanjang persegiPanjang = new ClassPersegiPanjang();
persegiPanjang.panjang = 8;
persegiPanjang.lebar = 4;
// Objek Segitiga
ClassSegitiga segitiga = new ClassSegitiga();
segitiga.alas = 12;
segitiga.tinggi = 8;
segitiga.sisi = 5;
// Calling method
bangunDatar.luas();
bangunDatar.keliling();
System.out.println("----------------------------------------------------");
persegi.luas();
persegi.keliling();
System.out.println("Hasil luas persegi : "+persegi.luas());
System.out.println("Hasil keliling persegi : "+persegi.keliling());
System.out.println();
lingkaran.luas();
lingkaran.keliling();
System.out.println("Hasil luas lingkaran : "+lingkaran.luas());
System.out.println("Hasil keliling lingkaran : "+lingkaran.keliling());
System.out.println();
persegiPanjang.luas();
persegiPanjang.keliling();
System.out.println("Hasil luas persegi panjang : "+persegiPanjang.luas());
System.out.println("Hasil keliling persegi panjang : "+persegiPanjang.keliling());
System.out.println();
segitiga.luas();
segitiga.keliling();
System.out.println("Hasil luas segitiga : "+segitiga.luas());
System.out.println("Hasil keliling segitiga : "+segitiga.keliling());
}
}
Komentar
Posting Komentar