Ringkasan Materi Pemrograman Berorientasi Objek
Ringkasan Materi Pemrograman Berorientasi Objek
DISUSUN OLEH:
RETNO YOHAENDRIA ADITYANINGSIH
G41150033
GOLONGAN A
SEMESTER III
A. Dasar Teori
Class adalah cetak biru (rancangan) atau prototype atau template dari
objek. Kita bisa membuat banyak objek dari satu macam class. Class
mendefinisikan sebuah tipe dari objek. Di dalam class kita dapat
mendeklarasikan variabel dan menciptakan objek (instansiasi).
Sebuah class mempunyai anggota yang terdiri dari atribut dan
method.
Object adalah instance dari class. Jika class secara umum
merepresentasikan (template) sebuah object, sebuah instance adalah
representasi nyata dari class itu sendiri.
Sebuah method adalah bagian-bagian kode yang dapat dipanggil
oleh kelas, badan program atau method lainnya untuk menjalankan
fungsi yang spesifik di dalam kelas. Secara umum method dalam
java adalah sebuah fungsi.
B. Soal
Buatlah Program Class,Objek dan method!
C. Jawab
Membuat Class
Dengan Hasil
Membuat Objek
Untuk membuat object, kita menggunakan perintah new dengan sebuah
nama class yang akan dibuat sebagai instance dari class tersebut.
Membuat Method
Praktikum :2
Judul Praktikum : Constructor
A. Teori
Konstruktor adalah method yang secara otomatis dipanggil
/dijalankan pada saat sebuah class diinstansi atau dengan kata lain
konstruktor adalah method yang pertama kali dijalankan pada saat
sebuah objek pertama kali diciptakan.
Jika dalam sebuah class tidak terdapat konstruktor maka secara
otomatis Java akan membuatkan sebuah default Konstruktor.
Nama constructor harus sama dengan nama class dan tidak boleh
memiliki tipe return value. Sama halnya dengan method, konstruktor
dapat memiliki satu atau banyak parameter maupun tanpa parameter.
B. Soal
Bagaimana contoh program dengan menggunakan constructor ?
C. Jawaban
Langkah - langkah praktikum :
1. Contoh program yang tidak bisa di run karena tidak ada method.
Output :
Output :
Praktikum :3
Judul Praktikum : Inheritance
A. Dasar Teori
► Inheritance merupakan pewarisan dari sebuah kelas, dimana suatu
entitas/objek dapat mempunyai entitas atau objek turunan. Dengan
konsep inheritance,sebuah class dapat mempunyai class turunan.
Inheritance dapat ditandai dengan adanya ciri extend. Inheritance
juga dapat diartikan sebagai salah satu fitur yang dimiliki oleh Java
dimana kita bisa mendefinisikan sebuah class baru berdasar pada
class yang telah ada.
► Seperti halnya manusia pada umumnya mempunyai orang tua dan
anak pada PBO juga dikenal parent class atau base class dan
subclass atau child class. Dimana subclass atau child class
mewarisi semua data yang ada di parent class atau base class atau
dapat disimpulkan jika subclass atau child class adalah perluasan
dari parent class atau base class.
► Class baru ini akan mirip dengan class yang telah ada namun
memiliki karakteristik baru
► Class yang digunhakan sebagai dasar disebut parent
class/superclass/base class.
► Class baru yang berdasar pada superclass disebut child
class/subclass/derived class.
► Dalam java subclass hanya bisa memiliki satu superclass (single
interheritance) sedangkan superclass bisa memiliki satu subclass
atau lebih.
► Untuk menyatakan bahwa sebuah subclass berdasar pada suatu
superclass digunakan statement extends.
► Keuntungan Inheritance : Subclass menyediakan state/behavior
yang spesifik yang membedakannya dengan superclass, hal ini
akan memungkinkan programmer Java untuk menggunakan ulang
source code dari superclass yang telah ada, programmer java dapat
mendefinisikan superclass khusus yang bersifat generik, yang
disebut abstract class, untuk mendefinisikan class dengan behavior
dan state secara umum.
► Istilah Inheritance :
Extends : ini adalah keyword agar sebuah class menjadi
subclass.
Superclass : meunjukkan class yang bererti parent class dari
subclass/class
anak.
Super keyword : untuk memanggil konstruktor dari
superclass atau menjadi variable yang mengacu pada
superclass.
Methode overriding : pendefinisian ulang method yang sama
pada subclass.
B. Soal
Buatlah program terkait inheritance!
C. Jawaban
1. Langkah pertama, membuat project pada NetBeans. Kemudian
membuat dua package dengan nama Inheritance1 dan Inheritance2.
Pada package Inheritance1 buatlah 2 class, dimana pada class
pertama dengan nama Base sebagai parents dan class yang kedua
dengan nama Class1 sebagai turunan dari class sebelumnya yaitu
class Base.
2. Berikut programnya :
package Inheritance1;
public class Base {
protected void amethod (){
System.out.println("amethod");
}
package Inheritance1;
public class Class1 extends Base {
public static void main(String args[]){
Base b = new Base();
b.amethod();
}
}
Output
Keterangan
4. Pada package Inheritance1: Class Class1 adalah turunan dari class Base
5. Pada package Inheritance2: Class Base1_1 adalah turunan dari class
Base1.
Praktikum : 4-5
Judul Praktikum : AWT
A. Dasar Teori
AWT atau Abstract Window Toolkit adalah salah satu
platformindependent Java untuk windowing, graphics, dan user-
interface widget toolkit. Saat ini, AWT sudah termasuk ke dalam
bagian dari Java Foundation Classes (JFC), yaitu standar API
untuk pemrograman Java berbasis GUI. AWT merupakan GUI
toolkit untuk beberapa profil Java ME, seperti konfigurasi alat
yang terhubung meliputi Java runtimes pada mobile telephone
untuk mendukung AWT.
Ketika Java pertama kali dirilis oleh Sun Microsystems pada tahun
1995, komponen AWT memberikan tingkat abstraksi yang tipis
yang mendasari interface pengguna. Contohnya, menciptakan
checkbox AWT akan menyebabkan pemanggilan langsung
subroutine yang mendasari pembuatan checkbox. Program GUI
yang ditulis denganmenggunakan AWT tampak seperti aplikasi
asli ketika dijalankan pada sistem operasi yang menjalankan
aplikasi tersebut.
Dalam J2SE 1.2, komponen AWT sebagian besar digantikan dari
toolkit Swing. Selain menyediakan satu set komponen UI, Swing
menarik komponen sendiri(dengan menggunakan Java 2D untuk
memanggil ke subroutine tingkat rendah dalam subsistem grafis
lokal) bukan mengandalkan modul pengguna tingkat tinggi
interface sistem operasi. Swing menyediakan pilihan baik
menggunakan sistem “tampilan dan nuansa” menggunakan
platform asli tampilan dan nuansa atau platformsilang yang terlihat
pada semua platform. Namun, Swing bergantung pada AWT untuk
tampilan interface untuk sistem windowing asli.
AWT menyediakan dua tingkat API, yaitu:
1. Interface umum antara Java dengan sistem asli, digunakan
untuk windowing, manajer layout. API ini merupakan inti
dari pemrograman Java GUI dan juga digunakan oleh
Swing dan Java 2D yang berisi:
a. Interface antara sistem windowing asli dan aplikasi
Java.
b. Inti dari event subsistem GUI.
c. Beberapa manajer layout.
d. Interface untuk perangkat input seperti mouse dan
keyboard.
e. Paket java.awt.datatransfer untuk digunakan dengan
clipboard dan Drag and Drop.
2. Satu set dasar komponen GUI seperti button, textbox, dan
menu yang juga menyediakan interface dasar AWT, yang
memungkinkan librari renderdikompilasi ke kode asli
untuk langsung menarik ke AWT canvas permukaan objek
gambar. AWT juga membuat beberapa fungsionalitas
tinggti yang tersedia untuk aplikasi,
seperti:
1. Akses ke sistem tray pada sistem pendukung.
2. Kemampuan untuk meluncurkan beberapa aplikasi
dekstop seperti browser web dan klien email dari
aplikasi.
Baik AWT ataupun Swing secara inheren aman, karena kode yang
meng-update GUI harus dijalankan pada thread event pengirim.
Kegagalan untuk melakukan hal ini dapat menyebabkan kondisi
kebuntuan atau ras. Untuk mengatasi masalah ini, kelas utilitas
bernama SwingWorker memungkinkan aplikasi untuk melakukan
tugas-tugas yang memakan waktu mengikuti acara-interaksi
pengguna di thread acara pengirim.
B. Soal
Buatlah program terkait AWT!
C. Jawaban
1. Perbesar box
Output
Tes password
Output
Tes pilihan
Output
Praktikum :6
Judul Praktikum : SWING
A. Dasar Teori
Swing adalah sebuah widget toolkit untuk Java yang merupakan
bagian dari Java Foundation Classes (JFC) dari Sun Microsystem.
Swing adaah sebuah API (Application Programming Interface)
yang menyediakan Graphical User Interface (GUI) untuk program
Java dan applet. Swing dikembangkan untuk menyediakan
komponen GUI yang lebih canggih dari komponen sebelumnya
yang bernama AWT dan bertujuan untuk mempermudah
pengembangan aplikasi JAVA GUI.Package dari Swing
menyediakan banyak kelas untuk membuat aplikasi GUI. Package
tersebut dapat ditemukan di javax.swing. Komponen Swing ditulis
menyeluruh menggunakan Java.
Komponen-komponen Swing dapat diklasifikasikan ke dalam tiga
bagian, yaitu top level container, intermediate container, dan
komponen atomic (tunggal).
a. Container tingkat atas (top-level) berfungsi untuk
menyediakan ruang bagi komponen-komponen lainnya.
Container jenis ini terdiri dari JFrame, JWindow,
JDialog, dan JApplet.
b. Container menengah adalah komponen (non top-level)
yang keberadaannya untuk menampung komponen
lainnya, misalnya panel, tabbed, dan tool bar.
c. Komponen atomic berfungsi untuk menampilkan dana
tau menerima informasi. Contoh komponen atomic
adalah text, button, dan label.
B. Soal
Buatlah program menggunakan java swing dan digabungkan dengan
JFrame form
C. Jawaban
1. Buat new class pada package seperti yang sudah di jelaskan
sebelumnya. Lalu buat project seperti berikut :
A. Teori
Koneksi ke database pada Java ditangani oleh JDBC (Java Database Connectivity)
JDBC. JDBC merupakan salah satu API (Application Progamming Interface) Java
yang secara khusus ditujukan untuk menangani koneksi ke database. Antarmuka
ini memungkinkan pemrograman menulis sebuah program yang dapat
digunakan untuk mengakses database yang berbeda-beda, misalnya: Oracle,
Access, atau MySQL.
B. Soal
Buatlah koneksi database ke program java
C. Jawaban
4. Setelah itu beri nama pada File Name dengan nama Login Pilih tempat
penyimpanan pada Folder Login yang telah dibuat sebelumnya Klik
Create
5. Kemudian akan muncul tampilan Access seperti dibawah ini
6. Klik kanan pada Tabel1 Pilih Design View Beri nama login OK
7. Setelah muncul tampilan seperti dibawah ini pada Field Name isi dengan
ID_petugas dan Password pada Data Type pilih Text sebagai tipe datanya
8. Klik kanan pada Table login Klik Open akan muncul Tampilan
seperti berikut Klik Yes
12. Cari penyimpanan database yang tadi dibuat klik OK. Setelah itu tutup
semua jendela ODBC.
13. Setelah selesai mengkoneksikan database netbeans buka aplikasi netbeans
pilih new project.
15. Project name diberi nama login dan project location klik browse pilih
finish.
16. Klik kanan pada package pilih new java class.
import java.sql.*;
import javax.swing.*;
try
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
catch(Exception e)
finally
new tampilan_login().show();
19. Selanjutnya klik kanan pada package tadi pilih new JFrame Form.
20. Buat desain login seperti gambar dibawah ini menggunakan label, text
field, dan button.
21. Klik source yang berada diatas sebelahnya design untuk mengisi source
codenya.
Dibawah ini adalah souce code tampilan_login :
import javax.swing.JOptionPane;
public tampilan_login() {
initComponents();
@SuppressWarnings("unchecked")
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
jLabel2.setText("User Name");
jLabel3.setText("Password");
text2.setToolTipText("");
jButton2.setText("Login");
jButton2.addActionListener(new java.awt.event.ActionListener() {
jButton2ActionPerformed(evt);
}
});
jPanel1.setLayout(jPanel1Layout);
jPanel1Layout.setHorizontalGroup(
jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADI
NG)
.addGroup(jPanel1Layout.createSequentialGroup()
.addComponent(jButton2)
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE,
Short.MAX_VALUE))
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
jPanel1Layout.createSequentialGroup()
.addContainerGap()
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignm
ent.LEADING)
.addComponent(jLabel2)
.addComponent(jLabel3))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignm
ent.LEADING)
.addComponent(jLabel1)
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignm
ent.LEADING, false)
.addComponent(text1)
.addComponent(text2,
javax.swing.GroupLayout.DEFAULT_SIZE, 145, Short.MAX_VALUE)))
);
jPanel1Layout.setVerticalGroup(
jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADI
NG)
.addGroup(jPanel1Layout.createSequentialGroup()
.addContainerGap()
.addComponent(jLabel1)
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignm
ent.BASELINE)
.addComponent(jLabel2)
.addComponent(text1,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE))
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignm
ent.BASELINE)
.addComponent(jLabel3)
.addComponent(text2,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE))
.addComponent(jButton2)
.addContainerGap(111, Short.MAX_VALUE))
);
getContentPane().setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jPanel1,
javax.swing.GroupLayout.Alignment.TRAILING,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jPanel1,
javax.swing.GroupLayout.Alignment.TRAILING,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
);
pack();
}// </editor-fold>
private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {
if(text1.getText().equals("admin")){
if(text2.getText().equals("admin")){
new Tampilan_masuk_login().show();
}else{
text2.setText("");
text2.requestFocus();
}else{
text1.setText("");
text2.setText("");
text1.requestFocus();
/**
*/
try {
for (javax.swing.UIManager.LookAndFeelInfo info :
javax.swing.UIManager.getInstalledLookAndFeels()) {
if ("Nimbus".equals(info.getName())) {
javax.swing.UIManager.setLookAndFeel(info.getClassName());
break;
java.util.logging.Logger.getLogger(tampilan_login.class.getName()).log(java.util.
logging.Level.SEVERE, null, ex);
java.util.logging.Logger.getLogger(tampilan_login.class.getName()).log(java.util.
logging.Level.SEVERE, null, ex);
java.util.logging.Logger.getLogger(tampilan_login.class.getName()).log(java.util.
logging.Level.SEVERE, null, ex);
java.util.logging.Logger.getLogger(tampilan_login.class.getName()).log(java.util.
logging.Level.SEVERE, null, ex);
//</editor-fold>
java.awt.EventQueue.invokeLater(new Runnable() {
});
22. Untuk mengetahui program yang tadi dibuat eror atau berhasil klik kanan
pilih run file .
Tampilan berhasilnya :
Praktikum :8
Judul Praktikum : Pengenalan Constructor
Waktu Praktikum : Senin, 2016
A. Teori
B. Soal
Bagaimana contoh program dengan menggunakan constructor ?
C. Jawaban
Langkah-langkah praktikum :
3. Contoh program yang tidak bisa di run karena tidak ada method.
Output :
4. Contoh program yang bias di run lengkap dengan constructor dan
method
Output :