MUDOL
PANDUAN PRAKTIKUM
PEMROGRAMAN BERORIENTASI OBJEK (JAVA)
DISUSUN OLEH:
PENDAHULUAN
import java.nama_library;
class nama_program {
public static void main(String[] args)
{
// defenisi variabel
……………
// instruksi-instruksi
……………
}
}
Atau
import java.nama_library;
class nama_program {
public static void main(String args [])
{
// defenisi variabel
……………
// instruksi-instruksi
……………
}
}
– Ketik programnya
– Kemudian Save As: nama_program.java
– Keluar dari Editor
– Kompilasi: >javac nama_program.java
– Jika ada error perbaiki code programnya, Bila tak ada error, run-
program: >java nama_program
Contoh :
import java.applet.*;
import java.nama_class.* ;
public class nama_applet extends Applet
{
// defenisi variabel
….
// instruksi-instruksi
….
public void paint (Graphics g)
{
…………………………
}
}
PRAKTIKUM 1
DASAR DASAR PEMROGRAMAN JAVA
Sub Pokok Bahasan :
➢ Variabel dan array, keyword, Tipe Data, literal, Type-casting, Error
trapping & handling, Perintah input/output
Teori Dasar :
KeyWord merupakan perbendaharaan kata dari bahasa pemrograman java,
dimana keyword ini tidak bisa digunakan sebagai nama variable. Berikut daftar
keyword dalam java:
Literal adalah nilai yang diberikan kepada suatu variable atau nilai konstan
yang terlihat secara explicit.
(1) Bilangan biasa / desimal : 5, -35, 1230, -34567 Literal Untuk
(2) Bilangan Octal : 0777, 0004, 0345 Bilangan bulat
Promosi Type Data pada Java java secara otomatis akan melakukan
promosi type data dalam proses matematika dengan pedoman sebagai berikut:
1. byte dan short akan dipromosikan ke int
2. jika salah satu operand bertype long, maka akan dipromosikan ke long
3. jika salah satu operand bertype float, maka akan dipromoasikan ke float
4. jika salah satu operand bertipe double, maka akan dipromosikan ke double
Kegiatan 1
1. Jalankan Text Editor (NotePad) atau JCreator
2. Ketikan Listing berikut kemudian Save dengan nama : Kegiatan1.java
import java.io.*;
public class Kegiatan1 {
public static void main (String[] args) {
// definisi variabel
byte b=25;
char c='A';
short s=1024;
int i=4000;
float f = 4.57f;
double d= 3.56;
int x=5;
double y=x/2; //hasilnya 2, bukan 2.5
double z=(double) x/2; //hasilnya baru 2.5
//Tampilkan hasil
System.out.println("Nilai untuk byte = "+b);
System.out.println("Nilai untuk char = "+c);
System.out.println("Nilai untuk short = "+s);
System.out.println("Nilai untuk int = "+i);
System.out.println("Nilai untuk float = "+f);
System.out.println("Nilai untuk double = "+d);
System.out.println("Nilai double dibagi 2 = "+y);
System.out.println("Nilai double ="+z);
}
}
3. Compile file diatas → javac Kegiatan1.java <enter>
4. Jika tidak ada error run-program → java Kegiatan1 <enter>
5. Perhatikan Hasilnya..
Kegiatan 2
try {
while ((c = (char) System.in.read() ) != '\n' )
s.append(c);
}
catch (Exception e){
System.out.println("Error : " + e.toString());
}
System.out.println(s);
}
}
Kegiatan 3
class bacaData {
public static void main (String args[]) {
byte buf[] = new byte[10];
try {
System.in.read(buf);
}
catch (Exception e) {
System.out.println("Error : " + e.toString());
}
String s = new String(buf,0,5);
System.out.println(s);
}
}
Kegiatan 4
1. Jalankan Text Editor (NotePad) atau JCreator
2. Ketikan Listing berikut kemudian Save dengan nama : TestAritmetika.java
import java.io.*;
class in_out {
public static void main(String args[])
{
DataInputStream in = new DataInputStream(System.in);
char c;
int angka=0;
char huruf=' ';
String kalimat=" ";
}
catch(IOException e) { System.out.println(e); }
TUGAS 1
1. Input nama, alamat, dan no.hp anda, kemudian tampilkan dengan output
seperti berikut:
Nama saya adalah , bertempat tinggal di
jalan , dengan nomor hp
.
PRAKTIKUM 2
OPERATOR
Pokok Bahasan:
• Mengenal macam-macam operator dan kegunaannya
Tujuan Instuksional Khusus:
• Setelah mengikuti praktikum ini Mahasiswa dapat menggunakan
berbagai macam operator untuk mengolah data
Kegiatan 1
Ketik listing program berikut:
class OperasiMatematik{
public static void main(String args[]){
int a;
a = 5;
System.out.println("Nilai a = " + a);
System.out.println("a++ = " + a++);
System.out.println("++a = " + ++a);
System.out.println("a-- = " + a--);
System.out.println("--a = " + --a);
System.out.println(8 * 2 + 4 / 10 - 5 + -3);
a = 9;
System.out.println("Nilai a = " + a);
System.out.println("a / 2 = " + a / 2);
System.out.println("a % 2 = " + a % 2);
System.out.println("a - a / 2 * 2 = " + (a-a/2*2));
int b = 3;
System.out.println(b-3-++b-2+--b+6-++b+b---2);
System.out.println(b);
b = b-3-++b-2+--b+6-++b+b---2;
System.out.println(b);
}
}
Kegiatan 2
Ketik listing program berikut:
import java.io.*;
class OperasiRelasi{
public static void main(String args[]){
DataInputStream baca = new DataInputStream(System.in);
String tmp = "";
int nilaiA = 0, nilaiB = 0;
try{
System.out.print("Input nilai A : ");
tmp = baca.readLine();
nilaiA = Integer.parseInt(tmp);
System.out.print("Input nilai B : ");
tmp = baca.readLine();
nilaiB = Integer.parseInt(tmp);
}catch(Exception e){
System.out.println("Input gagal!!!");
}
Kegiatan 3
Ketik listing program berikut:
import java.io.*;
class OperasiLogika{
public static void main(String args[]){
DataInputStream baca = new DataInputStream(System.in);
String tmp = "";
boolean nilaiA = false, nilaiB = false;
try{
System.out.print("Input nilai boolean A : ");
tmp = baca.readLine();
nilaiA = Boolean.valueOf(tmp).booleanValue();
System.out.print("Input nilai boolean B : ");
tmp = baca.readLine();
nilaiB = Boolean.valueOf(tmp).booleanValue();
}catch(Exception e){
System.out.println("Input gagal!!!");
}
Kegiatan 4
Ketik listing program berikut:
import java.io.*;
class OperasiBitWise{
public static void main(String args[]){
DataInputStream baca = new DataInputStream(System.in);
String tmp = "";
int nilaiA = 0, nilaiB = 0;
try{
System.out.print("Input nilai A : ");
tmp = baca.readLine();
nilaiA = Integer.parseInt(tmp);
System.out.print("Input nilai B : ");
tmp = baca.readLine();
nilaiB = Integer.parseInt(tmp);
}catch(Exception e){
System.out.println("Input gagal!!!");
}
Tugas 2
1. Tulislah sebuah program yang meminta input berupa jumlah butir telur
yang Anda miliki, kemudian tampilkan dalam satuan grosir (12 lusin),
lusin (12 butir), serta sisanya. Misalnya, jumlah telur ada 1342 butir,
maka program akan memberikan output
“Jumlah telur Anda ada 9 grosir, 3 lusin, dan 10 butir.”
PRAKTIKUM 3
PEMROGRAMAN BERORIENTASI OBJEK
Pokok Bahasan :
• Deklarasi (class, attribute dan metode)
• Pengaksesan anggota objek
• Penggunaan konstruktor
Dasar Teori :
1. Deklarasi class dapat dilakukan dengan sintaks sebagai berikut :
<modifier> class <nama_class>{
[deklarasi_attribute]
[deklarasi_konstruktor]
[deklarasi_metode]
}
Contoh
Public class siswa{
…………………
……………..
}
System.out.println(“Hallo Semua”);
}
}
Contoh :
Public class siswa{
Public int stb;
Public String nama;
//konstruktor siswa
Public siswa (int n, String m){
stb=n
nama=m;
}
}
6. Suatu class dapat memiliki lebih dari 1 konstruktor dengan syarat daftar
parameternya tidak boleh ada yang sama.
Contoh:
Public class siswa{
Public int stb;
Public String nama;
//konstruktor siswa
Public siswa (String m){
stb=0
nama=””;
}
Kegiatan 1
Ketik listing dan run Program berikut:
class mhs {
private String nama;
private String nim; Variabel/state
private String ttl;
private String agama;
public mhs(String nama, String nim, String m, String agama)
{
this.nama = nama;
this.nim = nim; konstruktor
this.ttl = ttl;
this.agama = agama;
}
public String getNama() {
return this.nama;
}
public String getNim() {
Methode
return this.nim;
} }
public String getTtl() {
return this.agama;
}
public static void main(String args[]) {
mhs m = new mhs("Komang", "P2700209001", "17","hindu") ; Objek
System.out.println("Nama =" + m.getTtl()); m
}
}
Kegiatan 2 :
Ketik listing dan run Program berikut:
class Buku {
String pengarang;
String judul;
void Isi(String isi1,String isi2) {
judul = isi1;
pengarang = isi2;
}
void CetakKeLayar() {
if(judul==null && pengarang==null) return;
System.out.println("Judul : " + judul +
Kegiatan 3
Ketik listing dan run Program berikut:
class Lingkaran {
double jari;
//konstruktor
Lingkaran()
{
setJari(1);
}
void setJari(double r){
if (r>0) jari=r;
}
public double getJari(){
return (jari);
}
public double hitungLuas(){
return (Math.PI*jari*2.0);
}
}
//akhir prog.lingkaran java
class demoLingkaran{
public static void main (String[] args) {
Lingkaran abc= new Lingkaran();
Lingkaran pqr=new Lingkaran();
Lingkaran xyz = new Lingkaran();
System.out.println("data default");
System.out.println (" ----------------- ");
System.out.println ("jari-jari ABC:"+abc.getJari());
System.out.println ("jari-jari PQR:"+pqr.getJari());
System.out.println ("jari-jari XYZ:"+xyz.getJari());
System.out.println ();
abc.setJari(5);
pqr.setJari(3.3);
xyz.setJari(1.8);
System.out.println ("Data Current");
System.out.println (" -------------- ");
System.out.println ("jari-jari ABC:"+abc.getJari());
System.out.println ("jari-jari PQR:"+pqr.getJari());
System.out.println ("jari-jari XYZ:"+xyz.getJari());
}
}
Tugas 3
1. buat program berikut dengan metode class :
Input :
Saldo Awal = Rp. …………
Jumlah uang yang diambil = Rp. …………….
Output :
Saldo anda sekarang = Rp………………
PRAKTIKUM 4
PEMROGRAMAN BERORIENTASI OBJEK LANJUTAN
Pokok bahasan :
• Enkapsulasi, Package, dan inheritance
Dasar teori :
kita juga dapat menyembunyikan informasi dari suatu class sehingga anggota-
anggota class tersebut tidak dapat diakses dari luar. Adapun caranya adalah
cukup dengan memberikan akses control private ketika mendeklarasikan suatu
atribut atau method.
Contoh : private int stb;
Contoh :
Kegiatan 1
import javax.swing.*;
class hitung {
public double x,y,r;
public hitung (double x, double y, double r){
this.x=x;
this.y=y;
this.r=r;
}
public double keliling(){
return 2*3.14*r;}
public double luas(){
return 3.14*r*r;
}
}
class Lingkaran{
public static void main (String[] args) {
hitung c=new hitung(0,0,0);
String Stra=JOptionPane.showInputDialog("Nilai X= ");
int d =Integer.parseInt(Stra);
c.x=d;
String Strb=JOptionPane.showInputDialog("Nilai Y= ");
int e =Integer.parseInt(Strb);
c.y=e;
String Strc=JOptionPane.showInputDialog("Nilai R= ");
int f =Integer.parseInt(Strc);
c.x=f;
double area=c.luas();
double kel=c.keliling();
System.out.println ("luas =" +area);
System.out.println ("Keliling ="+kel);
}
}
Kegiatan 2
Ketuk listing berikut kemudian running program berikut:
class satu {
int x,y;
void tampilXY(){
System.out.println ("nilai x:"+x+",y:"+y);
}
}
//class dua mewarisi class satu
Revisi 2 by. Komang Aryasa 23
Panduan Praktikum
Pemrograman Berorientasi Objek (java)
}
}
Kegiatan 3
Ketuk listing berikut kemudian running program berikut:
package A;
import java.io.*;
import java.util.*;
public class PenghitunganUmur{
static final int tahunSekarang = ambilTahun();
int tahunLahir;
public int umur;
public PenghitunganUmur(){
}
int tahunLahir = 0;
PenghitunganUmur saya;
try{
System.out.print("Input tahun kelahiran Anda : ");
tahunLahir = Integer.parseInt(baca.readLine());
}catch(IOException e){}
Kegiatan 4
Ketuk listing berikut kemudian running program berikut:
package A;
import java.io.*;
public class GolonganUmur{
static String cekGolongan(int umur){
String gol = "";
if(umur < 20)
gol = "Anak-anak";
else
if(umur < 40)
gol = "Dewasa";
else
gol = "Manula";
return gol;
}
public GolonganUmur(){
}
try{
System.out.print("Input tahun kelahiran Anda : ");
tahunLahir = Integer.parseInt(baca.readLine());
}catch(IOException e){
System.out.println("Input gagal!!!");
}
}
Kegiatan 5
Ketikan kode berikut :
import java.io.*;
import A.*;
class TurunanGolUmur extends GolonganUmur{
static String cekGolongan(int umur){
String gol = "";
if(umur < 17)
gol = "Anak-anak";
else
if(umur < 25)
gol = "Remaja";
else
if(umur < 40)
gol = "Dewasa";
else
gol = "Manula";
return gol;
}
try{
System.out.print("Input tahun kelahiran Anda : ");
tahunLahir = Integer.parseInt(baca.readLine());
}catch(IOException e){
System.out.println("Input gagal!!!");
}
PenghitunganUmur Umurku = new PenghitunganUmur(tahunLahir);
System.out.println(cekGolongan(Umurku.umur));
}
}
Tugas IV:
PRAKTIKUM 5
JAVA APPLET / GUI
Pokok Bahasan :
• Perintah-perintah graphics, warna dan font.
Tujuan Instruksional khusus:
Setelah mengikuti praktikum ini mahasiswa diharapkan mampu :
• Menggunakan class graphics untuk menggambar bentuk
• Menggunakan class font dan warna.
Dasar Teori :
Gambar yang dibentuk dari perintah – perintas grapis ditampilkan pada monitor
dengn system titik koordinat pixel, dimana titik (0,0) adalah titik kiri atas dari
tampilan layar monitor anda. Titik maksimum adalah titik kanan bawah yang
bergantung pada ukuran fixel monitor, misalnya (1024 x 760), dimana sumbu
datar –x dimulai dari kiri ke kanan, dan sumbu tegak-y mulai dari atas kebawah.
Kegiatan 1:
Kegiatan 2
Kegiatan 3
1. Ketikan text pada jCreator berikut:
import java.applet.*;
import java.awt.*;
public class HelloWorld2 extends Applet {
Font f;
String teks = "HALO DIPA";
}
}
Kegiatan 5
1. Ketikan text pada jCreator berikut:
import java.awt.*;
import java.applet.*;
public class Lengkung extends Applet{
int sudut = 0, bentang;
Button tombol = new Button("Gambar");
TextField teks = new TextField(10);
Label ket = new Label("Input besar sudut : ");
TUGAS V:
Buat Gambar seperti foto anda mulai dari ujung kaki sampai dengan
ujung rambut
PRAKTIKUM 6
KELAS ANIMASI/THREAD
Pokok Bahasan :
• Memahami Konsep Thread
Tujuan Intruksional khusus:
Setelah melakukan praktikum ini diharapkan mahasiswa mampu :
• Menjelaskna konsep Multy Thread
• Menggunakan multy thread pada java
Kegiatan 1
1. Ketikan Listing berikut di notepad atau jcreator
import java.awt.Graphics;
import java.awt.Font;
import java.util.Date;
import java.applet.Applet;
public class JamDigital extends Applet implements
Runnable{
Font jenisFont = new Font("TimesRoman",Font.BOLD,24);
Date tgl;
Thread threadKu;
Kegiatan 2
1. Ketikan Listing berikut di notepad atau jcreator
import java.awt.*;
import java.applet.*;
}
}
}
}
public void paint(Graphics g){
g.setColor(Color.black);
g.fillRect(0, 0, 100, 100);
g.setColor(Color.white);
g.fillRect(101, 0, 100, 100);
g.setColor(Color.red);
g.fillOval(posisiX, 5, 90, 90);
}
}
Kegiatan 3
import java.awt.*;
import java.applet.*;
TUGAS 6
Buatlah sebuah program applet dengan dua buah tombol dan sebuah kotak.
Tombol pertama bertuliskan “KIRI” dan yang kedua bertuliskan “KANAN”. Bila
tombol “KIRI” ditekan, maka kotak bergeser ke kiri. Bila tombol “KANAN”
ditekan, maka kotak bergeser ke kanan.
PRAKTIKUM 7
KELAS AWT DAN SWING
Pokok Bahasan :
• Mengetahui objek AWT dan Swing
Tujuan Instruksional Khusus :
Setelah mengikuti kuliah ini mahasiswa akan dapat:
• membuat program sederhana berbasis window baik dalam bentuk AWT
maupun Swing
• Membuat Menu pada frame
• Memahami Event handling pada frame
Dasar Teori :
JAVA menyediakan fasilitas GUI melalui kelas AWT (Abstract Window Toolkit)
→ import java.awt.*;
• Beberapa objek AWT adalah:
– container : seperti panel, Frame, Dialog
– text component : seperti TextField, TextArea
– Button : tombol klik
– CheckBox : pilihan dengan tanda cek
– Choice : pilihan dalam drop down
– Label : untuk label teks
– List : pilihan dalam bentuk daftar
– Scrollbar : tombol geser
Ada 5 langkah utama untuk menciptakan elemen GUI dalam progran JAVA
yaitu:
1) Sediakan wadah untuk elemen, yaitu Container berupa Panel atau Frame
2) Ciptakan komponen yang diinginkan, yaitu dengan memanggil “constructor”-
nya, misalnya sbb:
Button Ok = new Button(“OK”);
3) Tempelkan komponen tersebut pada wadahnya, misalnya sbb:
this.add(Ok);
4) Atur letak komponen (layout) tersebut pada wadahnya, panel atau frame
5) Tangani kejadian (event handling) yang ditimbulkan oleh komponen
Kegitan 1
<BODY>
<APPLET CODE="Text.class" WIDTH=300 HEIGHT=300>
</APPLET>
</BODY>
</HTML>
5. Simpan file tersebut dengan nama text.html
6. Buka internet explorer anda
Kegitan 2
1. Ketikan listing berikut
import java.awt.*;
import java.applet.*;
import java.lang.*;
}
public inOut2(String title)
{
super(title);
p = new Panel();
p.setLayout(new FlowLayout());
this.add(p);
}
public boolean handleEvent(Event e) {
if (e.target == textarea) {
String namanya = nama.getText();
String umurnya = umur.getText();
String alamatnya = alamat.getText();
int tahun = 2013 - Integer.parseInt(umurnya);
textarea.setText("Nama anda : " + namanya + "\nLahir tahun : "
+ tahun + "\nTinggal di : " +
alamatnya);
return true;
}
else return super.handleEvent(e);
}
}
Kegitan 3 :
// Swing components
JTextField textField = new JTextField(50);
// memebentuk komponen menubar, menu, dan menuitem
JMenuBar menuBar = new JMenuBar();
JMenu fileMenu = new JMenu("File");
JMenuItem fileNew = new JMenuItem("New");
JMenuItem fileOpen = new JMenuItem("Open");
JMenuItem fileSave = new JMenuItem("Save");
JMenuItem fileExit = new JMenuItem("Exit");
JMenu editMenu = new JMenu("Edit");
JMenuItem editCut = new JMenuItem("Cut");
JMenuItem editCopy = new JMenuItem("Copy");
JMenuItem editPaste = new JMenuItem("Paste");
JMenu specialMenu = new JMenu("Special");
JCheckBoxMenuItem specialCheck1 = new
JCheckBoxMenuItem("Check 1");
//constructor
public SwingWin() {
super(TITLE);
buildGUI();
setupEventHandlers();
setSize(WIDTH,HEIGHT);
show();
}
void buildGUI() {
setupMenuBar();
layoutComponents();
}
void setupMenuBar() {
fileMenu.add(fileNew);
fileMenu.add(fileOpen);
fileMenu.add(fileSave);
fileMenu.add(fileExit);
editMenu.add(editCut);
editMenu.add(editCopy);
editMenu.add(editPaste);
specialMenu.add(specialCheck1);
specialMenu.add(specialCheck2);
specialMenu.add(separator);
buttonGroup.add(specialRadio1);
buttonGroup.add(specialRadio2);
specialMenu.add(specialRadio1);
specialMenu.add(specialRadio2);
menuBar.add(fileMenu);
menuBar.add(editMenu);
menuBar.add(specialMenu);
setJMenuBar(menuBar);
}
void setupEventHandlers() {
addWindowListener(new WindowHandler());
fileNew.addActionListener(new MenuItemHandler());
fileOpen.addActionListener(new MenuItemHandler());
fileSave.addActionListener(new MenuItemHandler());
fileExit.addActionListener(new MenuItemHandler());
editCut.addActionListener(new MenuItemHandler());
editCopy.addActionListener(new MenuItemHandler());
editPaste.addActionListener(new MenuItemHandler());
specialCheck1.addItemListener(new ItemHandler());
specialCheck2.addItemListener(new ItemHandler());
specialRadio1.addItemListener(new ItemHandler());
specialRadio2.addItemListener(new ItemHandler());
}
Tugas 7
PRAKTIKUM 8
CLASS GUI/SWING
Buat Class baru di dalam project yang telah dibuat sebelumnya, Dengan cara :
o Jalankan menu File | New File untuk membuka dialog New File.
o Pastikan Project yang terpilih adalah project kerja anda : contoh PraktikumPBO_152222
o Pilih Categories : SWING GUI Form File types : JFrame Form, kemudian tekan Next
NIM : txtNim
Nama : txtNama
TTL : txtT4Lahir,
cmbTanggal, cmbBulan, cmbTahun
Alamat : txtAlamat
Button : btnView,
btnCelae,btnExit View Data
: txtView
public GUI_AWT()
{
initComponents
();
//Isi Tanggal
for(int i=1;i<=31;i++){
cmbTanggal.add(String.format("%02d"
, i));
}
//Isi Bulan
for(int i=1;i<=12;i++){
cmbBulan.add(String.format("%02d"
, i));
}
//Isi Tahun
for(int i=1970;i<=2019;i++){
cmbTahun.add(String.valueO
f(i));
}
}
o Double klik pada Button View Untuk Menulis Program Seperti dibawah ini :
private void btnViewActionPerformed(java.awt.event.ActionEvent
evt) {
// TODO add your handling code here:
txtView.setText("NIM : "+
txtNim.getText()+'\n');
txtView.setText(txtView.getText() + "Nama : "
+ txtNama.getText()+'\n');
txtView.setText(txtView.getText() + "TTL : "
+ txtT4Lahir.getText()+", " +
cmbTanggal.getItem(0)+"/" +
cmbBulan.getItem(0)+"/" +
cmbTahun.getItem(0)+'\n');
txtView.setText(txtView.getText() + "Alamat : " +
txtAlamat.getText());
}
o Double klik pada Button Clear Untuk Menulis Program Seperti dibawah ini
:
private void btnClearActionPerformed(java.awt.event.ActionEvent
evt) {
// TODO add your handling code
here: txtView.setText("");
}
o Double klik pada Button Exit Untuk Menulis Program Seperti dibawah ini :
private void btnExitActionPerformed(java.awt.event.ActionEvent
evt) {
// TODO add your handling code
here: dispose();
}
PRAKTIKUM 9
o Jalankan menu File | New File untuk membuka dialog New File.
o Pastikan Project yang terpilih adalah project kerja anda : contoh PraktikumPBO_152222
o Pilih Categories : Java File types : Java Class, kemudian tekan Next
public Form() {
super("Feedback
Form");
setSize(260,160);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
pane.add(usernameLab
el);
pane.add(username);
pane.add(passwordLab
el);
pane.add(password);
pane.add(commentsLab
el);
pane.add(comments);
setContentPane(pa
ne); show();
}
public static void main(String[] args) {
Form input = new Form();
}
}
import javax.swing.*;
public class Combo extends JFrame {
JComboBox monthBox = new JComboBox();
JComboBox yearBox = new JComboBox();
public Combo() {
super("Expiration
Date");
setSize(220,90);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Output :
PRAKTIKUM 10
SWING LANJUTAN
Praktikum
10a
Buat Class Swing baru di dalam project yang telah dibuat sebelumnya, Dengan cara
:
o Jalankan menu File | New File untuk membuka dialog New File.
o Pastikan Project yang terpilih adalah project kerja anda : contoh PraktikumPBO_152222
o Pilih Categories : Swing GUI Forms File types : Jframe Form, kemudian tekan Next
o Isi Pada isian Class Name : Login
o Tekan Finish
o Desain Tampilan JFrame Seperti dibawah ini
o Atur Propertis JFrame Sehingga Tampil seperti Desain JFrame Dibawah ini
Praktikum 9b
o Buat Class Swing baru
o Pastikan Project yang terpilih adalah project kerja anda : contoh PraktikumPBO_152222
o Pilih Categories : Swing GUI Forms File types : Jframe Form, kemudian tekan Next
NIM : txtNim
Nama : txtNama
Alamat : txtAlamat
Telpon : txtTlp
Button : btnView
Tabel : tblData
import javax.swing.JOptionPane;
import javax.swing.table.DefaultTableModel;
public Biodata()
{
initComponents
();
}
private void tampilData() {
final String[]caption = {"NIM","Nama","Alamat","Telepon"};
//MEMBERIKAN HEADER JtABLE
DefaultTableModel tbUser;
tbUser = new DefaultTableModel(null,
caption); tblData.setModel(tbUser);
String[]data={nim,
nama,alamat,tlp};
tbUser.addRow(data);
}
Output
PRAKTIKUM 11
PEMROGRMAN DATABASE JAVA
PRAKTIKUM 12 dan 13
PEMROGRMAN DATABASE JAVA LANJUTAN
Koneksi ke Database :
➢ Objek DriverManager ini bisa menghasilkan sebuah koneksi melalui metode
getConnction(), dengan menyertakan URL sebagai parameternya
jdbc:mysql://localhost/db_penjualan?user=root&passwor
d=admin
➢ jdbc:mysql adalah nama drivernya.
➢ localhost adalah nama hostname (komputer address).
➢ db_penjualan adalah nama databasenya.
➢ root adalah nama account user MySQL.
➢ admin adalah password dari account MySQL tersebut.
Praktikum 11. A
➢ buka netbeans lalu buat project dengan nama seperti dibawah ini:
➢ Dari jendela project - click kanan pada libraries – Add library – Pilih MYSQL JDBC
Driver pada daftar library – add library
➢ Nama dari masing masing objek menggunakan nama default sesuai urutan objek
➢ Ketikan kode berikut
import java.awt.Dimension;
import java.awt.Toolkit;
import java.sql.*;
import javax.swing.JOptionPane;
import javax.swing.table.DefaultTableModel;
public forminputtable() {
initComponents();
Dimension screensize =
Toolkit.getDefaultToolkit().getScreenSize();
setLocation((screensize.width / 2) - (getSize().width /
2), (screensize.height / 2) - (getSize().height / 2));
tampildalamtabel();
con=konek.getKoneksiDatabase();
Statement st = con.createStatement();
ResultSet rs;
jTable2.setModel(tbl);
try{
rs = st.executeQuery("select * from barang");
while(rs.next()){
tbl.addRow(new Object[]{
rs.getString("kode_brg"),
rs.getString("nama"),
rs.getString("jumlah"),
// rs.getString("tglbeli"),
});
jTable2.setModel(tbl);
}
}catch(Exception e){}
}
catch (SQLException e){
System.out.println("koneksi gagal " +
e.toString());
}
}
jTextField1.requestFocus();
} else{
try {
con = konek.getKoneksiDatabase();
PreparedStatement pStatement = null;
pStatement = null;
String sql ="insert into barang " +"(kode_brg, nama, jumlah)"
+"Values (?,?,?)";
pStatement = con.prepareStatement(sql);
pStatement.setString(1, jTextField1.getText());
pStatement.setString(2, jTextField2.getText());
pStatement.setString(3, jTextField3.getText());
//pStatement.setString(4, jTextField4.getText());
int intTambah= pStatement.executeUpdate();
tampildalamtabel();
if (intTambah>0)
JOptionPane.showMessageDialog(this,"Penambahan sukses",
"Informasi",JOptionPane.INFORMATION_MESSAGE);
else
JOptionPane.showMessageDialog(this,"Penambahan gagal",
"Informasi",JOptionPane.INFORMATION_MESSAGE);
pStatement.close();
pStatement.close();
jTextField1.setText("");
jTextField2.setText("");
jTextField3.setText("");
}
}
PRAKTIKUM 14,15,16
CONTOH KASUS PEMROGRAMAN DATABASE
Tabel: agama
Tabel : program_studi
Tabel : provinsi
Tabel : kategori_buku
Tabel : Anggota_perpustakaan
Tabel : Peminjaman_buku
Tabel : buku
1. Buatlah satu kelas dengan nama Koneksi.java untuk konfigurasi akses ke database
package Komang_192001_ProjectSisfo;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
d. Kemudian klik kanan pada pallet manager dan plilih palete manager dan pilih add from
jar
f. Kemudian pilih next yang kemudian aka ada pilihan dimana palete tersebut
ditempatkan
Kemudian rancanglah form dibawa ini yang tanggal lahir menggunakan objek
JDateChoose yang ditambahkan pada pallet diatas
package Komang_192001_ProjectSisfo;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.text.SimpleDateFormat;
import javax.swing.JOptionPane;
import javax.swing.JTable;
import javax.swing.table.DefaultTableModel;
import javax.swing.table.TableColumn;
public FormInputBiodataMahasiswa() {
initComponents();
KosongkanObjek();
TampilDataMhsPadaTabel();
LoadDataProdi();
LoadDataAgama();
LoadDataKelamin();
LoadDataProvinsi();
LoadTahunMasuk();
}
void KosongkanObjek(){
jTextField1.setText("");
jTextField2.setText("");
jTextField3.setText("");
jTextField4.setText("");
jTextField5.setText("");
jTextField6.setText("");
jTextField7.setText("");
jTextField8.setText("");
jTextField9.setText("");
jTextField10.setText("");
jTextField11.setText("");
jTextField12.setText("");
jTextField13.setText("");
Revisi 3 by. Komang Aryasa 81
Panduan Praktikum
Pemrograman Berorientasi Objek (java)
jTextField14.setText("");
jTextField15.setText("");
jTextField16.setText("");
jTextField17.setText("");
jTextField1.requestFocus();
}
} catch (Exception e) {
JOptionPane.showMessageDialog(null, "salah"+e);
}
}
private void TampilModelJTabel(){
try {
String[]kolom={"Stambuk","Nama Mahasiswa","Program Studi",
"Agama","Tempat Lahir","Tgl Lahir","Jenis Kelamin","Alamat","Kota",
"Provinsi","Kode Pos", "Telepon","Hanphone","Hobi","Wali","Alamat Wali",
"Telepon Wali","Tahun Masuk"};
Dtm = new DefaultTableModel(null, kolom){
@Override
public boolean isCellEditable(int rowIndex, int columnIndex) {
return false;
}
};
jTable4.setModel(Dtm);
AturJTable(jTable4, new int
[]{100,300,300,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90} );
} catch (Exception e) {
JOptionPane.showMessageDialog(null, "salah"+e);
}
}
void TampilDataMhsPadaTabel(){
try {
Con=Konek.getKoneksiDatabase();
Stm = Con.createStatement();
TampilModelJTabel();
try{
});
jTable4.setModel(Dtm);
}
}catch(Exception e){
System.out.println("Ada Kesalahan " + e.toString());
}
}catch (SQLException e){
System.out.println("koneksi gagal " + e.toString());
}
}
void CariDataMhs(){
try {
Con=Konek.getKoneksiDatabase();
Stm = Con.createStatement();
TampilModelJTabel();
try{
Rs.getString("Kota"),
Rs.getString("NamaProvinsi"),
Rs.getString("KodePos"),
Rs.getString("Telpon"),
Rs.getString("Handphone"),
Rs.getString("Hobi"),
Rs.getString("Wali"),
Rs.getString("AlamatWali"),
Rs.getString("TelponWali"),
Rs.getString("TahunMasuk"),
});
jTable4.setModel(Dtm);
}
}catch(Exception e){
System.out.println("Ada Kesalahan " + e.toString());
}
}catch (SQLException e){
System.out.println("koneksi gagal " + e.toString());
}
}
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
String Tampilan="yyyy-MM-dd";
SimpleDateFormat Fm = new SimpleDateFormat(Tampilan);
String TanggalLahir = String.valueOf(Fm.format(jDateChooser1.getDate()));
try {
Con = Konek.getKoneksiDatabase();
Stm = null;
Sql = "insert into biodata_mahasiswa (id, nim, nama, kode_program_studi,
kode_agama, tempat_lahir," +
"tanggal_lahir, jenis_kelamin, alamat, kota, kode_propinsi, kode_pos,
telpon, handphone, hobi, "+
"wali, alamat_wali, telpon_wali, tahun_masuk, last_update, userid )
VALUES (NULL,'"+jTextField1.getText()+"', " +
"'"+jTextField2.getText()+"', '"+jComboBox1.getSelectedItem()+"',
'"+jComboBox2.getSelectedItem()+"',
'"+jTextField5.getText()+"','"+TanggalLahir+"'," +
" '"+jComboBox3.getSelectedItem()+"', '"+jTextField7.getText()+"',
'"+jTextField8.getText()+"', '"+jComboBox4.getSelectedItem()+"',
'"+jTextField10.getText()+"'," +
"'"+jTextField11.getText()+"','"+jTextField12.getText()+"','"+jTextField13.getTex
t()+"','"+jTextField14.getText()+"','"+jTextField15.getText()+"', " +
"'"+jTextField16.getText()+"','"+jComboBox5.getSelectedItem()+"',NOW(),'ADMIN')";
Stm= Con.createStatement();
int AdaPenambahanRecord= Stm.executeUpdate(Sql);
TampilDataMhsPadaTabel();
if (AdaPenambahanRecord>0)
JOptionPane.showMessageDialog(this,"Data Berhasil Tersimpan",
"Informasi",JOptionPane.INFORMATION_MESSAGE);
else
JOptionPane.showMessageDialog(this,"Data Gagal Tersimpan",
"Informasi",JOptionPane.INFORMATION_MESSAGE);
Stm.close();
KosongkanObjek();
jComboBox1.setSelectedIndex(0);
jComboBox2.setSelectedIndex(0);
jComboBox3.setSelectedIndex(0);
jComboBox4.setSelectedIndex(0);
jComboBox5.setSelectedIndex(0);
Rs=Stm.executeQuery(Sql);
while(Rs.next()) {
Kode= Rs.getString("nama");
}
jTextField4.setText(Kode);
} catch(SQLException e){
System.out.println("koneksi gagal"+e.toString());
}
}
jButton1.setEnabled(false);
jTextField2.setText(Rs.getString("nama"));
jTextField5.setText(Rs.getString("tempat_lahir"));
jDateChooser1.setDate(Rs.getDate("tanggal_lahir"));
jComboBox3.setSelectedItem(Rs.getString("jenis_kelamin"));
jTextField7.setText(Rs.getString("alamat"));
jTextField8.setText(Rs.getString("kota"));
jTextField10.setText(Rs.getString("kode_pos"));
jTextField11.setText(Rs.getString("telpon"));
jTextField12.setText(Rs.getString("handphone"));
jTextField13.setText(Rs.getString("hobi"));
jTextField14.setText(Rs.getString("wali"));
jTextField15.setText(Rs.getString("alamat_wali"));
jTextField16.setText(Rs.getString("telpon_wali"));
jComboBox5.setSelectedItem(Rs.getString("tahun_masuk"));
jComboBox1.setSelectedItem(Rs.getString("kode_program_studi"));
jComboBox2.setSelectedItem(Rs.getString("kode_agama"));
jComboBox4.setSelectedItem(Rs.getString("kode_propinsi"));
} else {
jButton1.setEnabled(true);
jTextField2.setText("");
jTextField3.setText("");
jTextField4.setText("");
jTextField5.setText("");
jTextField6.setText("");
jTextField7.setText("");
jTextField8.setText("");
jTextField9.setText("");
jTextField10.setText("");
jTextField11.setText("");
jTextField12.setText("");
jTextField13.setText("");
jTextField14.setText("");
jTextField15.setText("");
jTextField16.setText("");
jTextField17.setText("");
jComboBox1.setSelectedIndex(0);
jComboBox2.setSelectedIndex(0);
jComboBox3.setSelectedIndex(0);
jComboBox4.setSelectedIndex(0);
jComboBox5.setSelectedIndex(0);
jTextField2.requestFocus();
}
Stm= Con.createStatement();
int AdaPerubahanRecord= Stm.executeUpdate(Sql);
TampilDataMhsPadaTabel();
if (AdaPerubahanRecord>0){
JOptionPane.showMessageDialog(this,"Data Berhasil Di Edit",
"Informasi",JOptionPane.INFORMATION_MESSAGE);
jButton1.setEnabled(true);
}else
JOptionPane.showMessageDialog(this,"Data Gagal Di Edit",
"Informasi",JOptionPane.INFORMATION_MESSAGE);
Stm.close();
KosongkanObjek();
jComboBox1.setSelectedIndex(0);
jComboBox2.setSelectedIndex(0);
jComboBox3.setSelectedIndex(0);
jComboBox4.setSelectedIndex(0);
jComboBox5.setSelectedIndex(0);
Stm= Con.createStatement();
int AdaPerubahanRecord= Stm.executeUpdate(Sql);
TampilDataMhsPadaTabel();
if (AdaPerubahanRecord>0){
JOptionPane.showMessageDialog(this,"Data Berhasil Di Hapus",
"Informasi",JOptionPane.INFORMATION_MESSAGE);
jButton1.setEnabled(true);
}else
JOptionPane.showMessageDialog(this,"Data Gagal Di Hapus",
"Informasi",JOptionPane.INFORMATION_MESSAGE);
Stm.close();
KosongkanObjek();
jComboBox1.setSelectedIndex(0);
jComboBox2.setSelectedIndex(0);
jComboBox3.setSelectedIndex(0);
jComboBox4.setSelectedIndex(0);
jComboBox5.setSelectedIndex(0);
1. Form Anggota
2. Form Buku
3. Form Peminjaman
4. Form Pengembalian
PRAKTIKUM 17
MERANCANG MENU
1. Buatlah class dengan nama FormUtama.Java ➔ klik kanan pada Package Anda
➔pilih JFrameForm ➔ dan berikan Nama Classnya
2. Untuk membuat menu pilihlaj Pallete Swing Menu ➔ klik dan drag palete MenuBar
ke Jframe yang telah dibuat, Untuk membuat menu File, Input Data, Traksaksi dan
Laporan ➔ klick dan drag pada pallete Menu dan lepaskan pada MenuBar yang
telah dibuat➔ lakukan dengan cara yang sama s.d menu laporan
3. Untuk membuat menu Item/Sub menu gunakanlah Palete Menu Item ➔ klick dan
drag MenuItem kemudian pilih dimana menu item itu akan di simpan misalnya
pada menu InputData➔kemudian ganti nama menu item sesuai dengan
kebutuhan➔ lakukan dengan cara yang sama pada menuitem lainnya
PRAKTIKUM 18,19
MERANCANG REPORT
A. Merancang Report
Default IDE NetBeans 8 belum dilengkapi tools untuk mendesign report/laporan
sehingga perlu ditambahkan pluggin Ireport ke dalam IDE NetBeans. Ireport adalah salah
satu tools untuk merancangan laporan dalam Bahasa pemrograman java, sama seperti
FastReport pada pemrograman Visual Delphi atau Crystal Report pada pemerograman
lainnya.
1. Downloadlah Irepot pada laman berikut
http://community.jaspersoft.com/project/ireport-designer.
2. Download dan ektrak file Ireport yang telah diwonload
3. Klick menu tools pada NetBeans ➔ pilih Plugins➔ pada form plugins ➔ pilih Tab
Downloaded➔ dan pilih Tombol Add Plugins➔ lalu akan diarahkan ke direktori file
irepot yang sudah diwonload dan diektrak➔ kemudian plih Open
6. Selanjutnya buat satu package pada project anda dengan nama Laporan untuk menyimpan File Report yang
akan dirancang
7. Klik kanan pada package Laporan ➔ new File➔pada Categori Pilih Report ➔ untuk medesign Report pilih
Empty Report
8. Pilih Next ➔ berinakan nama File yang diinginkan dan siap untuk medesign report
9. Buatlah query untuk akses ke database serta data apa saja yang akan ditampilkan pada report dengan
memlih tools report Datasource ➔ pilih new ➔ dan lakukan konfiguras JDBC Connection
12. Gunakan Report Elemet yang bersesuain untuk merancang report diatas
PRAKTIKUM 20
Export Java To Exe dan Final Test