Sabtu, 23 Maret 2019

PERTEMUAN 7 JAVA GUI


JAVA GUI




DASAR TEORI
Sun Microsystem,Inc. Selaku pengembang utama java menyediakan banyak kelas yang dapat digunakan untuk mempermudah pembuatan aplikasi java. Daftar kelas yang telah disediakan oleh Sun, lengkap serta constructor, method dan cara penggunaannya dapat dilihat pada dokumentasi java. Dokumentasi java ini akan sangat terasa kegunaanya ketika membuat aplikasi java berbasis GUI ( GRAPHIC WIDGET TOLLKIT).
GUI adalah suatu aplikasi dalam java yang berbasis grafik. GUI membuat hasil suatu program tanpak menarik dan nyaman ketika digunakan oleh user dan mudah digunakan. Java menyadiakan 3 kelas yaitu : AWT (Abstract Windowing Toolkit), SWT (Standart Widget Toolkit) dan Swing.

1.      AWT
AWT terdapat pada package java.awt. package java.awt berisi komponen GUI yang bersifat platform sistem operasi. Tampilan dari java.awt menyesuaikan dengan sistem operasi sehingga mengakibatkan dependensi sistem. Kelas yang terdapat pada package java.awt seperti : button, label, window, frame, panel dan dialog.

2.      SWT
SWT terdapat pada package java.swt package java.swt berisi komponen GUI yang bersifat platform sistem operasi. Tampilann dari java.swt menyesuaikan dengan sistem operasi sehingga mengakibatkan dependensi sistem. Namun performa dari SWT hampir sama seperti swing.

3.      SWING
Swing terdapat pada package javax.swing. Package javax.swing dapat diaplikasikan pada multiplatform sistem operasi. Implementasi swing dalam program program dapat menggunakan class yang sudah dapat pada javax.swing yaitu jFrame, Jdialog, Joption, Jlabel.


LANGKAH PRAKTIKUM.


A.     MEMBUAT PROGRAM cthWTI.java

import java.awt.*;
public class cthAWT1 {
public static void main (String[] args) {
Frame myFrame = new Frame("Contoh program AWT");
Label myLabel = new Label("Selamat belajar JAVA");
myFrame.add(myLabel);
myFrame.setSize(200,150);
myFrame.show();
}
}

Outpunya :
Selamat belajar JAVA

B.     MEMBUAT PROGRAM cthAWT2.java

import java.awt.*;
class frameTurunan extends Frame {
Label myLabel = new Label("Selamat Belajar JAVA");
public frameTurunan(String judul) {
setTitle(judul);
setSize(200,200);
add(myLabel);
show();
}
}
public class cthAWT2 {
public static void main (String[] args) {
frameTurunan f = new frameTurunan("Ini Frame Turunan");
}
}

Outputnya :
Selamat Belajar JAVA


C.     MEMBUAT PROGRAM cthSwing1.java

import javax.swing.*;
public class cthSwing1 {
public static void main (String[] args) {
JFrame myFrame = new JFrame("Contoh program Swing");
JLabel myLabel = new JLabel("Selamat belajar JAVA");
myFrame.add(myLabel);
myFrame.setSize(200,150);
myFrame.setVisible(true);
myFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}

Outputnya:
Selamat belajar JAVA

D.     MEMBUAT PROGRAM cthSwing2.java

import javax.swing.*;
class frameTurunan extends JFrame {
JLabel myLabel = new JLabel ("Selamat Belajar JAVA!");
public frameTurunan (String judul) {
setTitle(judul);
setSize(200,200);
add(myLabel);
setVisible(true);
}
}
public class cthSwing2 {
public static void main (String[] args) {
frameTurunan f = new frameTurunan("Ini Frame Turunan");
}
}

Outputnya :
Selamat Belajar JAVA


Selasa, 12 Maret 2019

PERTEMUAN 6 PACKAGE DAN JAVA KELAS



PACKAGE DAN JAVA KELAS





A.    PACKAGE.

Package digunakan untuk mengelompokkan file kalas (*class) yang terkait (karena jenisnya, fungsinya atau karena alasan lainnya) pada direktori yang sama, dimana didalam kelasnya terdapat directive (statetmen java dalam source code yang digunakan untuk kelas) package yang mengacu pada directori tersebut.
Deklarasi package : Package namaPackage;
Secara umum, menggunakan kelas yang telah dideklarasi dan dikompile ke dala suatu package, maka dapat membubuhkan pernyataan import pada kelas pemanggil tersebut.
Deklarasi import :
1.      Mendeklarasikan penggunaan kelas suatu package satu persatu
Import namaPackage.namaKelas;
2.      Mendeklarasikan penggunaan semua kelas suatu package
Import namaPackage.*;




B.     JAVA KELAS.


1.      Kelas String.
String merupakan kelas yang menangani deretan karakter. Kelas ini mendukung sejumlah method yang sangat berguna untuk memanipulasi string. Beberapa method dalam kelas string adalah :
a.       Char charAt(int indeks) : menghasilkan karakter yang terletak pada posisi indeks.
b.      Boolean equals(Object anObjevt) : membandingkan string ini dengan onjek lain. Case sensitive
c.       Boolean equalsIgroneCase(String anString) : membandingkan string ini dengan objek lain. Tidak case sensitive
d.      Int length() : mengembalikan nilai panjang/jumlah karakter dari string
e.       String toLowerCase() : mengkonversi semua karakter menjadi huruf kecil
f.       String toUpperCase() : mengkonversikan semua karakter menjadi huruf besar
g.       String main() : mengembalikan salinan string ini menghilangkan spasi kosong diawal dan diakhir string.


2.      Kelas Math.

Math adalah kelas yang terdapat pada paket java yang berguna untuk melakukan berbagai operasi matematika.
Beberapa method dalam kelas math adalah :
a.       Double abs(double a) .
Menghasilkan nilai mutlak dari atribut.
b.      Double ceil(double a).
Mengkonversi nilai atribut dengan pembulatan ke bawah.
c.       Double floor(double a).
Mengkonversi nilai atribut dengan pembulatan keatas.
d.      Long round(double a).
Menghasilkan nilai yang merupakan bilangan bulat terdekat dengan parameter a.
e.       Double sqrt(double a).
Menghasilkan nilai yang merupakan akar kuadrat dari a.




LANGKAH – LANGKAH PRAKTIKUM.

Membuat direktori PERTEMUAN 6\makhlukhidup\hewan


CARA MENYIMPAN :
1.      Buat folder di data D dengan nama PERTEMUAN 6
2. .      Kemudian buat folder baru makhlukhidup
a.       Didalam folder makhluk hidup simpan file Manusia.java dengan Tumbuhan.java
b.      Didalam folder makhlukhidup buat folder baru dengan nama hewan
Difolder hewan simpan file Burung.java.
Setelah itu untuk file MainMakhluHidup
MainMakhluHidupImport
ContohString
OpMatematika
Simpan sejajar dengan folder makhlukhidup (simpan file tersebut di dalam folder PERTEMUAN 6)




a.      MEMBUAT PROGRAM Manusia.java

//file Manusia harus berada dalam folder makhlukhidup
package makhlukhidup;
public class Manusia {
public String nama = "";
public Manusia(String nama) {
this.nama = nama;
}
}

Tidak memiliki output karena tidak memiliki fungsi utama yaitu “public static void main”



B.     MEMBUAT PROGRAM Tumbuhan.java

//file Tumbuhan harus berada dalam folder makhlukhidup
package makhlukhidup;
public class Tumbuhan {
public String nama = "";
public Tumbuhan (String nama) {
this.nama = nama;
}
}



C.     MEMBUAT PROGRAM Burung.java

//file Burung harus berada dalam folder makhlukhidup/hewan
package makhlukhidup.hewan;
public class Burung {
public static final boolean bisaTerbang = true;
public String nama ="";
public Burung (String nama) {
this.nama = nama;
System.out.println("Nama burung: "+nama);
}
}




D.     MEMBUAT PROGRAM MainMakhlukHidup.java

//file MainMakhlukHidup harus berada dalam folder Meet6
public class MainMakhlukHidup {
public static void main (String[] args) {

makhlukhidup.Manusia m = new makhlukhidup.Manusia ("Sayuti");

System.out.println("nama : "+m.nama);

makhlukhidup.Tumbuhan t = new
makhlukhidup.Tumbuhan("Palem");
System.out.println("nama : "+t.nama);

System.out.println("Semua burung pasti bisa terbang?"+makhlukhidup.hewan.Burung.bisaTerbang);
makhlukhidup.hewan.Burung b = new makhlukhidup.hewan.Burung("Beo");
}
}

Outputnya :
Nama : Sayuti
Nama : Palem
Semua burung pasti bisa terbang? False
Nama burung : Beo



E.     MEMBUAT PROGRAM MainMakhlukHidupPakeImport.java

//file MainMakhlukHidup harus berada dalam folder Meet6
import makhlukhidup.*;
import makhlukhidup.hewan.*;

public class MainMakhlukHidupPakeImport {
public static void main(String[] args) {
Manusia m = new Manusia ("Sayuti");
System.out.println ("nama : "+m.nama);

Tumbuhan t = new Tumbuhan ("Palem");
System.out.println ("nama : "+t.nama);

System.out.println ("Semua burung pasti bisa terbang?"+Burung.bisaTerbang);
Burung b = new Burung ("Beo");
}
}

Outputnya :
Nama : Sayuti
Nama : Palem
Semua burung pasti bisa terbang? False
Nama burung : Beo




F.      MEMBUAT PROGRAM ContohString.java

public class ContohString {
public static void main (String[] args) {
String Kalimat = "Selamat belajar JAVA";
System.out.println("toUpperCase"+Kalimat.toUpperCase());
System.out.println("toLowerCase"+Kalimat.toLowerCase());
System.out.println("Jumlah karakter : "+Kalimat.length());
System.out.println("Karakter index ke 0 : "+Kalimat.charAt(0));
System.out.println("Substring(16,20) : "+Kalimat.substring(16,20));
System.out.println("Karakter index ke 0 : "+Kalimat.trim());
}
}

Outputnya :
to UpperCase SELAMAT BELAJAR JAVA
to LowerCase selamat belajar java
Jumlah karater : 20
Karakter indeks ke 0 : S
Substring <16,20> : java
Karakter index ke 0 : selamat belajar java



G.    MEMBUAT PROGRAM OpMatematika.java

public class OpMatematika {
public static void main (String[] args) {
System.out.println ("E               = "+Math.E);
System.out.println ("PI              = "+Math.PI);
System.out.println ("Ln 20      = "+Math.log(20.0));
System.out.println ("ceil(-5.6)      = "+Math.ceil(-5.6));
System.out.println ("floor(-5.6)     = "+Math.floor(-5.6));
System.out.println ("round(-5.6)     = "+Math.round(-5.6));
System.out.println ("sqrt(25)        = "+Math.sqrt(25));
System.out.println ("pow(25,0.5)     = "+Math.pow(25,0.5));
}
}

Outputnya :
E                      = 2.718281828459045
PI                    = 3.141592653589793
Ln 20               = 2.995732273553991
Ceil <-5.6>                  = -5.0
Floor <-5.6>               = -6.0
Round <-5.6>              = -6
Sqrt <25>                    = 5.0
Pow <25,0.5>              = 5.0

PERTEMUAN 5 OVERLOADING, OVERRIDING DAN EXCEPTION


OVERLOADING, OVERRIDING DAN EXCEPTION


A.     OVERLOADING
Overloading adalah suatu kemampuan dalam bahasa berorientasi objek untuk menggunakan satu nama method untuk beberapa method yang memiliki parameter masukan yang berbeda (tipe maupun jumlah parameter).
Overloading memodifikasi secara horizontal method maupun konstruktor milik kelas super, maupun kelas yang sama.


B.     OVERRIDING
Overriding adalah suatu kemampuan dalam bahasa berorientasi objek untuk mengubah implementasi (menimpa) suatu method yang dimiliki oleh kelas super ketika kelas super tersebut diturunkan. Overriding memodifikasi secara vertikal method yang dimiliki kelas super.
Ada 2 alasan melakukan overriding :
1.      Mendefenisikan kembali method kelas induk secara total
2.      Menambahkan behaviour tertentu pada method kelas induk


C.     EXCEPTION
Exception adalah suatu objek error khusus yang dibuat ketika terjadi kesalahan pada suatu program. Setelah suatu objek exception dibuat oleh java., objek tersebut dikirim ke program, proses ini disebut throwing an exception.
Objek exception tersebut kemudian diterima oleh program dan penanganan exception selanjutnya terserah kepada program.
Penanganan exception dalam java dengan menuliskan kode proogram exception handling pada source kode.
Exception handling berguna untuk mencegah program menjadi “hang’. Kode program exception handling secara umum terdiri dari 3 bagian yaitu : try, catch dan finally
Kategory error dalam program :
1.      Syntax error : error yang terjadi apabila java compiler menemukan kesalahan pada sintax atau aturan lainnya pada program.
2.      Runtime error : error yang terjadi karena faktor external, seperti adanya pembagian dengan nol, input yang tidak sesuai dengan tipe yang dimintak dan sebagainya.
3.      Logic error : error yang terjadi karena kesalahan logika pemprograman. Misalnya hasil pembagian 2 buah bilangan diberi tipe data int. Hal ini menyebabkan hasil tidak valid karena ada pembagian koma desemal yang akan hilang



LANGKAH PRAKTIKUM


A.     MEMBUAT PROGRAM SegiTiga.java

class SegiTiga {
public SegiTiga(double panjang) {
System.out.println("\nVariabel = segitiganya sama sisi");
System.out.println("Panjang = "+panjang);
keliling(panjang);
}
public SegiTiga(double panjang, double sisiMiring) {
System.out.println("\n2Variabel = segitiganya sama kaki");
System.out.println("Panjang = "+panjang+" sisi miring = "+sisiMiring);
keliling(panjang, sisiMiring);
}
public void keliling(double panjang){
tampilkanHasil(panjang*3);
}
public void keliling(double p, double sM){
tampilkanHasil(2*sM+p);
}
protected void tampilkanHasil(double h){
System.out.println("Hasil = "+h);
}
}

Tidak memiliki output karena tidak memiliki fungsi utama.




B.     MEMBUAT PROGRAM MainSegiTiga.java

class MainSegiTiga {
public static void main(String[] args) {
new SegiTiga(7);
new SegiTiga(4,7);
}
}

Outputnya :
Variabel = segitiga sama sisi
Panjang = 7.0
Hasil = 21.01
2 variabel = segitiga sama kaki
Panjang = 4.0
Sisi miring = 7.0
Hasil = 18.0



C.     MEMBUAT PROGRAM OverRiding.java

class OverRiding {
public void MethodAsli() {
System.out.println("Method milik class OverRiding dijalankan");
}

public static void main(String[] args){
OverRiding O = new OverRiding();
O.MethodAsli();
}
}

Outputnya :
Method ini class Overriding dijalankan





D.     MEMBUAT PROGRAM SubOverRiding.java

class SubOverRiding extends OverRiding {
public void MethodAsli(){
System.out.println("Method yang sudah OverRiding dijalankan");
}

public void MethodAsliSuper() {
System.out.println("Method pemanggil MethodAsli dijalankan");
super.MethodAsli();
}
public static void main(String[] args) {
SubOverRiding SO = new SubOverRiding();
SO.MethodAsli();
SO.MethodAsliSuper();
}
}
Outputnya :
Method yang sudah Overriding dijalankan
Method memanggil Method Asli dijalankan
Method milik class Overriding dijalankan


E.     MEMBUAT PROGRAM TanpaException.java

class TanpaException {
public static void main (String[] args) {
int Nilai = Integer.parseInt (args[0]);
System.out.println("Nilai yang diimasukkan : "+Nilai);
}
}
Outputnya :
Exception in thread “main” java.lang.ArrayIndexOutOfBoundsException: 0
At TanpaException.main<TanpaException.java:3>




F.      MEMBUAT PROGRAM CobaException.java
class CobaException {
public static void main (String[] args){
int nilai = 0;
try {
int Nilai = Integer.parseInt (args[0]);
System.out.println("Nilai yang diimasukkan : "+Nilai);
}
catch (Exception e) {
System.out.println("Pasti yang diinput bukan Integer");
}
finally {
System.out.println("Blok finally dilakukan");
}
}
}
Outputnya :
Pasti diinput bukan integer
Blok finally dilakukan



G.    MEMBUAT PROGRAM PembagianNol.java

class PembagianNol {
public static void main (String[] args) {
System.out.println("Sebelum pembagian");
try {
System.out.println(5/0);
}
catch(Throwable T) {
System.out.println("Terjadi pembagian nol");
}
System.out.println("Sesudah pembagian");
}
}
Outputnya :
Sebelum pembagian
terjadi pembagian nol
sesudah pembagian



H.    MEMBUAT PROGRAM TesInputData.java

import java.io.*;
class TesInputData {
public static void main (String[] args) {
BufferedReader       BR = new BufferedReader(new InputStreamReader(System.in));
String Input = " ";
try {
System.out.println("Masukkan data : ");
Input = "Salah";
}
finally {
System.out.println("Data yang anda masukkan adalah"+Input);
}
}
}
Outputnya :
Data yang anda masukkan adalah salah



PERTEMUAN 11 KOMPONEN KOMPONEN SWING LANJUTAN.

KOMPONEN – KOMPONEN SWING LANJUTAN Swing merupakan alternatif lain untuk mengimplementasikan pemprograman window. Walaupun diimplement...