Skip to main content

Materi Kuliah Pemograman Java (Pakage)

BAB V
PACKAGE DAN INTERFACE

5.1 Package
Packages dalam JAVA berarti pengelompokan beberapa class dan interface dalam satu unit. Fitur ini menyediakan mekanisme untuk mengatur class dan interface dalam jumlah banyak dan menghindari konflik pada penamaan.

5.1.1 Mengimport Package
Supaya dapat meggunakan class yang berada diluar package yang sedang dikerjakan, harus mengimport package dimana class tersebut berada. Pada dasarnya, seluruh program JAVA mengimport package java.lang.*, sehingga Anda dapat menggunakan class seperti String dan Integer dalam program meskipun belum mengimport package sama sekali.
Penulisan import package dapat dilakukan seperti dibawah ini :
import ;
Sebagai contoh, bila ingin menggunakan class Color dalam package awt, harus menuliskan import package sebagai berikut :
import java.awt.Color;
import java.awt.*;
Baris pertama menyatakan untuk mengimport class Color secara spesifik pada package, sedangkan baris kedua menyatakan mengimport seluruh class yang terkandung dalam package java.awt. Cara lain dalam mengimport package adalah dengan menuliskan referensi package secara eksplisit. Hal ini dilakukan dengan menggunakan nama package untuk mendeklarasikan object sebuah class :
java.awt.Color color;

5.1.2 Membuat Package
Untuk membuat package, dapat dilakukan dengan menuliskan :
package ;
Anggaplah kita ingin membuat package dimana class StudentRecord akan ditempatkan bersama dengan class – class yang lain dengan nama package schoolClasses.
Langkah pertama yang harus dilakukan adalah membuat folder dengan nama schoolClasses. Salin seluruh class yang ingin diletakkan pada package dalam folder ini. Kemudian tambahkan kode deklarasi package pada awal file. Sebagai contoh :
package schoolClasses;
public class StudentRecord
{
private String name;
private String address;
private int age;
}
Package juga dapat dibuat secara bersarang. Dalam hal ini Java Interpreter menghendaki struktur direktori yang mengandung class eksekusi untuk disesuaikan dengan struktur package.

5.1.3 Pengaturan CLASSPATH
Diasumsikan package schoolClasses terdapat pada direktori C:\. Langkah selanjutnya adalah mengatur classpath untuk menunjuk direktori tersebut sehingga pada saat akan dijalankan, JVM dapat mengetahui dimana class tersebut tersimpan. Sebelum membahas cara mengatur classpath, perhatikan contoh dibawah yang menandakan kejadian bila tidak mengatur classpath.
C:\schoolClasses>javac StudentRecord.java
C:\schoolClasses>java StudentRecord
Exception in thread "main" java.lang.NoClassDefFoundError: StudentRecord
(wrong name: schoolClasses/StudentRecord)
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(Unknown Source)
at java.security.SecureClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.access$100(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClassInternal(Unknown Source)
Akan didapatkan pesan kesalahan berupa NoClassDefFoundError yang berarti JAVA tidak mengetahui dimana posisi class. Hal tersebut disebabkan oleh karena class StudentRecord berada pada package dengan nama studentClasses. Jika ingin menjalankan kelas tersebut, harus memberi informasi pada JAVA bahwa nama lengkap dari class tersebut adalah schoolClasses.StudentRecord. Juga harus menginformasikan kepada JVM dimana posisi pencarian package, yang dalam hal ini berada pada direktori C:\. Untuk melakukan langkah – langkah tersebut, harus mengatur classpath.
Pengaturan classpath pada Windows dilakukan pada command prompt :
C:\schoolClasses> set classpath=C:\
dimana C:\ adalah direktori yang berisi package. Setelah mengatur classpath, dapat menjalankan program di mana saja dengan mengetikkan :
C:\schoolClasses> java schoolClasses.StudentRecord

5.2 Interface
Interface adalah jenis khusus dari blok yang hanya berisi method signature(atau constant ). Interface mendefinisikan sebuah(signature) dari sebuah kumpulan method tanpa tubuh. Interface mendefinisikan sebuah cara standar dan umum dalam menetapkan sifat-sifat dari class-class. Mereka menyediakan class-class, tanpa memperhatikan lokasinya dalam hirarki class, untuk mengimplementasikan sifat-sifat yang umum. Dengan catatan bahwa interface-interface juga menunjukkan polimorfisme, dikarenakan program dapat memanggil method interface dan versi yang tepat dari method yang akan dieksekusi tergantung dari tipe object yang melewati pemanggil method interface.

5.2.1 Kenapa Memakai Interface?
Interface digunakan jika diinginkan class yang tidak berhubungan mengimplementasikan method yang sama. Melalui interface-interface, dapat dilihat kemiripan diantara class yang tidak berhubungan tanpa membuatnya seolah-olah class yang berhubungan. Ambil contoh class Line dimana berisi method yang menghitung panjang dari garis dan membandingkan object Line ke object dari class yang sama. Sekarang, misalkan ada class yang lain yaitu MyInteger dimana berisi method yang membandingkan object MyInteger ke object dari class yang sama. Seperti yang terlihat disini, kedua class-class mempunyai method yang mirip dimana membandingkan mereka dari object lain dalam tipe yang sama, tetapi mereka tidak berhubungan sama sekali. Supaya dapat menjalankan cara untuk memastikan bahwa dua class-class ini mengimplementasikan beberapa method dengan tanda yang sama, dapat menggunakan sebuah interface untuk hal ini. Kita dapat membuat sebuah class interface, katakanlah interface Relation dimana mempunyai deklarasi method pembanding. Relasi interface dapat dideklarasikan
sebagai,
public interface Relation
{
public boolean isGreater( Object a, Object b);
public boolean isLess( Object a, Object b);
public boolean isEqual( Object a, Object b);
}
Alasan lain dalam menggunakan interface pemrograman object adalah untuk menyatakan sebuah interface pemrograman object tanpa menyatakan classnya.
Pada akhirnya, interface digunakan untuk pewarisan model jamak dimana menyediakan class untuk mempunyai lebih dari satu superclass. Pewarisan jamak tidak ditunjukkan di Java, tetapi ditunjukkan di bahasa berorientasi object lain seperti C++.

5.2.2 Interface dan Class Abstract
Berikut ini adalah perbedaan utama antara sebuah interface dan sebuah class abstract: method interface tidak punya tubuh, sebuah interface hanya dapat mendefinisikan konstanta dan interface tidak langsung mewariskan hubungan dengan class istimewa lainnya, yang didefinisikan secara independent.

5.2.3 Interface dan Class
Satu ciri umum dari sebuah interface dan class adalah pada tipe keduanya. Ini artinya bahwa sebuah interface dapat digunakan dalam tempat-tempat dimana sebuah class dapat digunakan. Sebagai contoh, diberikan class Person dan interface PersonInterface, berikut deklarasi yang benar:
PersonInterface pi = new Person();
Person pc = new Person();
Bagaimanapun, tidak dapat dibuat instance dari sebuah interface.
Contohnya:
PersonInterface pi = new PersonInterface(); //COMPILE
//ERROR!!!
Ciri umum lain adalah baik interface maupun class dapat mendefinisikan method.
Bagaimanapun, sebuah interface tidak punya sebuah kode implementasi sedangkan class memiliki salah satunya.

5.2.4 Membuat Interface
Untuk membuat interface, adalah sebagai berikut
public interface [InterfaceName]
{
//beberapa method tanpa isi
}
Sebagai contoh, akan dibuat sebuah interface yang mendefinisikan hubungan antara dua object menurut urutan asli dari object.
public interface Relation
{
public boolean isGreater( Object a, Object b);
public boolean isLess( Object a, Object b);
public boolean isEqual( Object a, Object b);
}
Penggunaan interface dilakukan dengan menggunakan kata kunci implements. Contohnya,
/**
* Class ini mendefinisikan segmen garis
*/
public class Line implements Relation
{
private double x1;
private double x2;
private double y1;
private double y2;
public Line(double x1, double x2, double y1, double y2){
this.x1 = x1;
this.x2 = x2;
this.y1 = y1;
this.y2 = y2;
}
public double getLength(){
double length = Math.sqrt((x2-x1)*(x2-x1) +(y2-y1)* (y2-y1));
return length;
}
public boolean isGreater( Object a, Object b){
double aLen = ((Line)a).getLength();
double bLen = ((Line)b).getLength();
return (aLen > bLen);
}
public boolean isLess( Object a, Object b){
double aLen = ((Line)a).getLength();
double bLen = ((Line)b).getLength();
return (aLen < alen =" ((Line)a).getLength();" blen =" ((Line)b).getLength();" alen ="="" href="http://www.ziddu.com/download/4446502/BAB5PACKAGE.pdf.html">disini

Comments

Popular posts from this blog

Membuat SMS Gateway Dengan Java dan Mysql (Making SMS GATEWAY with Java and Mysql) part1

source code bisa didownload disini mirror1 SMS (Short Messaging Services) Data SMS (Short Messaging Services) yang kita kirim atau yang kita terima sebenarnya memiliki format tersendiri untuk dapat diterjemahkan oleh sebuah mobile phone. Format atau mode yang dipakai untuk mengirim dan menerima SMS sebenarnya ada dua yaitu mode text dan mode PDU (Protocol Data Unit). Akan tetapi, sistem mode text tidak didukung oleh semua operator GSM maupun terminal. 1. Text Mode Mode ini adalah cara termudah untuk mengirim pesan. Pada mode teks pesan yang kita kirim tidak dilakukan konversi. Teks yang dikirim tetap dalam bentuk aslinya dengan panjang mencapai 160 (7 bit default alphabet) atau 140 (8 bit) karakter. Sesungguhnya, mode teks adalah hasil encode yang direpresentasikan dalam format PDU. Kelemahannya, kita tidak dapat menyisipkan gambar dan nada dering ke dalam pesan yang akan dikirim serta terbatasnya tipe encoding. 2. PDU (Protocol Data Unit) Mode PDU mode adalah format message dalam hek

Menampilkan Bilangan prima sebanyak N bilangan

Cara simpel aja kok untuk tampilin bilangan prima, nah langsung aja ke codenya: public class BilanganPrima{ /**Main method*/ public static void main(String[] args) { int jumBilPrima; int counter = 1; // Counter penghitung jumlah bilangan Prima int bilangan = 2; // Bilangan yang akan diperiksa, apakah // merupakan bilangan prima atau bukan. // Variabel ini diinisialisasi dengan 2 // karena merupakan bilangan Perima pertama. // Selanjutnya bilangan ini akan diupdate // dengan bilangan berikutnya (3,4,5,..) boolean testPrima = true; // Kondisi yang akan menyatakan // suatu bilangan sebagai Prima // atau bukan. System.out.println("\nPROGRAM MENCARI N BILANGAN PRIMA " + "PERTAMA"); System.out.println("----------------------------

Pemrograman Database Dengan Java dan Ms.Access

Download source code disini mirror1 Download data base disini mirror1 1. Membuat database dengan Access Tahapan dalam membuat database: 1. Buka Ms.Access anda 2. Pilih menu File --> New --> Blank Database 3. Pilih lokasi penyimpanan pada drive C: (anda boleh mengganti tempat penyimpanan sesuai dengan keingginan anda) 4. Buat Folder baru dengan nama Java-access 5. setelah folder tercipta, anda buat folder baru dengan nama database dalam forlder tsb. 6. Ubah file Name dengan data.mdb 2. Mendesign Tabel Untuk membuat table double klik pada Create table in Design View, seperti gambar diatas. a. tabel tbUser - ID (AUTONUMBER, PRIMARYKEY) - uSERNAME (TEXT 20) - PASSWORD (TEXT 20) b. tabel tbBarang - KODE_BRG (TEXT 6, PRIMARYKEY) - NAMA (TEXT 30) - HARGA (NUMBER) - JUMLAH (NUMBER) c. tabel tbTrans - KODE_TRANS (TEXT 10, PRIMARYKEY) - TANGGAL (DATE/TIME (SHORT DATE)) - USER (TEXT 20) d. tabel tbTransDetail - KODE_TRANS (TEXT 10) - KODE_BRG (TEXT 6) - JUMLA