Class adalah cetakan, template,
prototype,tempat dari object, sedangkan object adalah isi dari kelas. Satu
kelas dapat mempunyai object lebih dari satu atau banyak. Contoh sederhananya
seperti berikut : satu cetakan bias menghasilkan banyak kue.
Contoh penerapannya di Java :
public class Burung {
String nama; //atribut nama
String jenis; //atribut jenis
String warna; //atribut warna
String sayap; //atribut sayap
//method terbang
public void terbang(){
this.sayap = “mengepak”;
System.out.println(“Burung “+this.nama+”
Sedang Terbang”);
}
//method tidur
public void tidur(){
this.sayap = “diam”;
System.out.println(“Burung “+this.nama+”
Sedang Tidur”);
}
}
Dari contoh diatas bisa diambil pengerian
Attribute adalah Berbagai variable yang mengitari class, dengan nilai datanya
bisa ditentukan di object. nama, warna, sayap, dan jenis adalah atribute dari
class Burung. Method adalah implementasi dari bagaimana aktifitas / bekerjanya
sebuah class. terbang dan tidur adalah method atau behaviour dari class Burung
Ada 3 Konsep Dasar OOP pada Java :
A. Encapsulation
Encapsulation adalah pembungkus, pembungkus
disini dimaksudkan untuk menjaga suatu proses program agar tidak dapat diakses
secara sembarangan atau di intervensi oleh program lain.
Dalam OOP Encapsulation di wujudkan dalam
bentuk “class”. Seperti yang telah dijalaskan sebelumnya dalam sebuah class
terdapat property dan method yang memiliki hak akses tertentu terhadap
environment/lingkungan-nya, hak akses ini biasa di sebut Access Modifier,
access modifier terdiri dari private, protected, dan public.
• Private
Memberikan hak akses hanya kepada anggota
class tersebut untuk menggunakan dan/atau mengubah nilai dari property atau
method tersebut.
• Protected
Memberikan hak akses kepada anggota class
nya dan anggota class hasil inheritance (penurunan sifat) dari class tersebut.
• Public
Memberikan hak akses kepada property dan
method agar dapat digunakan diluar class tersebut.
Contoh Program Encapsulation :
public class Siswa {
public String nama;
public String nrp;
public void Info() {
System.out.println(“Saya adalah”);
System.out.println(“Nama ” + nama);
System.out.println(“Nrp ” + nrp);
}
}
// Setelah itu kita buat New Class lagi
dengan nama IsiData
public class IsiData {
public static void main(String[] args) {
Siswa IT = new Siswa();
IT.nama = “Mirna”;
IT.nrp = “0320110013″;
IT.Info();
}
}
B. Inheritance
Inheritance adalah pewarisan yang artinya
sebuah class dapat mewarisi atribut dan metho dari class lain. untuk
mendeklarasikan suatu class sebagai subclass dilakukan dengan cara menambahkan
kata kunci extends setelah deklarasi nama class, kemudian diikuti dengan nama
parent class-nya. Kata kunci extends tersebut memberitahu kompiler Java bahwa
kita ingin melakukan perluasan class.
Contoh Programnya :
public class Mamalia () {
System.out.println(“Ciri umum mamalia
adalah bernapas dengan paru-paru, ” +
“berkembang biak dengan cara beranak”);
}
class () Paus extends Mamalia () {
String x = “Ikan Paus”;
System.out.println(“Mamalia yang Anda pilih
adalah “+ x );
System.out.println(“Mamalia ini berada di
laut”);
System.out.println(“Paus termasuk jenis
mamalia terbesar”);
}
class Sapi () extends Mamalia (){
String x = “Sapi”;
System.out.println(“Mamalia yang Anda pilih
adalah “+ x );
System.out.println(“Mamalia ini berada di
darat”);
System.out.println(“Sapi termasuk jenis
mamalia pemamah biak”);
}
C. Polymorism
Suatu aksi yang memungkinkan pemrogram
menyampaikan pesan tertentu keluar dari hirarki obyeknya, dimana obyek yang
berbeda memberikan tanggapan/respon terhadap pesan yang sama sesuai dengan
sifat masing-masing obyek.
Polymorism dapat berarti banyak bentuk,
maksudnya yaitu kita dapat menimpa (override), suatu method, yang berasal dari
parent class (super class) dimana object tersebut diturunkan, sehingga memiliki
kelakuan yang berbeda.
Contoh program java nya :
Simpan dengan nama BeautyfullMahasiswa.java
public class BeautyfullMahasiswa extends
Mahasiswa{
public void printNama(){
System.out.println(“Hallo, saya Mahasiswa
yg cantik n baik”)
Super.printNama();
}
}
Simpan dengan nama Main.java
public class Main{
public static void main(String[] args]) {
BeautyfullMahasiswa mhs = new
BeautyfullMahasiswa();
mhs.setNim(“0320110013”);
mhs.setNama(“Mirna Puji Rahayu”);
mhs.printNim();
mhs.printNama();
}
}
Kemudian compile dan run.
Oop java
C:\>javac BeautyfullMahasiswa.java
C:\>javac Main.java
C:\>java Main
Kontruksi objek mahasiswa
Nim : 0320110013
Hallo, saya Mahasiswa yg cantik n baik
Nama : Mirna Puji Rahayu
C:\>
Terlihat bahwa disini kita mengoverride
method printNama(), dengan menambahkan beberapa teks tambahan, sehingga method
printNama(), pada class BeautyfullMahasiswa, memiliki perilaku yang berbeda
dengan class Mahasiswa.
Assalamualaikum,,, newbee mau nambah postingan lagi, buat para
suhu suhu dimohon koreksinya kalo ada yang salah... oke chekidot..
Menurut hasil belajar ane, Jenis jenis Class dalam OOP (JAVA)
dapat di kelompokkan kedalam tiga jenis atau macam
- boundary = class yg membatasi hak asess ,
membatasi software dengan pengguna ( User Interface )
- entity = mencirikan class yang kita pakai,
class ini yang berisi tentang entity entity apa saja yang digunakan dalam
sebuah class contoh class mahasiswa memiliki entty (NPM,NAMA,ALAMAT dll)
- manager = class yg memberi hak ases langsung
ke entitas/ database, class ini lah yang mengatur lalulintas data
yuk langsung aja ke programnya biar jelas perbedaannya... inti
dari oop itu melihat sebuah kasus dalam object object yang ada, sehingga akan
lebih mudah dalam pembuatan sebuah software berbasiskan OOP
yang saya beri warna kuning pada bagian rumus berarti yang harus diketikkan
1. Buka netbean nya.... buat sebuah
project baru beri nama Programmahasiswa.
2. Buat sebuah jFrameform baru beri nama
Inputdatamahasiswa. buat tampilannya seperti dibawah ini.
// pada langkah ini kita membuat jenis class yang pertama ==> boundary
3. Buat sebuah java class baru berinama mahasiswa
// pada langkah ini kita membuat jenis class yang kedua ==> entity
ketikkan rumus dibawah ini . yang diketik yang berwarna kuning
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package programmahasiswa;
/**
*
* @author Lefiatan
*/
public class mahasiswa {
String npm,nama,alamat,telp; // entity entity yang timbul dalam object mahasiswa
public String getAlamat() {
return alamat;
}
public void setAlamat(String alamat) {
this.alamat = alamat;
}
public String getNama() {
return nama;
}
public void setNama(String nama) {
this.nama = nama;
}
public String getNpm() {
return npm;
}
public void setNpm(String npm) {
this.npm = npm;
}
public String getTelp() {
return telp;
}
public void setTelp(String telp) {
this.telp = telp;
}
}
4. Buat sebuah java class baru berinama managermahasiswa
// pada langkah ini kita membuat jenis class yang ketiga ==> manager
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package programmahasiswa;
import java.sql.*;
/**
*
* @author Lefiatan
*/
public class managermahasiswa {
Connection con = null;
Statement st = null;
public managermahasiswa(){
try
{
Class.forName("com.mysql.jdbc.Driver");
Connection con=DriverManager.getConnection("jdbc:mysql://localhost/dbmahasiswa?user=root&password=");
st=con.createStatement();
}catch(Exception ex){
ex.printStackTrace();
System.out.println("Gagal Driver");
}}
public int insert(mahasiswa om){
int result = 0;
String sql="INSERT INTO mahasiswa VALUES ('"+om.getNpm()+"','"+om.getNama()+"','"+om.getAlamat()+"','"+om.getTelp()+"')";
try{
result = st.executeUpdate(sql);
}catch(Exception ex){
System.out.println("Gagal di simpan bo..");
ex.printStackTrace();
}
return result;
}
public int update(mahasiswa om){
int result = 0;
String sql="UPDATE mahasiswa SET nama='"+om.getNama()+"',alamat='"+om.getAlamat()+"',telp='"+om.getTelp()+"' where npm='"+om.getNpm()+"'";
try{
result = st.executeUpdate(sql);
}catch(Exception ex){
System.out.println("Gagal di edit bo..");
ex.printStackTrace();
}
return result;
}
public int delete(mahasiswa om){
int result = 0;
String sql="DELETE from mahasiswa where npm='"+om.getNpm()+"'";
try{
result = st.executeUpdate(sql);
}catch(Exception ex){
System.out.println("Gagal di hapus bo..");
ex.printStackTrace();
}
return result;
}
}
5. Selanjutnya membuat rumus pada JFrameForm Inputdatamahasiswa..
private void jButtoneditActionPerformed(java.awt.event.ActionEvent evt) { //rumus edit
// TODO add your handling code here:
mahasiswa m = new mahasiswa();
m.setNpm(jtNpm.getText());
m.setNama(jtNama.getText());
m.setTelp(jtTelp.getText());
m.setAlamat(jpAlamat.getText());
mg.update(m);
jButtonclear.doClick();
}
private void jButtonSimpanActionPerformed(java.awt.event.ActionEvent evt) { //rumus simpan
// TODO add your handling code here:
mahasiswa m = new mahasiswa();
m.setNpm(jtNpm.getText());
m.setNama(jtNama.getText());
m.setTelp(jtTelp.getText());
m.setAlamat(jpAlamat.getText());
mg.insert(m);
jButtonclear.doClick();
}
private void jButtonhapusActionPerformed(java.awt.event.ActionEvent evt) { //rumus hapus
// TODO add your handling code here:
mahasiswa m = new mahasiswa();
m.setNpm(jtNpm.getText());
mg.delete(m);
jButtonclear.doClick();
}
private void jButtonclearActionPerformed(java.awt.event.ActionEvent evt) { //rumus batal
// TODO add your handling code here:
jtNpm.setText("");
jtNama.setText("");
jtTelp.setText("");
jpAlamat.setText("");
jtNpm.requestFocus();
}
tambahkan rumus untuk mengenalkan class manager, letaknya di atas // Variables declaration - do not modify
managermahasiswa mg = new managermahasiswa();
// Variables declaration - do not modify
6. jangan lupa membuat database dengan nama dbmahasiwa dan tabelnya dengan nama mahasiswa untuk struktur table dapat dilihat di bawah ini
ok selamat mencoba,,, jika ada kesalahan mohon diberi masukannya
, maklum ane juga masih newbee belajar oop... jadi pemahaman akan konsep OOP
itu sendiri masih terbatas.
"MAJU TERUS PROGRAMER INDONESIA, JADIKAN
INDONESIA KAYA AKAN DEVELOPER HANDAL DAN KAYA DENGAN MENJADI DEVELOPER"
Contoh script
// Nama file :
Polimorphism.java
// Contoh penerapan
konsep polimorphism
public class Polimorphism {
public static void main(String[ ] args) {
cetakObyek(new Balok());
cetakObyek(new PersegiPanjang());
cetakObyek(new BangunDatar());
cetakObyek(new Object());
}
public static void cetakObyek(Object obyek) {
System.out.println(obyek);
}
} // Akhir kelas
Polimorphism
class Balok extends PersegiPanjang {
public String toString() {
return "Mempunyai sisi panjang, lebar dan tinggi";
}
}
class PersegiPanjang extends BangunDatar {
public String toString() {
return "Mempunyai sisi panjang dan lebar";
}
}
class BangunDatar extends Object {
public String toString() {
return "Mempunyai berbagai bentuk";
}
}










Mantep boskuh..
BalasHapusokay siyap boskuh masih belajar juga inih.. :)
Hapus