SlideShare a Scribd company logo
1 of 8
Download to read offline
Modul PBO – Teknokrat
21
Kelas Objek
instansiasi
Gambar 3. 1 Pembuatan objek dari kelas dengan
instansiasi
Gambar 3. 2 Objek bayi
dalam kehidupan nyata
KELAS & OBJEK
Tujuan
Praktikan dapat memahami konsep kelas dan objek dan dapat membuat contoh kelas
dan objek dengan bahasa pemrograman Java.
KELAS DAN OBJEK
Dua konsep paling utama dalam pemrograman berorientasi objek (object-oriented programming)
adalah kelas dan objek. Kelas merupakan cetak biru (blue print) dari objek-objek yang akan dibuat.
Sebuah kelas menggambarkan ciri-ciri objek secara umum. Sebagai contoh Andi, Budi, Cita, dan Dina
merupakan objek dari kelas mahasiswa. Andi dan ketiga objek lainnya memiliki kesamaan attribute
(npm, nama, jenis kelamin, jurusan, dan ipk) dan method untuk mengakses data pada atributnya
(misalnya fungsi untuk menginputkan data npm, nama, jenis kelamin, dsb).
Objek merupakan segala sesuatu yang ada di dunia ini, seperti manusia, hewan, tumbuhan, rumah,
kendaraan, dan sebagainya. Contoh objek yang telah disebutkan di atas merupakan contoh objek
nyata dalam kehidupan sehari-hari. Pada pemrograman berorientasi objek akan diajarkan
bagaimana membawa konsep objek dalam dunia nyata menjadi objek dalam dunia pemrograman.
Analogi kelas dan objek seperti rancangan
model mobil dan pembuatan mobil-mobil.
Proses pembuatan objek dari kelas disebut
dengan instance (Gambar 3.1).
Setiap objek dalam dunia nyata terdiri dari dua elemen penyusunnya,
yaitu keadaan (state) dan perilaku/sifat (behavior). Sebagai contoh, bayi
(Gambar 3.2) memiliki keadaan yaitu nama, berat badan, panjang
badan, dan jenis kelamin, serta memiliki perilaku/sifat seperti menangis,
tertawa, bicara, dan merangkak. Ketika objek diterjemahkan ke dalam
konsep PBO (Tabel 3.1), maka elemen penyusun juga terdiri dari dua
bagian, yaitu:
§ Atribut (attribute), merupakan ciri-ciri yang melekat pada suatu objek (state).
§ Metode (method), merupakan fungsi-fungsi yang digunakan untuk
memanipulasi nilai-nilai pada atribut atau melakukan hal-hal yang
dapat dilakukan oleh suatu objek (behavior).
Objek-objek yang memiliki kesamaan atribut dan metode dapat dikelompokan menjadi sebuah
kelas, sehingga objek-objek tersebut disebut dengan instance of class. Untuk membuat
(menginstansi) objek dari kelas dengan menggunakan kata kunci new.
3
BAB
Modul PBO – Teknokrat
22
Tabel 3. 1 Implementasi kelas bayi berdasarkan representasi dunia nyata
Representasi dunia nyata Kelas dalam PBO
Ciri
§ Nama
§ BeratBadan
§ PanjangBadan
§ JenisKelamin
Kelakuan
§ Menangis
§ Tertawa
§ Bicara
§ Merangkak
Atribut
§ String nama
§ int beratBadan
§ int panjangBadan
§ char jenisKelamin
Metode
§ void menangis()
§ void tertawa()
§ void bicara()
§ void merangkak()
Java merupakan bahasa pemrograman tingkat tinggi yang diciptakan berdasarkan turunan dari C++.
Target utama dari penggunaan bahasa Java adalah pengkodingan berarah objek yang simpel
(tidak memerlukan header), menghindari pemanipulasian pointer secara manual (otomatis), dan
lainnya. Kini, penggunaan Java sudah sangat banyak di perusahaan mengingat Java adalah cross-
platform dan bahkan cross-device.
PENDEFINISIAN KELAS
Struktur sebuah kelas terdiri atas dua bagian, yaitu kepala dan badan kelas. Bagian kepala
merupakan baris awal yang mendefinisikan nama kelas. Bagian badan kelas didefinisikan didalam
tanda kurung kurawal buka “{“ dan kurung kurawal tutup “}”. Berikut adalah strukturnya:
class <nama_kelas>
{
// Pendefinisian anggota kelas:
// Attribute
// Method
}
Program 3-1
public class Mobil {
private String noPlat;
private String warna;
private String manufaktur;
private int kecepatan;
public void setNoPlat(String noPlat) {
this.noPlat = noPlat;
}
public String getNoPlat() {
return noPlat;
}
}
Modul PBO – Teknokrat
23
Kelas dapat digambarkan dalam bentuk notasi grafik UML (unified modeling language) seperti pada
Gambar 3.3 berikut.
Gambar 3. 3 Notasi UML diagram kelas
OBJEK
Objek merupakan segala sesuatu yang ada di dunia ini, yaitu manusia, hewan, tumbuhan, rumah,
kendaraan, dan lain sebagainya. Contoh-contoh objek yang telah disebutkan di atas merupakan
contoh objek nyata pada kehidupan kita. Pada pemrograman berorientasi objek, kita akan belajar
bagaimana membawa konsep objek dalam kehidupan nyata menjadi objek dalam dunia
pemrograman. Setiap objek dalam dunia nyata pasti memiliki 2 elemen penyusunnya, yaitu keadaan
(state) dan perilaku/sifat (behaviour). Sebagai contoh, sepeda memiliki keadaan yaitu warna, merk,
jumlah roda, ukuran roda. Sedangkan perilaku/sifat sepeda adalah berjalan, berhenti, berbelok,
menambah kecepatan, mengerem. Pada saat objek diterjemahkan ke dalam konsep PBO, maka
elemen penyusunannya juga terdiri atas 2 bagian, yaitu:
• Atribut, merupakan ciri-ciri yang melekat pada suatu objek (state).
• Method, merupakan fungsi-fungsi yang digunakan untuk memanipulasi nilai-nilai pada atribut
atau untuk melakukan hal-hal yang dapat dilakukan suatu objek (behaviour).
Sintaks membuat objek dari suatu class:
namaClass namaObjek = new namaClass();
Contoh:
Program 3-2
public class MobilMain {
public static void main(String [] args) {
Mobil avanza = new Mobil();
avanza.setNoPlat("BE 212 WI");
System.out.println("Mobil dengan plat " + avanza.getNoPlat());
}
}
Hasil Output
Mobil dengan plat BE 212 WI
Perhatikan kelas MobilMain di atas, nama objek (instant of class) dari kelas Mobil adalah avanza.
Proses ini dapat digambarkan dalam bentuk notasi UML seperti pada Gambar 3.4 berikut.
Modul PBO – Teknokrat
24
+setNoPlat(in noPlat : String) : void
+getNoPlat() : String
-noPlat : String
-warna : String
-manufaktur : String
-kecepatan : int
Mobil
noPlat : String = "BE 212 WI"
warna : String = "Hitam"
manufaktur : String = "Toyota"
kecepatan : int = 60
avanza : Mobil
new Mobil()
noPlat : String = "BE 333 MO"
warna : String = "Kuning"
manufaktur : String = "Honda"
kecepatan : int = 120
jazz : Mobil
Class diagram
Object diagram
Gambar 3. 4 Notasi UML untuk kelas dan objek
DEKLARASI ATRIBUT
Dalam pendeklarasian atribut, kita tuliskan:
<modifier> <type> <name> [= <default_value>];
Langkah selanjutnya adalah mengurutkan atribut yang akan diisikan pada class. Untuk setiap
informasi, urutkan juga tipe data yang yang tepat untuk digunakan. Contohnya, Anda tidak mungkin
menginginkan untuk menggunakan tipe data integer untuk nama siswa, atau tipe data string pada
nilai siswa.
Berikut ini adalah contoh informasi yang akan diisikan pada class StudentRecord :
name - String
address - String
age - Int
math grade - double
english grade - double
science grade - double
average grade - double
DEKLARASI METHOD
Sebelum kita membahas method apa yang akan dipakai pada class, mari kita perhatikan penulisan
method secara umum.
Dalam pendeklarasian method, kita tuliskan:
<modifier> <returnType> <name>(<parameter>*) {
<statement>*
}
dimana,
<modifier> dapat menggunakan beberapa modifier yang berbeda
<returnType> dapat berupa seluruh tipe data, termasuk void
Modul PBO – Teknokrat
25
<name> identifier atas class
<parameter> ::= <tipe_parameter> <nama_parameter>[,]
Contoh:
Program 3-3
public class Mobil {
private String noPlat;
private String warna;
private String manufaktur;
private int kecepatan;
public void setNoPlat(String noPlat) {
this.noPlat = noPlat;
}
public String getNoPlat() {
return noPlat;
}
public String getWarna() {
return warna;
}
public void setWarna(String warna) {
this.warna = warna;
}
public String getManufaktur() {
return manufaktur;
}
public void setManufaktur(String manufaktur) {
this.manufaktur = manufaktur;
}
public int getKecepatan() {
return kecepatan;
}
public void setKecepatan(int kecepatan) {
this.kecepatan = kecepatan;
}
public void infoMobil() {
System.out.println("Informasi Kendaraan:");
System.out.println("--------------------");
System.out.println("No Plat : "+getNoPlat());
System.out.println("Kecepatan: "+getKecepatan());
}
}
Program 3-4
public class MobilMain {
public static void main(String [] args) {
Mobil avanza = new Mobil();
avanza.setNoPlat("BE 212 WI");
Modul PBO – Teknokrat
26
avanza.setManufaktur("Toyota");
avanza.setWarna("Putih");
avanza.setKecepatan(220);
System.out.println("Mobil dengan plat " + avanza.getNoPlat() +
" yang dibuat oleh " + avanza.getManufaktur() +
" berwarna " + avanza.getWarna() +
" memiliki kecepatan maksimal " + avanza.getKecepatan() +
" Km/jam.");
}
}
Hasil Output
Mobil dengan plat BE 212 WI yang dibuat oleh Toyota berwarna Putih
memiliki kecepatan maksimal 220 Km/jam.
Modul PBO – Teknokrat
27
Lembar Kerja Praktikum: Modul 3
NPM: Asisten:
Nama: Nilai:
Kelas: Tanggal:
Soal
[Score: 100] Buat sebuah class Pelajar dengan ketentuan sebagai berikut:
· Memiliki atribut: npm, nama, nilaiUjian1, nilaiUjian2, dan tugas
· Memiliki method:
o Accessor dan mutator
o nilaiAkhir à untuk menghitung nilai akhir dari pelajar tersebut dengan
rumus:
( ) ( ) ( )
%
25
*
%
40
*
2
%
35
1 nTugas
nUjian
nUjian
nA +
+
*
=
o isLulus à digunakan untuk mengecek apakah seorang siswa lulus atau tidak,
dinyatakan lulus bila nilai akhirnya sama dengan 60 ke atas.
Berikut ini adalah class pelajarMain yang digunakan untuk memanggil class Pelajar.
Program Utama
public class pelajarMain {
public static void main(String [] args) {
Pelajar p = new Pelajar();
p.setNpm("0517032014");
p.setNama("Ardiansyah");
p.setNilaiUjian1(66.5);
p.setNilaiUjian2(80);
p.setNilaiTugas(85.5);
System.out.println("Data Pelajar: ");
System.out.println("NPM: "+p.getNpm());
System.out.println("Nama: "+p.getNama());
System.out.println("Ujian 1: "+p.getNilaiUjian1());
System.out.println("Ujian 2: "+p.getNilaiUjian2());
System.out.println("Tugas: "+p.getNilaiTugas());
System.out.println("Nilai Akhir: "+p.nilaiAkhir());
System.out.println("Status: "+p.isLulus());
}
}
Modul PBO – Teknokrat
28
Hasil Output
Data Pelajar:
NPM: 0517032014
Nama: Ardiansyah
Ujian 1: 66.50
Ujian 2: 80.00
Tugas: 85.50
Nilai Akhir: 76.65
Status: Lulus

More Related Content

What's hot

[PBO] Pertemuan 1 (praktik) - Pengenalan java
[PBO] Pertemuan 1 (praktik) - Pengenalan java[PBO] Pertemuan 1 (praktik) - Pengenalan java
[PBO] Pertemuan 1 (praktik) - Pengenalan javarizki adam kurniawan
 
Java (Netbeans) - Class, Constructor, Object (Object Oriented Programming)
Java (Netbeans) - Class, Constructor, Object (Object Oriented Programming)Java (Netbeans) - Class, Constructor, Object (Object Oriented Programming)
Java (Netbeans) - Class, Constructor, Object (Object Oriented Programming)Melina Krisnawati
 
1. konsep pbo
1. konsep pbo1. konsep pbo
1. konsep pbojona_jona
 
CCIT OOP Pertemuan 1
CCIT OOP Pertemuan 1CCIT OOP Pertemuan 1
CCIT OOP Pertemuan 1giamuhammad
 
Modul Pemrograman Berorientasi Objek
Modul Pemrograman Berorientasi ObjekModul Pemrograman Berorientasi Objek
Modul Pemrograman Berorientasi ObjekWahyu Widodo
 

What's hot (8)

[PBO] Pertemuan 1 (praktik) - Pengenalan java
[PBO] Pertemuan 1 (praktik) - Pengenalan java[PBO] Pertemuan 1 (praktik) - Pengenalan java
[PBO] Pertemuan 1 (praktik) - Pengenalan java
 
TD-635-01-PSBO
TD-635-01-PSBOTD-635-01-PSBO
TD-635-01-PSBO
 
Java (Netbeans) - Class, Constructor, Object (Object Oriented Programming)
Java (Netbeans) - Class, Constructor, Object (Object Oriented Programming)Java (Netbeans) - Class, Constructor, Object (Object Oriented Programming)
Java (Netbeans) - Class, Constructor, Object (Object Oriented Programming)
 
Bahan ajar pertemuan 1 Class & Object
Bahan ajar pertemuan 1 Class & ObjectBahan ajar pertemuan 1 Class & Object
Bahan ajar pertemuan 1 Class & Object
 
1. konsep pbo
1. konsep pbo1. konsep pbo
1. konsep pbo
 
CCIT OOP Pertemuan 1
CCIT OOP Pertemuan 1CCIT OOP Pertemuan 1
CCIT OOP Pertemuan 1
 
Apsi 1
Apsi 1Apsi 1
Apsi 1
 
Modul Pemrograman Berorientasi Objek
Modul Pemrograman Berorientasi ObjekModul Pemrograman Berorientasi Objek
Modul Pemrograman Berorientasi Objek
 

Similar to Class Pelajar.javapublic class Pelajar {private String npm;private String nama;private double nilaiUjian1; private double nilaiUjian2;private double nilaiTugas;public String getNpm() {return npm;}public void setNpm(String npm) {this.npm = npm;}public String getNama() {return nama; }public void setNama(String nama) {this.nama = nama;}public double getNilaiUjian1() {return nilaiUjian

10 pemrograman berorientasi objek di php
10 pemrograman berorientasi objek di php10 pemrograman berorientasi objek di php
10 pemrograman berorientasi objek di phpJamil Jamil
 
Pemodelan Perangkat Lunak UML
Pemodelan Perangkat Lunak UMLPemodelan Perangkat Lunak UML
Pemodelan Perangkat Lunak UMLAMIK AL MA'SOEM
 
Tugas 3 ki-0316-alvin yosua-1411510454
Tugas 3 ki-0316-alvin yosua-1411510454Tugas 3 ki-0316-alvin yosua-1411510454
Tugas 3 ki-0316-alvin yosua-1411510454alvinyosua
 
JENI-Intro1-Bab09-Bekerja Dengan Java Class Library.pdf
JENI-Intro1-Bab09-Bekerja Dengan Java Class Library.pdfJENI-Intro1-Bab09-Bekerja Dengan Java Class Library.pdf
JENI-Intro1-Bab09-Bekerja Dengan Java Class Library.pdfJurnal IT
 
Pertemuan 1
Pertemuan 1Pertemuan 1
Pertemuan 1zisgoo
 
dasar program berorientasi objek pada power builder
dasar program berorientasi objek pada power builderdasar program berorientasi objek pada power builder
dasar program berorientasi objek pada power builderFariszal Nova
 
Abu yanto tugas resume aplinet
Abu yanto tugas resume aplinetAbu yanto tugas resume aplinet
Abu yanto tugas resume aplinetabuyanto
 
Part 9 - Object Oriented Programming Lanjutan
Part 9 - Object Oriented Programming LanjutanPart 9 - Object Oriented Programming Lanjutan
Part 9 - Object Oriented Programming LanjutanRolly Yesputra
 
Presentation1.pdf
Presentation1.pdfPresentation1.pdf
Presentation1.pdfRobbyCokro1
 
Jeni intro1-bab09-bekerja dengan java class library
Jeni intro1-bab09-bekerja dengan java class libraryJeni intro1-bab09-bekerja dengan java class library
Jeni intro1-bab09-bekerja dengan java class libraryKristanto Wijaya
 
Jeni Intro1 Bab09 Bekerja Dengan Java Class Library
Jeni Intro1 Bab09 Bekerja Dengan Java Class LibraryJeni Intro1 Bab09 Bekerja Dengan Java Class Library
Jeni Intro1 Bab09 Bekerja Dengan Java Class LibraryIndividual Consultants
 
Pengantar grafika1
Pengantar grafika1Pengantar grafika1
Pengantar grafika1Hanz Skyblue
 
Algoritma dan Struktur Data
Algoritma dan Struktur DataAlgoritma dan Struktur Data
Algoritma dan Struktur DataAs Faizin
 

Similar to Class Pelajar.javapublic class Pelajar {private String npm;private String nama;private double nilaiUjian1; private double nilaiUjian2;private double nilaiTugas;public String getNpm() {return npm;}public void setNpm(String npm) {this.npm = npm;}public String getNama() {return nama; }public void setNama(String nama) {this.nama = nama;}public double getNilaiUjian1() {return nilaiUjian (20)

10 pemrograman berorientasi objek di php
10 pemrograman berorientasi objek di php10 pemrograman berorientasi objek di php
10 pemrograman berorientasi objek di php
 
Pemodelan Perangkat Lunak UML
Pemodelan Perangkat Lunak UMLPemodelan Perangkat Lunak UML
Pemodelan Perangkat Lunak UML
 
Job 11 sebenarnya
Job 11 sebenarnyaJob 11 sebenarnya
Job 11 sebenarnya
 
Uml
UmlUml
Uml
 
Tugas 3 ki-0316-alvin yosua-1411510454
Tugas 3 ki-0316-alvin yosua-1411510454Tugas 3 ki-0316-alvin yosua-1411510454
Tugas 3 ki-0316-alvin yosua-1411510454
 
Object Oriented
Object OrientedObject Oriented
Object Oriented
 
JENI-Intro1-Bab09-Bekerja Dengan Java Class Library.pdf
JENI-Intro1-Bab09-Bekerja Dengan Java Class Library.pdfJENI-Intro1-Bab09-Bekerja Dengan Java Class Library.pdf
JENI-Intro1-Bab09-Bekerja Dengan Java Class Library.pdf
 
Pertemuan 1
Pertemuan 1Pertemuan 1
Pertemuan 1
 
Modul Object Oriented Programming
Modul Object Oriented ProgrammingModul Object Oriented Programming
Modul Object Oriented Programming
 
Uml class-diagram
Uml class-diagramUml class-diagram
Uml class-diagram
 
dasar program berorientasi objek pada power builder
dasar program berorientasi objek pada power builderdasar program berorientasi objek pada power builder
dasar program berorientasi objek pada power builder
 
Abu yanto tugas resume aplinet
Abu yanto tugas resume aplinetAbu yanto tugas resume aplinet
Abu yanto tugas resume aplinet
 
Algoritma Pemrograman 2
Algoritma Pemrograman 2Algoritma Pemrograman 2
Algoritma Pemrograman 2
 
Part 9 - Object Oriented Programming Lanjutan
Part 9 - Object Oriented Programming LanjutanPart 9 - Object Oriented Programming Lanjutan
Part 9 - Object Oriented Programming Lanjutan
 
Materi delphi
Materi delphiMateri delphi
Materi delphi
 
Presentation1.pdf
Presentation1.pdfPresentation1.pdf
Presentation1.pdf
 
Jeni intro1-bab09-bekerja dengan java class library
Jeni intro1-bab09-bekerja dengan java class libraryJeni intro1-bab09-bekerja dengan java class library
Jeni intro1-bab09-bekerja dengan java class library
 
Jeni Intro1 Bab09 Bekerja Dengan Java Class Library
Jeni Intro1 Bab09 Bekerja Dengan Java Class LibraryJeni Intro1 Bab09 Bekerja Dengan Java Class Library
Jeni Intro1 Bab09 Bekerja Dengan Java Class Library
 
Pengantar grafika1
Pengantar grafika1Pengantar grafika1
Pengantar grafika1
 
Algoritma dan Struktur Data
Algoritma dan Struktur DataAlgoritma dan Struktur Data
Algoritma dan Struktur Data
 

More from Rakhmat Dedi Gunawan

Modul PBO Bab-12 - Setup & Deployment
Modul PBO Bab-12 - Setup & DeploymentModul PBO Bab-12 - Setup & Deployment
Modul PBO Bab-12 - Setup & DeploymentRakhmat Dedi Gunawan
 
Modul PBO Bab-10 - Event & Exception Handling
Modul PBO Bab-10 - Event & Exception HandlingModul PBO Bab-10 - Event & Exception Handling
Modul PBO Bab-10 - Event & Exception HandlingRakhmat Dedi Gunawan
 
Modul PBO Bab-07 - Enkapsulasi (Encapsulation)
Modul PBO Bab-07 - Enkapsulasi (Encapsulation)Modul PBO Bab-07 - Enkapsulasi (Encapsulation)
Modul PBO Bab-07 - Enkapsulasi (Encapsulation)Rakhmat Dedi Gunawan
 
Modul PBO Bab-05 - Pewarisan (Inheritance)
Modul PBO Bab-05 - Pewarisan (Inheritance)Modul PBO Bab-05 - Pewarisan (Inheritance)
Modul PBO Bab-05 - Pewarisan (Inheritance)Rakhmat Dedi Gunawan
 
Modul PBO Bab-04 - Hubungan antar Kelas
Modul PBO Bab-04 - Hubungan antar KelasModul PBO Bab-04 - Hubungan antar Kelas
Modul PBO Bab-04 - Hubungan antar KelasRakhmat Dedi Gunawan
 
Modul PBO Bab-02 - Struktur Kontrol
Modul PBO Bab-02 - Struktur KontrolModul PBO Bab-02 - Struktur Kontrol
Modul PBO Bab-02 - Struktur KontrolRakhmat Dedi Gunawan
 
Modul PBO Bab-01 - Pengenalan Java
Modul PBO Bab-01 - Pengenalan JavaModul PBO Bab-01 - Pengenalan Java
Modul PBO Bab-01 - Pengenalan JavaRakhmat Dedi Gunawan
 
Modul PBO Bab-06 - Polimorfisme (Polymorphism)
Modul PBO Bab-06 - Polimorfisme (Polymorphism)Modul PBO Bab-06 - Polimorfisme (Polymorphism)
Modul PBO Bab-06 - Polimorfisme (Polymorphism)Rakhmat Dedi Gunawan
 
Chapter 02 - Pembuatan Projek Baru
Chapter 02 - Pembuatan Projek BaruChapter 02 - Pembuatan Projek Baru
Chapter 02 - Pembuatan Projek BaruRakhmat Dedi Gunawan
 
Chapter 10 - Pembatan Report Kwitansi
Chapter 10 - Pembatan Report KwitansiChapter 10 - Pembatan Report Kwitansi
Chapter 10 - Pembatan Report KwitansiRakhmat Dedi Gunawan
 

More from Rakhmat Dedi Gunawan (20)

Modul PBO Bab-00 - Daftar Isi
Modul PBO Bab-00 - Daftar IsiModul PBO Bab-00 - Daftar Isi
Modul PBO Bab-00 - Daftar Isi
 
Modul PBO Bab-12 - Setup & Deployment
Modul PBO Bab-12 - Setup & DeploymentModul PBO Bab-12 - Setup & Deployment
Modul PBO Bab-12 - Setup & Deployment
 
Modul PBO Bab-11 - JDBC
Modul PBO Bab-11 - JDBCModul PBO Bab-11 - JDBC
Modul PBO Bab-11 - JDBC
 
Modul PBO Bab-10 - Event & Exception Handling
Modul PBO Bab-10 - Event & Exception HandlingModul PBO Bab-10 - Event & Exception Handling
Modul PBO Bab-10 - Event & Exception Handling
 
Modul PBO Bab-08 - Java GUI
Modul PBO Bab-08 - Java GUIModul PBO Bab-08 - Java GUI
Modul PBO Bab-08 - Java GUI
 
Modul PBO Bab-09 - Swing
Modul PBO Bab-09 - SwingModul PBO Bab-09 - Swing
Modul PBO Bab-09 - Swing
 
Modul PBO Bab-07 - Enkapsulasi (Encapsulation)
Modul PBO Bab-07 - Enkapsulasi (Encapsulation)Modul PBO Bab-07 - Enkapsulasi (Encapsulation)
Modul PBO Bab-07 - Enkapsulasi (Encapsulation)
 
Modul PBO Bab-05 - Pewarisan (Inheritance)
Modul PBO Bab-05 - Pewarisan (Inheritance)Modul PBO Bab-05 - Pewarisan (Inheritance)
Modul PBO Bab-05 - Pewarisan (Inheritance)
 
Modul PBO Bab-04 - Hubungan antar Kelas
Modul PBO Bab-04 - Hubungan antar KelasModul PBO Bab-04 - Hubungan antar Kelas
Modul PBO Bab-04 - Hubungan antar Kelas
 
Modul PBO Bab-02 - Struktur Kontrol
Modul PBO Bab-02 - Struktur KontrolModul PBO Bab-02 - Struktur Kontrol
Modul PBO Bab-02 - Struktur Kontrol
 
Modul PBO Bab-01 - Pengenalan Java
Modul PBO Bab-01 - Pengenalan JavaModul PBO Bab-01 - Pengenalan Java
Modul PBO Bab-01 - Pengenalan Java
 
Modul PBO Bab-06 - Polimorfisme (Polymorphism)
Modul PBO Bab-06 - Polimorfisme (Polymorphism)Modul PBO Bab-06 - Polimorfisme (Polymorphism)
Modul PBO Bab-06 - Polimorfisme (Polymorphism)
 
Chapter 01 - Pembuatan Database
Chapter 01 - Pembuatan DatabaseChapter 01 - Pembuatan Database
Chapter 01 - Pembuatan Database
 
Chapter 03 - Form Master
Chapter 03 - Form MasterChapter 03 - Form Master
Chapter 03 - Form Master
 
Chapter 02 - Pembuatan Projek Baru
Chapter 02 - Pembuatan Projek BaruChapter 02 - Pembuatan Projek Baru
Chapter 02 - Pembuatan Projek Baru
 
Chapter 10 - Pembatan Report Kwitansi
Chapter 10 - Pembatan Report KwitansiChapter 10 - Pembatan Report Kwitansi
Chapter 10 - Pembatan Report Kwitansi
 
T04-Stored Procedure
T04-Stored ProcedureT04-Stored Procedure
T04-Stored Procedure
 
T05-Trigger
T05-TriggerT05-Trigger
T05-Trigger
 
T02-Join & View
T02-Join & ViewT02-Join & View
T02-Join & View
 
Teori pbd - erd_studi_kasus (1)
Teori pbd - erd_studi_kasus (1)Teori pbd - erd_studi_kasus (1)
Teori pbd - erd_studi_kasus (1)
 

Class Pelajar.javapublic class Pelajar {private String npm;private String nama;private double nilaiUjian1; private double nilaiUjian2;private double nilaiTugas;public String getNpm() {return npm;}public void setNpm(String npm) {this.npm = npm;}public String getNama() {return nama; }public void setNama(String nama) {this.nama = nama;}public double getNilaiUjian1() {return nilaiUjian

  • 1. Modul PBO – Teknokrat 21 Kelas Objek instansiasi Gambar 3. 1 Pembuatan objek dari kelas dengan instansiasi Gambar 3. 2 Objek bayi dalam kehidupan nyata KELAS & OBJEK Tujuan Praktikan dapat memahami konsep kelas dan objek dan dapat membuat contoh kelas dan objek dengan bahasa pemrograman Java. KELAS DAN OBJEK Dua konsep paling utama dalam pemrograman berorientasi objek (object-oriented programming) adalah kelas dan objek. Kelas merupakan cetak biru (blue print) dari objek-objek yang akan dibuat. Sebuah kelas menggambarkan ciri-ciri objek secara umum. Sebagai contoh Andi, Budi, Cita, dan Dina merupakan objek dari kelas mahasiswa. Andi dan ketiga objek lainnya memiliki kesamaan attribute (npm, nama, jenis kelamin, jurusan, dan ipk) dan method untuk mengakses data pada atributnya (misalnya fungsi untuk menginputkan data npm, nama, jenis kelamin, dsb). Objek merupakan segala sesuatu yang ada di dunia ini, seperti manusia, hewan, tumbuhan, rumah, kendaraan, dan sebagainya. Contoh objek yang telah disebutkan di atas merupakan contoh objek nyata dalam kehidupan sehari-hari. Pada pemrograman berorientasi objek akan diajarkan bagaimana membawa konsep objek dalam dunia nyata menjadi objek dalam dunia pemrograman. Analogi kelas dan objek seperti rancangan model mobil dan pembuatan mobil-mobil. Proses pembuatan objek dari kelas disebut dengan instance (Gambar 3.1). Setiap objek dalam dunia nyata terdiri dari dua elemen penyusunnya, yaitu keadaan (state) dan perilaku/sifat (behavior). Sebagai contoh, bayi (Gambar 3.2) memiliki keadaan yaitu nama, berat badan, panjang badan, dan jenis kelamin, serta memiliki perilaku/sifat seperti menangis, tertawa, bicara, dan merangkak. Ketika objek diterjemahkan ke dalam konsep PBO (Tabel 3.1), maka elemen penyusun juga terdiri dari dua bagian, yaitu: § Atribut (attribute), merupakan ciri-ciri yang melekat pada suatu objek (state). § Metode (method), merupakan fungsi-fungsi yang digunakan untuk memanipulasi nilai-nilai pada atribut atau melakukan hal-hal yang dapat dilakukan oleh suatu objek (behavior). Objek-objek yang memiliki kesamaan atribut dan metode dapat dikelompokan menjadi sebuah kelas, sehingga objek-objek tersebut disebut dengan instance of class. Untuk membuat (menginstansi) objek dari kelas dengan menggunakan kata kunci new. 3 BAB
  • 2. Modul PBO – Teknokrat 22 Tabel 3. 1 Implementasi kelas bayi berdasarkan representasi dunia nyata Representasi dunia nyata Kelas dalam PBO Ciri § Nama § BeratBadan § PanjangBadan § JenisKelamin Kelakuan § Menangis § Tertawa § Bicara § Merangkak Atribut § String nama § int beratBadan § int panjangBadan § char jenisKelamin Metode § void menangis() § void tertawa() § void bicara() § void merangkak() Java merupakan bahasa pemrograman tingkat tinggi yang diciptakan berdasarkan turunan dari C++. Target utama dari penggunaan bahasa Java adalah pengkodingan berarah objek yang simpel (tidak memerlukan header), menghindari pemanipulasian pointer secara manual (otomatis), dan lainnya. Kini, penggunaan Java sudah sangat banyak di perusahaan mengingat Java adalah cross- platform dan bahkan cross-device. PENDEFINISIAN KELAS Struktur sebuah kelas terdiri atas dua bagian, yaitu kepala dan badan kelas. Bagian kepala merupakan baris awal yang mendefinisikan nama kelas. Bagian badan kelas didefinisikan didalam tanda kurung kurawal buka “{“ dan kurung kurawal tutup “}”. Berikut adalah strukturnya: class <nama_kelas> { // Pendefinisian anggota kelas: // Attribute // Method } Program 3-1 public class Mobil { private String noPlat; private String warna; private String manufaktur; private int kecepatan; public void setNoPlat(String noPlat) { this.noPlat = noPlat; } public String getNoPlat() { return noPlat; } }
  • 3. Modul PBO – Teknokrat 23 Kelas dapat digambarkan dalam bentuk notasi grafik UML (unified modeling language) seperti pada Gambar 3.3 berikut. Gambar 3. 3 Notasi UML diagram kelas OBJEK Objek merupakan segala sesuatu yang ada di dunia ini, yaitu manusia, hewan, tumbuhan, rumah, kendaraan, dan lain sebagainya. Contoh-contoh objek yang telah disebutkan di atas merupakan contoh objek nyata pada kehidupan kita. Pada pemrograman berorientasi objek, kita akan belajar bagaimana membawa konsep objek dalam kehidupan nyata menjadi objek dalam dunia pemrograman. Setiap objek dalam dunia nyata pasti memiliki 2 elemen penyusunnya, yaitu keadaan (state) dan perilaku/sifat (behaviour). Sebagai contoh, sepeda memiliki keadaan yaitu warna, merk, jumlah roda, ukuran roda. Sedangkan perilaku/sifat sepeda adalah berjalan, berhenti, berbelok, menambah kecepatan, mengerem. Pada saat objek diterjemahkan ke dalam konsep PBO, maka elemen penyusunannya juga terdiri atas 2 bagian, yaitu: • Atribut, merupakan ciri-ciri yang melekat pada suatu objek (state). • Method, merupakan fungsi-fungsi yang digunakan untuk memanipulasi nilai-nilai pada atribut atau untuk melakukan hal-hal yang dapat dilakukan suatu objek (behaviour). Sintaks membuat objek dari suatu class: namaClass namaObjek = new namaClass(); Contoh: Program 3-2 public class MobilMain { public static void main(String [] args) { Mobil avanza = new Mobil(); avanza.setNoPlat("BE 212 WI"); System.out.println("Mobil dengan plat " + avanza.getNoPlat()); } } Hasil Output Mobil dengan plat BE 212 WI Perhatikan kelas MobilMain di atas, nama objek (instant of class) dari kelas Mobil adalah avanza. Proses ini dapat digambarkan dalam bentuk notasi UML seperti pada Gambar 3.4 berikut.
  • 4. Modul PBO – Teknokrat 24 +setNoPlat(in noPlat : String) : void +getNoPlat() : String -noPlat : String -warna : String -manufaktur : String -kecepatan : int Mobil noPlat : String = "BE 212 WI" warna : String = "Hitam" manufaktur : String = "Toyota" kecepatan : int = 60 avanza : Mobil new Mobil() noPlat : String = "BE 333 MO" warna : String = "Kuning" manufaktur : String = "Honda" kecepatan : int = 120 jazz : Mobil Class diagram Object diagram Gambar 3. 4 Notasi UML untuk kelas dan objek DEKLARASI ATRIBUT Dalam pendeklarasian atribut, kita tuliskan: <modifier> <type> <name> [= <default_value>]; Langkah selanjutnya adalah mengurutkan atribut yang akan diisikan pada class. Untuk setiap informasi, urutkan juga tipe data yang yang tepat untuk digunakan. Contohnya, Anda tidak mungkin menginginkan untuk menggunakan tipe data integer untuk nama siswa, atau tipe data string pada nilai siswa. Berikut ini adalah contoh informasi yang akan diisikan pada class StudentRecord : name - String address - String age - Int math grade - double english grade - double science grade - double average grade - double DEKLARASI METHOD Sebelum kita membahas method apa yang akan dipakai pada class, mari kita perhatikan penulisan method secara umum. Dalam pendeklarasian method, kita tuliskan: <modifier> <returnType> <name>(<parameter>*) { <statement>* } dimana, <modifier> dapat menggunakan beberapa modifier yang berbeda <returnType> dapat berupa seluruh tipe data, termasuk void
  • 5. Modul PBO – Teknokrat 25 <name> identifier atas class <parameter> ::= <tipe_parameter> <nama_parameter>[,] Contoh: Program 3-3 public class Mobil { private String noPlat; private String warna; private String manufaktur; private int kecepatan; public void setNoPlat(String noPlat) { this.noPlat = noPlat; } public String getNoPlat() { return noPlat; } public String getWarna() { return warna; } public void setWarna(String warna) { this.warna = warna; } public String getManufaktur() { return manufaktur; } public void setManufaktur(String manufaktur) { this.manufaktur = manufaktur; } public int getKecepatan() { return kecepatan; } public void setKecepatan(int kecepatan) { this.kecepatan = kecepatan; } public void infoMobil() { System.out.println("Informasi Kendaraan:"); System.out.println("--------------------"); System.out.println("No Plat : "+getNoPlat()); System.out.println("Kecepatan: "+getKecepatan()); } } Program 3-4 public class MobilMain { public static void main(String [] args) { Mobil avanza = new Mobil(); avanza.setNoPlat("BE 212 WI");
  • 6. Modul PBO – Teknokrat 26 avanza.setManufaktur("Toyota"); avanza.setWarna("Putih"); avanza.setKecepatan(220); System.out.println("Mobil dengan plat " + avanza.getNoPlat() + " yang dibuat oleh " + avanza.getManufaktur() + " berwarna " + avanza.getWarna() + " memiliki kecepatan maksimal " + avanza.getKecepatan() + " Km/jam."); } } Hasil Output Mobil dengan plat BE 212 WI yang dibuat oleh Toyota berwarna Putih memiliki kecepatan maksimal 220 Km/jam.
  • 7. Modul PBO – Teknokrat 27 Lembar Kerja Praktikum: Modul 3 NPM: Asisten: Nama: Nilai: Kelas: Tanggal: Soal [Score: 100] Buat sebuah class Pelajar dengan ketentuan sebagai berikut: · Memiliki atribut: npm, nama, nilaiUjian1, nilaiUjian2, dan tugas · Memiliki method: o Accessor dan mutator o nilaiAkhir à untuk menghitung nilai akhir dari pelajar tersebut dengan rumus: ( ) ( ) ( ) % 25 * % 40 * 2 % 35 1 nTugas nUjian nUjian nA + + * = o isLulus à digunakan untuk mengecek apakah seorang siswa lulus atau tidak, dinyatakan lulus bila nilai akhirnya sama dengan 60 ke atas. Berikut ini adalah class pelajarMain yang digunakan untuk memanggil class Pelajar. Program Utama public class pelajarMain { public static void main(String [] args) { Pelajar p = new Pelajar(); p.setNpm("0517032014"); p.setNama("Ardiansyah"); p.setNilaiUjian1(66.5); p.setNilaiUjian2(80); p.setNilaiTugas(85.5); System.out.println("Data Pelajar: "); System.out.println("NPM: "+p.getNpm()); System.out.println("Nama: "+p.getNama()); System.out.println("Ujian 1: "+p.getNilaiUjian1()); System.out.println("Ujian 2: "+p.getNilaiUjian2()); System.out.println("Tugas: "+p.getNilaiTugas()); System.out.println("Nilai Akhir: "+p.nilaiAkhir()); System.out.println("Status: "+p.isLulus()); } }
  • 8. Modul PBO – Teknokrat 28 Hasil Output Data Pelajar: NPM: 0517032014 Nama: Ardiansyah Ujian 1: 66.50 Ujian 2: 80.00 Tugas: 85.50 Nilai Akhir: 76.65 Status: Lulus