Showing posts with label OOP. Show all posts
Showing posts with label OOP. Show all posts

Menentukan Nilai Akhir dengan Netbeans

Nah pada artikel kali ini Kantin Kampus akan coba sharing menentukan nilai akhir dengan menggunakan fungsi float dan integer. Seperti biasa kamu buat project baru dan class baru di netbeans.

  • Jika sudah membuat Class Java copykan code berikut didalamnya.
package javaapplication1;
* @author Mohammad Hasanaji

class Nilai {
String nim, nama;
float nilaiuts,nilaitugas,nilaiuas,pnilaiuts,pnilaitugas,pnilaiuas,nilaiakhir;
void hitungNilai()
{
pnilaiuts=0.2f*nilaiuts;
pnilaitugas=0.35f*nilaitugas;
pnilaiuas=0.45f*nilaiuas;
nilaiakhir=pnilaiuts+pnilaitugas+pnilaiuas;
}
void cetakNilai()
{
System.out.println("NIM = " +nim);
System.out.println("Nama = " +nama);
System.out.println("Nilai UTS = " +nilaiuts +" 20% :"+pnilaiuts);
System.out.println("Nilai Tugas = " +nilaitugas +" 35% :"+pnilaitugas);
System.out.println("Nilai UAS = " +nilaiuas +" 45% :"+pnilaiuas);
System.out.println("Nilai Akhir = " +nilaiakhir);
}
}
public class NilaiDemo {
public static void main(String[] args) {
Nilai nilaiku=new Nilai();

nilaiku.nim="G.131.10.0049";
nilaiku.nama="Hasanaji";
nilaiku.nilaitugas=80;
nilaiku.nilaiuas=87;
nilaiku.nilaiuts=90;

nilaiku.hitungNilai();
nilaiku.cetakNilai();

}
}
  • Maka Print Outnya seperti ini :


Ada beberapa hal yang perlu kamu sesuaikan dengan project kamu, yakni di bagian Project Name = javaapplication1 >> ganti sesuai dengan nama projectmu. dan Nama Class= NilaiDemo ganti sesuai dengan nama classmu.


Read More...

Menghitung Luas Bidang dengan Netbeans

Netbeans merupakan program aplikasi yang saya pakai untuk coding java. Naah pada artikel kali ini saya akan coba sharing menghitung luas lingkaran dan segitiga.

Untuk menghitung Luas Lingkaran pada netbeans :

  • Copykan kode berikut persis dibawah class name kamu, disini saya contohkan class name=lingkaran, maka copykan code di bawah public lass lingkaran {
public static void main (String[]args) {
int r;
float phi=3.14f, l;
r=20;
l=phi*r*r;
System.out.println("Jari-jari = "+r);
System.out.println("Phi = "+phi);
System.out.println("Luas = "+l);
}
  • Print outnya seperti berikut :








Untuk menghitung Luas Segitiga pada netbeans :
  • Copykan kode berikut persis dibawah class name kamu, disini saya contohkan class name=segitiga, maka copykan code di bawah public class segitiga {
public static void main (String[]args) {
int a,t;
float l;
a=20;
t=10;
l=0.5f*a*t;

System.out.println("Alas = "+a);
System.out.println("Tinggi = "+t);
System.out.println("Luas = "+l);

}
  • Maka Print outnya sebagai berikut :


Read More...

Tutorial Java Membuat Perhitungan Matematik

Pada tutorial kali ini saya akan mencoba sharing tentang cara sederhana menghitung dari fungsi penjumlahan, pengurangan, pembagian dan perkalian dari suatu variable dengan bahasa java.
Pada tutorial kali ini saya munggunakan aplikasi Netbeans yang bisa kamu peroleh di www.netbeans.org berikut caranya :
  • Seperti biasa silahkan buka program Netbeansnya, kemudian pilih menu File >> New Project, Pilih Java Aplication dan klik tombol Next
  • Pada Project Name beri nama sesuai dengan keinginan Anda, Kemudian Project Location = media penyimpanan project yang nantinya dibuat. jika anda ingin merubahnya silahkan klik tombol Browse dan Jika di rasa cukup klik tombol Finish.
  • Sekarang tinggal membuat class java baru, caranya klik kanan pada project kamu >> New >> java Class, pada pilihan Class Name = isikan sesuai dengan keinginan kamu. misal : Matematika kemudian klik tombol Finish
  • Sekarang Class baru sudah dibikin, langkah selanjutnya tinggal mengisinya dengan codingnya. copykan kode dibawah ini persis di bawah nama class kamu
public class Matematika {
int c=0;
void Pertambahan (int a,int b) {
c=a+b;
System.out.println("Pertambahan : "+a+" + "+b+" = "+c);
}
void Pengurangan (int a,int b) {
c=a-b;
System.out.println("Pengurangan : "+a+" - "+b+" = "+c);
}
void Perkalian (int a,int b) {
c=a*b;
System.out.println("Perkalian : "+a+" X "+b+" = "+c);
}
void Pembagian (int a,int b) {
c=a/b;
System.out.println("Pembagian : "+a+" / "+b+" = "+c);
}
}

  • Kemudian buatlah class baru dengan nama MatematikaDemo, dan copykan code berikut didalamanya
public class MatematikaDemo {
public static void main(String[] args) {
Matematika mtk = new Matematika();
mtk.Pertambahan(20, 20);
mtk.Pengurangan(10, 5);
mtk.Perkalian(10, 20);
mtk.Pembagian(20, 2);
}
}
}
  • Untuk melihat hasilnya mouse klik kanan >> Run pada Class MatematikaDemo, jika berhasil maka akan muncul seperti image dibawah ini :



Read More...

Membuat Project untuk menentukan Waktu dengan Java Netbeans

Temen-temen pembaca blog Kantin Kampus, kali ini saya akan mencoba sharing sedikit pengetahuan saya yang didapet dari kuliah, ya walaupun mudah saya harap bisa bermanfaat bagi temen-temen yang mungkin juga baru belajar java menggunakan netbeans. Dalam project ini kita bisa menentukan waktu hari, jam, menit, detik pada variable yang kita inputkan menggunakan kaidah fungsi this.

Untuk lebih jelasnya mungkin bisa menyimak penjelasan singkat berikut ini :

  • Seperti biasa silahkan buka program Netbeansnya, kemudian pilih menu File >> New Project, Pilih Java Aplication dan klik tombol Next


  • Pada Project Name beri nama sesuai dengan keinginan Anda, Kemudian Project Location = media penyimpanan project yang nantinya dibuat. jika anda ingin merubahnya silahkan klik tombol Browse dan Jika di rasa cukup klik tombol Finish.


  • Sekarang tinggal membuat class java baru, caranya klik kanan pada project kamu >> New >> java Class, pada pilihan Class Name = isikan sesuai dengan keinginan kamu. misal : waktu kemudian klik tombol Finish


  • Sekarang Class baru sudah dibikin, langkah selanjutnya tinggal mengisinya dengan codingnya. copykan kode dibawah ini persis di bawah nama class kamu, misal class name=waktu
public class waktu {
int dt, hari,jam,menit,detik;
public detik(int dt)
{
this.dt=dt;
this.hari=(this.dt/86400);
this.jam=(this.dt % 86400)/3600;
this.menit=((this.dt % 86400) % 3600)/60;
this.detik=((this.dt % 86400) % 3600) % 60;

}
public void cetakwaktu (){
System.out.println("Masukkan detik = "+dt);
System.out.println("Hari = "+hari);
System.out.println("Jam = "+jam);
System.out.println("Menit = "+menit);
System.out.println("Detik = "+detik);
}

}
  • Kemudian buatlah class baru dengan nama waktudemo dan copykan script berikut pada class waktudemo
public class waktudemo {
public static void main(String[] args) {
detik detik1 = new detik (180183);
detik1.cetakwaktu();
}
}
  • Untuk melihat hasilnya klik kanan >> RUN pada class waktudemo


Read More...

Pengenalan & Sejarah Java

Java adalah bahasa pemrograman yang dapat dijalankan di berbagai komputer termasuk telepon genggam. Bahasa ini awalnya dibuat oleh James Gosling saat masih bergabung di Sun Microsystems saat ini merupakan bagian dari Oracle dan dirilis tahun 1995. Bahasa ini banyak mengadopsi sintaksis yang terdapat pada C dan C++ namun dengan sintaksis model objek yang lebih sederhana serta dukungan rutin-rutin aras bawah yang minimal. Aplikasi-aplikasi berbasis java umumnya dikompilasi ke dalam p-code (bytecode) dan dapat dijalankan pada berbagai Mesin Virtual Java (JVM). Java merupakan bahasa pemrograman yang bersifat umum/non-spesifik (general purpose), dan secara khusus didisain untuk memanfaatkan dependensi implementasi seminimal mungkin. Karena fungsionalitasnya yang memungkinkan aplikasi java mampu berjalan di beberapa platform sistem operasi yang berbeda, java dikenal pula dengan slogannya, "Tulis sekali, jalankan di mana pun". Saat ini java merupakan bahasa pemrograman yang paling populer digunakan, dan secara luas dimanfaatkan dalam pengembangan berbagai jenis perangkat lunak aplikasi ataupun aplikasi berbasis web.

Sejarah perkembangan Java
Bahasa pemrograman Java pertama lahir dari The Green Project, yang berjalan selama 18 bulan, dari awal tahun 1991 hingga musim panas 1992. Proyek tersebut belum menggunakan versi yang dinamakan Oak. Proyek ini dimotori oleh Patrick Naughton, Mike Sheridan, James Gosling dan Bill Joy, beserta sembilan pemrogram lainnya dari Sun Microsystems. Salah satu hasil proyek ini adalah maskot Duke yang dibuat oleh Joe Palrang.

Pertemuan proyek berlangsung di sebuah gedung perkantoran Sand Hill Road di Menlo Park. Sekitar musim panas 1992 proyek ini ditutup dengan menghasilkan sebuah program Java Oak pertama, yang ditujukan sebagai pengendali sebuah peralatan dengan teknologi layar sentuh (touch screen), seperti pada PDA sekarang ini. Teknologi baru ini dinamai "*7" (Star Seven).

Setelah era Star Seven selesai, sebuah anak perusahaan Tv kabel tertarik ditambah beberapa orang dari proyek The Green Project. Mereka memusatkan kegiatannya pada sebuah ruangan kantor di 100 Hamilton Avenue, Palo Alto.
Perusahaan baru ini bertambah maju: jumlah karyawan meningkat dalam waktu singkat dari 13 menjadi 70 orang. Pada rentang waktu ini juga ditetapkan pemakaian Internet sebagai medium yang menjembatani kerja dan ide di antara mereka. Pada awal tahun 1990-an, Internet masih merupakan rintisan, yang dipakai hanya di kalangan akademisi dan militer.

Mereka menjadikan perambah (browser) Mosaic sebagai landasan awal untuk membuat perambah Java pertama yang dinamai Web Runner, terinsipirasi dari film 1980-an, Blade Runner. Pada perkembangan rilis pertama, Web Runner berganti nama menjadi Hot Java.

Pada sekitar bulan Maret 1995, untuk pertama kali kode sumber Java versi 1.0a2 dibuka. Kesuksesan mereka diikuti dengan untuk pemberitaan pertama kali pada surat kabar San Jose Mercury News pada tanggal 23 Mei 1995.

Sayang terjadi perpecahan di antara mereka suatu hari pada pukul 04.00 di sebuah ruangan hotel Sheraton Palace. Tiga dari pimpinan utama proyek, Eric Schmidt dan George Paolini dari Sun Microsystems bersama Marc Andreessen, membentuk Netscape.

Nama Oak, diambil dari pohon oak yang tumbuh di depan jendela ruangan kerja "Bapak Java", James Gosling. Nama Oak ini tidak dipakai untuk versi release Java karena sebuah perangkat lunak lain sudah terdaftar dengan merek dagang tersebut, sehingga diambil nama penggantinya menjadi "Java". Nama ini diambil dari kopi murni yang digiling langsung dari biji (kopi tubruk) kesukaan Gosling. Konon kopi ini berasal dari Pulau Jawa. Jadi nama bahasa pemrograman Java tidak lain berasal dari kata Jawa (bahasa Inggris untuk Jawa adalah Java).

Versi Awal
Versi awal Java ditahun 1996 sudah merupakan versi release sehingga dinamakan Java Versi 1.0. Java versi ini menyertakan banyak paket standar awal yang terus dikembangkan pada versi selanjutnya:
  • java.lang: Peruntukan kelas elemen-elemen dasar.
  • java.io: Peruntukan kelas input dan output, termasuk penggunaan berkas.
  • java.util: Peruntukan kelas pelengkap seperti kelas struktur data dan kelas kelas penanggalan.
  • java.net: Peruntukan kelas TCP/IP, yang memungkinkan berkomunikasi dengan komputer lain menggunakan jaringan TCP/IP.
  • java.awt: Kelas dasar untuk aplikasi antarmuka dengan pengguna (GUI)
  • java.applet: Kelas dasar aplikasi antar muka untuk diterapkan pada penjelajah web.
Kelebihan
  • Multiplatform. Kelebihan utama dari Java ialah dapat dijalankan di beberapa platform / sistem operasi komputer, sesuai dengan prinsip tulis sekali, jalankan di mana saja. Dengan kelebihan ini pemrogram cukup menulis sebuah program Java dan dikompilasi (diubah, dari bahasa yang dimengerti manusia menjadi bahasa mesin / bytecode) sekali lalu hasilnya dapat dijalankan di atas beberapa platform tanpa perubahan. Kelebihan ini memungkinkan sebuah program berbasis java dikerjakan diatas operating system Linux tetapi dijalankan dengan baik di atas Microsoft Windows. Platform yang didukung sampai saat ini adalah Microsoft Windows, Linux, Mac OS dan Sun Solaris. Penyebanya adalah setiap sistem operasi menggunakan programnya sendiri-sendiri (yang dapat diunduh dari situs Java) untuk meninterpretasikan bytecode tersebut.
  • OOP (Object Oriented Programming - Pemrogram Berorientasi Objek) yang artinya semua aspek yang terdapat di Java adalah Objek. Java merupakan salah satu bahasa pemrograman berbasis objek secara murni. Semua tipe data diturunkan dari kelas dasar yang disebut Object. Hal ini sangat memudahkan pemrogram untuk mendesain, membuat, mengembangkan dan mengalokasi kesalahan sebuah program dengan basis Java secara cepat, tepat, mudah dan terorganisir. Kelebihan ini menjadikan Java sebagai salah satu bahasa pemograman termudah, bahkan untuk fungsi fungsi yang advance seperti komunikasi antara komputer sekalipun.
  • Perpustakaan Kelas Yang Lengkap, Java terkenal dengan kelengkapan library/perpustakaan (kumpulan program program yang disertakan dalam pemrograman java) yang sangat memudahkan dalam penggunaan oleh para pemrogram untuk membangun aplikasinya. Kelengkapan perpustakaan ini ditambah dengan keberadaan komunitas Java yang besar yang terus menerus membuat perpustakaan-perpustakaan baru untuk melingkupi seluruh kebutuhan pembangunan aplikasi.
  • Bergaya C++, memiliki sintaks seperti bahasa pemrograman C++ sehingga menarik banyak pemrogram C++ untuk pindah ke Java. Saat ini pengguna Java sangat banyak, sebagian besar adalah pemrogram C++ yang pindah ke Java. Universitas-universitas di Amerika Serikat juga mulai berpindah dengan mengajarkan Java kepada murid-murid yang baru karena lebih mudah dipahami oleh murid dan dapat berguna juga bagi mereka yang bukan mengambil jurusan komputer.
  • Pengumpulan sampah otomatis, memiliki fasilitas pengaturan penggunaan memori sehingga para pemrogram tidak perlu melakukan pengaturan memori secara langsung (seperti halnya dalam bahasa C++ yang dipakai secara luas).

Kekurangan
  • Tulis sekali, jalankan di mana saja - Masih ada beberapa hal yang tidak kompatibel antara platform satu dengan platform lain. Untuk J2SE, misalnya SWT-AWT bridge yang sampai sekarang tidak berfungsi pada Mac OS X.
  • Mudah didekompilasi. Dekompilasi adalah proses membalikkan dari kode jadi menjadi kode sumber. Ini dimungkinkan karena kode jadi Java merupakan bytecode yang menyimpan banyak atribut bahasa tingkat tinggi, seperti nama-nama kelas, metode, dan tipe data. Hal yang sama juga terjadi pada Microsoft .NET Platform. Dengan demikian, algoritma yang digunakan program akan lebih sulit disembunyikan dan mudah dibajak/direverse-engineer.
  • Penggunaan memori yang banyak. Penggunaan memori untuk program berbasis Java jauh lebih besar daripada bahasa tingkat tinggi generasi sebelumnya seperti C/C++ dan Pascal (lebih spesifik lagi, Delphi dan Object Pascal). Biasanya ini bukan merupakan masalah bagi pihak yang menggunakan teknologi terbaru (karena trend memori terpasang makin murah), tetapi menjadi masalah bagi mereka yang masih harus berkutat dengan mesin komputer berumur lebih dari 4 tahun.
 Tahap Kompilasi Java
  1. Tulis / Ubah. Pemrogram menulis program dan menyimpannya di media dalam bentuk berkas '.java'.
  2. Kompilasi. Pengkompilasi membentuk bytecodes dari program menjadi bentuk berkas '.class'.
  3. Muat. Pemuat kelas memuat bytecodes ke memori.
  4. Verifikasi. Peng-verifikasi memastikan bytecodes tidak mengganggu sistem keamanan Java.
  5. Jalankan. Penerjemah menerjemahkan bytecodes ke bahasa mesin.tidak bisa di pakai‘’
Integrated Development Environment
  • Banyak pihak telah membuat IDE (Integrated Development Environment - Lingkungan Pengembangan Terintegrasi) untuk Java. Yang populer saat ini (Juli 2006) antara lain:
  • Dr. Java, program gratis yang dikembangkan oleh Universitas Rice, Amerika Serikat
  • BlueJ, program gratis yang dikembangkan oleh Universitas Monash, Australia
  • NetBeans (open source- Common Development and Distribution License (CDDL)), NetBeans disponsori Sun Microsystems, dan versi terkininya memilki Matisse, sebuah GUI Editor yang menurut pendapat umum merupakan yang terbaik.
  • Eclipse JDT (open source- Eclipse Public License), Eclipse dibuat dari kerja sama antara perusahaan-perusahaan anggota 'Eclipse Foundation' (beserta individu-individu lain). Banyak nama besar yang ikut dalam 'Eclipse Foundation', termasuk IBM, BEA, Intel, Nokia, Borland. Eclipse bersaing langsung dengan Netbeans IDE. Plugin tambahan pada Eclipse jauh lebih banyak dan bervariasi dibandingkan IDE lainnya.
  • IntelliJ IDEA (commercial, free 30-day trial)
  • Oracle JDeveloper (free)
  • Xinox JCreator (ada versi berbayar maupun free)
JCreator ditulis dalam C/C++ sehingga lebih cepat (dan menggunakan memori lebih sedikit) dari kebanyakan IDE.


Read More...

Koneksi Java dan MySQL

Untuk bisa menggunakan database pada suatu aplikasi Java dibutuhkan sebuah driver yang berfungsi sebagai konektor antara Java dan aplikasi database yang akan digunakan. Sehingga pengguna aplikasi bisa memasukkan data transaksi barang ke dalam database langsung dari aplikasi penjualan yang digunakan.

Pada penulisan ini penulis menggunakan MySQL dalam pembuatan databasenya sehingga memerlukan alat koneksi (driver) yang akan menghubungkan aplikasi dengan data yang ada pada MySQL. Driver yang digunakan adalah MySQL ODBC 3.51 Driver. Penggunaan driver tersebut dengan membuat sebuah kelas koneksi, adapun penggalan programnya sebagai berikut:

import java.sql.*;



public class Koneksi {

public Koneksi() {

}



public Connection bukaKoneksi() throws SQLException {

Connection con = null;

try {

Class.forName(“sun.jdbc.odbc.JdbcOdbcDriver”);

con=DriverManager.getConnection(“jdbc:odbc:SIP”,”",”");

return con;

}

catch (SQLException se) {

System.out.println(“No Connection Open”);

return null;

}

catch (Exception ex) {

System.out.println(“Cound not open connection”);

return null;

}

}

}

Dalam driver diatas dimaksudkan bahwa kita akan mengkoneksikan aplikasi penjualan ini dengan database yang bernama “SIP”.
  1. Seteleh kelas koneksi selesai dibuat. Selanjutnya penulis akan membahas pengaturan dari penggunakan konektor tersebut. Adapun langjkah-langkahnya sebagai berikut :
  2. Pada menu Start di windows pilih Control Panel, kemudian pilih menu Administrasi Tools, lalu pilih Data Sources (ODBC).
  3. Pada pilihan User DSN, pilih menu Add di sebelah kanan, lalu pilih MySQL ODBC 3.5.1 Driver, lalu Finish. Maka akan muncul jendela seperti ini.
  4. Pada Data Source Name diisi nama “SIPDB”, Server diisi “localhost” dan Database diisi dengan nama database yang akan kita koneksikan yaitu “SIP”. Gunakan pilihan Test untuk mengetahui koneksi berhasil atau tidak, kalau sudah berhasil klik Ok.
  5. Maka selesai sudah proses pengkoneksian aplikasi penjualan ini denagan database SIP pada MySQL.
  6. Selanjutnya pindah ke menu Connect Option, pada field Port isikan nilai 3306 yang merupakan nilai default dari port.

Demikian cara mengkoneksikan database MySQL dan bahasa pemrograman Java. Cara seperti sudah sangat umum digunakan oleh programer tingkat menengah kebawah. Semoga bermanfaat bagi teman-teman semua.


Read More...

Membuat Program Bilangan Berpangkat Pada Bahasa Java

Java adalah Sebuah Bahasa pemrograman segala umat, atau disebut juga bahasa pemrograman multi-platform. Mengapa?
Karena jika bahasa pemrogram yang lain di built dalam sebuah platform (Operating System) tertentu. Maka hanya akan jalan pada OS tersebut.
Namun jika bahasa Java ini di built, dia akan dapat berjalan pada seluruh platform (Operating System) asalkan Operating Sistem tersebut memiliki JVM (Java Vitrtual Machine)
Dalam Kesempatan ini saya akan membagikan source code untuk membuat penghitungan sebuah bilangan berpangkat. Misalnya 2 pangkat 5 dan lain-lain.
Berikut source codenya. Semoga berguna.
public class pangkat {
static int x;
static int y;
static int hasil;

public static void process() {
x = 5;
y = 3;
hasil = 0;

hasil = x*x*x;
System.out.println("hasil = " + hasil);
}
public static void main(String[] Args) {
process();
}
}
Read More...

Pemrograman Menggunakan Teknik Inheritance & Polymorphism

Inheritance atau pewarisan pada pemrograman berorientasi objek merupakan suatu hubungan dua buah kelas atau lebih. dalam hal ini ada kelas yang memiliki atribut method yang sama dengan kelas lainnya beserta atribut dan metode tambahan yang merupakan sifat khusus kelas yang menjadi turunannnya.

Pada dasarnya, teknik inheritance digunakan untuk membuat suatu class yang masih memiliki sifat atau spesifikasi dari class induknya / superclass.

Contoh program menggunakan teknik inheritance :
class CetakDataTipe {
public void CetakData(String Cetak) {
System.out.println(Cetak);
}
public void CetakData(int Cetak) {
System.out.println(Cetak);
}
public void CetakData(double Cetak) {
System.out.println(Cetak);
}
public void CetakData(char Cetak) {
System.out.println(Cetak);
}
}

public class Polymorphism {
public static void main(String[] args)
{
CetakDataTipe data = new CetakDataTipe();
System.out.print("Cetak Data Tipe String : ");
data.CetakData("Sumatra");
System.out.print("Cetak Data Tipe Integer : ");
data.CetakData(1989);
System.out.print("Cetak Data Tipe Double : ");
data.CetakData(16.5 / 2);
System.out.print("Cetak Data Tipe Char : ");
data.CetakData('N');
}
}




Polymorphism adalah teknik pemrograman yang memungkinkan programmer menyampaikan pesan tertentu keluar dari hirarki obyeknya, dimana obyek yang berbeda memberikan tanggapan/respon terhadap pesan yang sama sesuai dengan sifat masing-masing obyek.

Atau Polymorphic 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 sifat yang berbeda.

Contoh program Java menggunakan teknik Polymorphism :
public class DataMahasiswa extends Mahasiswa{

public void printNama(){

System.out.println("Data Mahasiswa Gunadarma Teknik Informatika 2IA08");

Super.printNama();
}
}

Simpan dengan nama Main.java
public class Main{

public static void main(String[] args]) {
DataMahasiswa mhs = new DataMahasiswa();
mhs.setNPM("50410794");
mhs.setNama("Angga Erwin Arifin");

mhs.printNPN();
mhs.printNama();

}
}
Read More...

Contoh Program Menggunakan JComboBox dan JList

Tampilan program TestJComboBox :

 Source code:
import java.awt.Font;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.*;

public class TestJComboBox implements ActionListener {

private JComboBox combobox1, combobox2;
private JButton button;
//private JLabel label;
private JTextField label;

//Konstruktor dari class TestJComboBox, yang nantinya akan digunakan pada
// method main()
TestJComboBox() {
//Komponen combo box untuk pilihan pertama
combobox1 = new JComboBox();
combobox1.setLocation(10, 10);
combobox1.setSize(180, 20);
combobox1.addItem("Pilih Salah Satu");
combobox1.addItem("Buah");
combobox1.addItem("Sayur");
//Ditambahkan ActionListener, berguna saat ada pemilihan salah satu item
combobox1.addActionListener(this);
//Komponen combo box untuk pilihan kedua yang akan muncul pilihannya
// saat user sudah memilih salah satu pilihan dari combobox pertama yaitu
// antara buah atau sayur
combobox2 = new JComboBox();
combobox2.setLocation(10, 40);
combobox2.setSize(180, 20);
//Komponen button untuk menampilkan pilihan user untuk combobox kedua
// yang nantinya ditampilkan pada JTextField label
button = new JButton("Pilih");
button.setLocation(10, 70);
button.setSize(180, 20);
button.addActionListener(this);
//Komponen JTextField yang berfungsi seperti label, cenderung saya pilih
// karena adanya borderline tanpa perlu membuat class Border lebih dahulu
label = new JTextField(20);
label.setLocation(10, 100);
label.setSize(180, 20);
label.setFont(new Font("Courier New", Font.PLAIN, 14));
//Dilakukan penyettingan supaya textfield tidak bisa diubah2 oleh user
label.setEditable(false);
}

//Method untuk menampilkan frame/tampilan utama program dengan menggunakan
// class JFrame
public void createAndShowGUI() {
JFrame.setDefaultLookAndFeelDecorated(false);
JFrame frame = new JFrame("Demo JComboBox");
frame.setLayout(null);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.getContentPane().add(combobox1);
frame.getContentPane().add(combobox2);
frame.getContentPane().add(label);
frame.getContentPane().add(button);
frame.setBounds(0, 0, 215, 180);
frame.setLocationRelativeTo(null);
frame.setVisible(true);
}

//Method utama pada class ini
public static void main(String[] args) {
javax.swing.SwingUtilities.invokeLater(new Runnable() {
//Terima jadi saja, intinya pake SwingUtilities dan menggunakan class
// Runnable sehingga saya dapat menggunakan method run(), anggap saja
// blok kode disini sebagai template

@Override
public void run() {
//Membuat objek TestJComboBox sesuai dengan konstruktor sebelumnya
TestJComboBox prog = new TestJComboBox();
//Memanggil method createAndShowGUI() untuk menampilkan frame utama
prog.createAndShowGUI();
}
});
}

@Override
//Method utama untuk menangani adanya event dari user seperti pemilihan combo
// box ataupun penekanan button
public void actionPerformed(ActionEvent e) {
//Dicari varible yang berisi pilihan dari user untuk combobox1
Object select1 = combobox1.getSelectedItem();
//Jika event yang terjadi adalah adanya pemilihan item dari combobox1
if (e.getSource() == combobox1) {
if (select1 == "Buah") {
//Jika yang dipilih dari combobox1 adalah buah
//Hapus terlebih dahulu semua item pada combobox2
combobox2.removeAllItems();
//Tambahkan pilihan item untuk buah
combobox2.addItem("Apel");
combobox2.addItem("Jeruk");
combobox2.addItem("Mangga");
combobox2.addItem("Anggur");
combobox2.addItem("Pir");
} else if (select1 == "Sayur") {
//Jika yang dipilih dari combobox1 adalah sayur
//Hapus terlebih dahulu semua item pada combobox2
combobox2.removeAllItems();
//Tambahkan pilihan item untuk sayur
combobox2.addItem("Timun");
combobox2.addItem("Bayam");
combobox2.addItem("Kangkung");
} else {
//Jika yang dipilih bukan keduanya atau "Pilih Salah Satu"
combobox2.removeAllItems();
}
//Jika event adalah adanya penekanan tombol button
} else if (e.getSource() == button) {
if (select1 != "Pilih Salah Satu") {
//Jika user telah memilih salah satu dari buah atau sayur
//Dicari variable select2 yang berasal dari combobox2 untuk ditampilkan
// pada label
Object select2 = combobox2.getSelectedItem();
//Dilakukan casting menjadi tipe String terlebih dahulu sebelum dikonkat
label.setText((String) select2 + " pilihan saya!");
} else {
//Jika user tidak memilih keduanya dan memilih item "Pilih Salah Satu"
label.setText("Pilih Salah Satu!");
}
}
}
}




Tampilan program TestJList :


import java.awt.Font;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.*;
import javax.swing.event.ListSelectionEvent;
import javax.swing.event.ListSelectionListener;

public class TestJList implements ActionListener, ListSelectionListener {

private JList list;
//Untuk demo kali ini saya menggunakan class DefaultListModel sebagai input
// parameter dari JList, daripada menggunakan array, class tersebut lebih
// mudah ketika user ingin menambahkan atau menghapus salah satu list
private DefaultListModel listmodel;
//Disini saya menggunakan JScrollPane untuk menampung JList, sehingga ketika
// list sudah sangat panjang akan muncul scoller untuk dapat melihat list
// dari awal sampai akhir
private JScrollPane scroll;
//private JLabel label;
private JTextField label;
private JTextField textfield;
private JButton button1, button2;

//Konstruktor dari class TestJList, yang nantinya akan digunakan pada
// method main()
TestJList() {
//Komponen JTextField yang berfungsi seperti label, cenderung saya pilih
// karena adanya borderline tanpa perlu membuat objek Border lebih dahulu
label = new JTextField("Testing");
label.setLocation(180, 10);
label.setSize(100, 20);
label.setFont(new Font("Courier New", Font.PLAIN, 14));
label.setEditable(false);
//Membuat JList dengan membuat objek DefaultListModel tersebut dahulu
listmodel = new DefaultListModel();
list = new JList(listmodel);
//List yang saya buat disini hanya bisa dipilih satu element saja
list.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
//Objek list saya beri ListSelectionListener sehingga dapat diterima event
// saat user memilih salah satu list
list.addListSelectionListener(this);
//Pada awal list, saya beri dua item/element, untuk menambahkan element
// digunakan method addElement pada objek list yang telah di-casting
// menjadi tipe DefaultListModel
((DefaultListModel) list.getModel()).addElement("Satu");
((DefaultListModel) list.getModel()).addElement("Dua");
//Membuat objek scroller untuk menampung JList
scroll = new JScrollPane(list);
scroll.setLocation(10, 10);
scroll.setSize(150, 160);
//Objek textfield ini akan menerima string dari user sebagai element/item
// yang akan ditambahkan oleh user
textfield = new JTextField(10);
textfield.setLocation(180, 40);
textfield.setSize(100, 20);
//Objek button1 adalah button yang digunakan untuk menambahkan element list
// yang baru
button1 = new JButton("Tambah");
button1.setLocation(180, 70);
button1.setSize(100, 20);
button1.addActionListener(this);
//Objek button1 adalah button yang digunakan untuk menghapus element list
// yang baru
button2 = new JButton("Hapus");
button2.setLocation(180, 100);
button2.setSize(100, 20);
button2.addActionListener(this);
}

//Method untuk menampilkan frame/tampilan utama program dengan menggunakan
// class JFrame
public void createAndShowGUI() {
JFrame.setDefaultLookAndFeelDecorated(false);
JFrame frame = new JFrame("Demo JList");
frame.setLayout(null);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.getContentPane().add(scroll);
frame.getContentPane().add(label);
frame.getContentPane().add(button1);
frame.getContentPane().add(button2);
frame.getContentPane().add(textfield);
frame.setBounds(0, 0, 320, 230);
frame.setLocationRelativeTo(null);
frame.setVisible(true);
}

public static void main(String[] args) {
javax.swing.SwingUtilities.invokeLater(new Runnable() {
//Terima jadi saja, intinya pake SwingUtilities dan menggunakan class
// Runnable sehingga saya dapat menggunakan method run(), anggap saja
// blok kode disini sebagai template

@Override
public void run() {
//Membuat objek TestJList sesuai dengan konstruktor sebelumnya
TestJList prog = new TestJList();
//Memanggil method createAndShowGUI() untuk menampilkan frame utama
prog.createAndShowGUI();
}
});
}

@Override
//Method utama untuk menangani adanya event dari user yaitu penekanan button
public void actionPerformed(ActionEvent e) {
if (e.getSource() == button1) {
//Apabila user menekan button1 untuk menambahkan element list yang baru
String text = textfield.getText();
//Didapatkan variable text yang berasal dari textfield yang dibuat
// sebelumnya
if (!text.equals("")) {
//Jika isi dari textfield tidak kosong
//Untuk menambahkan sama seperti sebelumnya, tinggal memasukkan variable
// text pada input method addElement
((DefaultListModel) list.getModel()).addElement(text);
} else {
//Jika textfield kosong, ditampilkan pada label tulisan "Tulis List!"
label.setText("Tulis List!");
}
} else if (e.getSource() == button2) {
//Apabila user menekan button1 untuk menghapus element list yang baru
//Dicari terlebih dahulu index dari element list yang akan dihapus
int index = list.getSelectedIndex();
if (index != -1) {
//Jika user sudah memilih salah satu item/element pada JList
label.setText("Deleted");
//Untuk menghapus salah satu element dapat digunakan method remove(),
// sama seperti saat menambahkan element, objek list di-casting
// terlebih dahulu menjadi tipe DefaultListModel
((DefaultListModel) list.getModel()).remove(index);
} else {
//Jika user belum memilih salah satu element, ditampilkan pada label
// pesan "Pilih List!"
label.setText("Pilih List!");
}
}
}

@Override
//Method ini bekerja saat user memilih salah satu list (dalam hal ini di-klik)
// sehingga salah satu element list diberi warna background berbeda, silahkan
// menjalankan program untuk lebih jelasnya
public void valueChanged(ListSelectionEvent e) {
//Ketika user menekan salah satu list, maka method ini akan bekerja dan
// karena hanya ada dari list sebenarnya percabangan (if) ini bisa dibuang
if (e.getSource() == list) {
//Sebelumnya dicari terlebih dahulu element mana yang telah dipilih
int index = list.getSelectedIndex();
//Jika tidak terjadi event penghapusan element list, maka akan ditampikan
// pada label item/element yang dipilih
if (index != -1) {
String listtext = (String) list.getModel().getElementAt(index);
label.setText(listtext);
}
}
}
}
Read More...

OOP Pada PHP

Kelas / Class
Setiap pendefinisain/deklarasi sebuah kelas pada PHP menggunakan class yang diikuti nama kelas, kemudian diikuti tanda '{' dan diakhiri dengan tanda '}' kita bisa memberikan sembarang nama sebuah kelas, selama tidak sama dengan fungsi yang dimiliki PHP. contoh, class print. nama kelas print tidak bisa kita gunakan, karena print adalah fungsi dimiliki oleh PHP. Kita bisa memuat/mendefinisikan properti kelas dan methode kelas di antara tanda "kurung kurawal". variable $this adalah sebuah variable samaran yang digunakan untuk memanggil sebuah propertis atau methode sebuah kelas. Contoh berikut akan lebih memperjelas tentang kelas pada php
class orang{#kelas orang
#Properties Class
var $nama;
var $umur;
var $tinggi;
var $berat;

function orang (){#Constructor
echo "Initialisation Object";
}

function get_nama(){
return $this->nama;
}
}#end class

pada contoh di atas saya membuat sebuah kelas dengan nama orang. Kelas tersebut memiliki propertis nama, umur, tinggi dan berat. Fungsi orang adalah sebuah constructor dari kelas orang, contstructor tersebut akan dijalankan ketika kita membuat sebuah object orang.

Properti kelas
Properti kelas kelas merupakan sebuah identitas/karakter khusus sebuah kelas, contoh Orang pasti memilki tinggi dan berat. Tinggi dan berat tersebut adalah sebuat properti. pada contoh kelas orang di atas mempunyai properti nama, umur, tinggi dan berat. Untuk memberikan nilai dari properti sebuah kelas kita tidak bisa menggunakan cara langsung, seperti memberikan nilai pada sebuah varible. Contoh, misalkan kita akan memberikan nilai pada variable properti nama dengan value "Rakhmad maulidi", untuk memberikan value pada properti kelas kita menggunakan variable $this, Untuk mengakses/menggambil value properti sebuah kelas juga menggunakan variable $this Contoh berikut akan lebih memperjelas tentang cara memberikan value properti kelas pada PHP

$nama="Kantin Kampus";//
$this->nama="Kantin";//

echo "$nama";//result : Kantin Kampus
echo $this->nama;//result : Kantin
cara di atas bisa kita jadikan dalam bentuk function berikut :
function set_nama($nama){
$this->nama=$nama;
}

function get_nama(){
return $this->nama;
}

Methode/Behavior Kelas
Methode/Behavior Kelas adalah fungsi-fungsi apa yang bisa dilakukan oleh object. Misalkan pada kelas orang bisa melakukan makan, tidur, berjalan. Contoh berikut akan lebih memperjelas tentang cara memberikan methode/behavior kelas pada PHP
function makan($is_makan)
{
if ($is_makan){
$mkn = "sedang makan";}
else{
$mkn ="sudah makan";
}
return $mkn;
}

function tidur($is_tidur)
{
if ($is_tidur){
$tdr= "sedang tidur";}
else{
$tdr="sudah bangun";
}
return $tdr;
}

Nah, setelah intermezzo yang saya sampaikan di atas, sekarang waktunya coding yang lebih kongkrit tentang OOP pada PHP. Untuk membuat object dari sebuah kelas kita menggunakan notasi new, contoh :
$rahmat = new orang;
$andi = new orang;
$ali = new orang;

Pada contoh tersebut saya membuat tiga object orang yaitu $rahmad, $andi dan $ali. Masing object akan memiliki properti sendiri-sendiri, misalkan saya akan membeikan value "Rakhmad Idiluam" dari properti nama dari object $rahmad, dan pada object lainnya:
$rahmad->set_nama("Rakhmad Maulidi");
$andi->set_nama("Andi Malarangeng");
$ali ->set_nama("Ali bin Abu Tholib");

Untuk mendapatkan value dari masing properti name dari object kita bisa melakukan cara berikut:
$rahmad->get_nama();
$andi->get_nama();
$ali->get_nama();
untuk penggunaan methode atau behavior pada object kita bisa melakukan cara berikut:
$rahmad->tidur(true);
$andi->makan(true);
$ali->get_nama(false);



Read More...

OOP (Object Oriented Programming)

OOP adalah paradigma pemrograman yang cukup dominan saat ini, karena mampu memberikan solusi kaidah pemrograman modern. Meskipun demikian, bukan berarti bahwa pemrograman prosedural sudah tidak layak lagi .

OOP diciptakan karena dirasakan masih adanya keterbatasan pada bahasa pemrograman tradisional. Konsep dari OOP sendiri adalah, semua pemecahan masalah dibagi ke dalam objek. Dalam OOP data dan fungsi-fungsi yang akan mengoperasikannya digabungkan menjadi satu kesatuan yang dapat disebut sebagai objek. Proses perancangan atau desain dalam suatu pemrograman merupakan proses yang tidak terpisah dari proses yang mendahului, yaitu analisis dan proses yang mengikutinya. Pembahasan mengenai orientasi objek tidak akan terlepas dari konsep objek seperti inheritance atau penurunan, encapsulation atau pembungkusan,
dan polymorphism atau kebanyakrupaan. Konsep-konsep ini merupakan fundamental dalam orientasi objek yang perlu sekali dipahami serta digunakan dengan baik, dan menghindari penggunaannya yang tidak tepat.

Class dan Objek
Dalam lingkungan program berorientasi objek, pemrogram mendefinisikan class secara statik. Pada saat run-time, class akan diinstantiasi menjadi objek. Ada pun objek yang merupakan instantiasi dari suatu class selalu dapat diacu melalui current objek, apa pun nama instant-nya.

Dapat didefinisikan bahwa class merupakan struktur data dari suatu objek, lebih jelasnya adalah sebuah bentuk dasar atau blueprint yang mendefinisikan variabel method umum pada semua objek dari beberapa macam. Objek sendiri adalah kumpulan variabel dan fungsi yang dihasilkan dari template khusus atau disebut class. objek adalah elemen pada saat run-time yang akan diciptakan, dimanipulasi, dan dihancurkan ketika eksekusi. Ada pun class merupakan definisi statik dari himpunan objek yang mungkin diciptakan sebagai instantiasi dari class. Sederhananya adalah kumpulan objek yang mempunyai atribut sama. Dengan demikian, pada saat run-time maka yang kita miliki adalah objek.
Class biasany dibuat seperti ini
Class nama_classnya{
//berisi sekumpulan fungsi,variabel dan
//statement-statement lainnya
}
Agar class tersebut dpt digunakan maka perlu memiliki atribut-atribut contonya dalam php/c++
//di php
class NamaClass {
var $atribut1;
var $atribut2;
function operasi(){}
}
//di c++
class NamaClass {
public:
int atribut1;
int atribut2;
int operasi(){retun nilai_int}
};
Pada bahasa pemerograman web lain ex. Java file harus disimpan dengan nama class berbeda dengan PHP kita dapat memberikan nama yang tidak mesti sama dengan nama classnya

Inheritance
Inheritance atau pewarisan adalah kalimat yang pasti ada di dalam pemerograman berorientasi objek disebut juga dengan istilah reusable.
Ketika kita menggunakan kembali atau mengganti method dari class yang sudah ada, serta ketika menambahkan field instant dan method baru, maka pada saat itulah Anda bekerja dengan inheritance. Konsep ini merupakan konsep yang fundamental dalam orientasi objek dan harus digunakan dengan baik, ada beberapa macam Inheritance atau pewarisan yang ada di dalam OOP Single Inheritance dan Multple Inheritance
- Single Inheritance
 

- Multiple Inheritance

dalam penggunaan inheritance class Induk akan mewariskan semua atribut yang ia miliki sehingga class bawahnya akan memilki atribut yang sama dengan class induk, bahkan dapat memilki kebabasan untuk memilki atribut berbeda dengan class induknya berikut ilustrasi dalam php.
Catatan :
sampai sekarang PHP belum mendukung multiple inheritance seperti C++ walapun PHP dan c/c++ begitu banyak kemiripannya, dan perubahan PHP versi 5 ditekankan pada OOP salah satunya adalah beberapa tambahan untuk kemampuan inheritance
/* inheritance.php */
class Bapak {
var $nama =”Bapak”;
function Bapak($n) {
$this->nama = $n;
}
function Hallo() {echo “Halo, saya $this->nama
”;}
}
class Anak extends Bapak {}
$test = new Anak(”Anak dari Bapak”);
$test->Hallo();
?>
Hasil tampilan dari listing program di atas adalah “Halo, saya Anak dari Bapak” dan bukannya “Halo, saya Bapak”. Mengapa demikian? Memang di dalam class Bapak didefinisikan variabel nama dengan nilai Bapak, selanjutnya kita membuat objek dari class Anak yang merupakan turunan dari class Bapak. Lihat bahwa instantiasi sekaligus mengisikan parameter baru “Anak dari Bapak”, sehingga ketika dipanggil maka mengisikan $this->nama dengan parameter tersebut. Ada pun di dalam implementasi pemrograman, kebanyakan pemrogram merasakan beberapa manfaat dari inheritance atau pewarisan, diantaranya:
Subclass mampu menyediakan perilaku khusus dari elemen dasar yang disediakan oleh superclass.


Read More...

Menjalankan File Executable dengan Java

Mungkin kita pernah dengar sebuah aplikasi yang dapat menjalanka aplikasi lain. Seringnya yaitu seperti menampilkan url dalam browser default, dengan hanya mengklik suatu tombola atau suatu tulisan tertentu. Dalam java juga telah menyediakan class untuk menangani masalah pemganggilan file executable. Untuk selama ini penulis masih menjalankannya diatas platform windows…untuk sistem operasi lain linux atau mac. Secara teorinya mungkin sama saja.

Langsung ke source code, perhatikan baris yang di-comment :
try {
// Menciptakan objek ProcessBuilder untuk menjalankan
//office world
String File= "C:/Program Files/Microsoft Office/Office12/WINWORD.EXE";
ProcessBuilder pb = new ProcessBuilder(File);
// Jalankan office world
pb.start();
}catch (java.io.IOException ex) {
JOptionPane.showMessageDialog(rootPane, "Anda Belum Menginstal Aplikasi Office Word\nSilahkan instal terlebih dulu");
}
Keterangan source codenya :

1.Pertama, kita tentukan terlebih dahulu alamat dari file executable yang akan kita jalankan. Seperti pada sintax :
String File= "C:/Program Files/Microsoft Office/Office12/WINWORD.EXE";

2. Kemudian, kita mendeklarasikan class yang menangani pengeksekusian file executable. Yaitu pada class ProcessBuilder, seperti pada sintax :
ProcessBuilder pb = new ProcessBuilder(File);

3. new ProcessBuilder(File);, Merupakan sintax pendeklarasian class ProcessBuilder dengan alamat file yang akan di-execute pada variabel File.

4. pb.start();, berfungsi untuk menjalankan file executable.

5. Perlu diingat dalam dalam menjalankan class harus disertai dengan fungsi try catch yang menangkap class IOException. Hal ini dikarenakan class ProcessBuilder menangani file yang berada di luar paket java.




Read More...

Mengenal THREAD pada Java




Thread merupakan kemampuan yang disediakan oleh Java untuk membuat aplikasi yang tangguh, karena thread dalam program memiliki fungsi dan tugas tersendiri. Dengan adanya thread, dapat membuat program yang lebih efisien dalam hal kecepatan maupun penggunaan sumber daya, karena kita dapat membagi proses dalam aplikasi kita pada waktu yang sama. Thread umumnya digunakan untuk pemrograman multitasking, networking, yang melibatkan pengaksesan ke sumber daya secara konkuren.

Ada dua cara yang bisa digunakan dalam membuat sebuah thread, yaitu :

  • Membuat subclass dari thread
Untuk menjalankan thread, dapat dilakukan dengan memanggil method start(). Saat start() dijalankan, maka sebenarnya method run() dari class akan dijalankan. Jadi untuk membuat thread, harus mendefinisikan method run() pada definisi class. Konstruktor dari cara ini adalah :
ClassThread namavar = new ClassThread();
Namavar.start();

Atau dapat juga langsung dengan cara:
New ClassThread().start();

  • Mengimplementasikan interface Runnable
Cara ini merupakan cara yang paling sederhana dalam membuat thread. Runnable merupakan unit abstrak, yaitu kelas yang mengimplementasikan interface ini hanya cukup mengimplementasikan fungsi run(). Dalam mengimplementasi fungsi run(), kita akan mendefinisikan instruksi yang membangun sebuah thread. Konstruktor dari cara ini adalah :
ObjekRunnable objek = new ObjekRunnable();
Thread namavar = new Thread(Objek Runnable);

Atau dengan cara singkat seperti :
New Thread(new ObjekRunnable());

Berikut beberapa istilah yang sering kita jumpai jika membahas tentang Thread
s :
1.Sleep
Mengatur thread untuk menghentikan prosesnya sejenak dan memberi kesempatan pada thread atau proses lain. Sleep dilakukan dengan cara memanggil method :
Sleep(long waktu);
Waktu untuk method ini merupakan tipe long dalam milisekon.

2. Interrupt
Apabila menginginkan suatu thread untuk menghentikan proses, maka perlu memanggil method interrupt. Interrupt digunakan untuk memberi signal pada thread untuk menghentikan prosesnya.
Berikut contoh SC-nya Threads.java:
class ThreadBaru extends Thread {
public ThreadBaru(String id) {
super(id);
start(); //Mulai eksekusi thread baru
}
public void run() {
for(int i=0;i<5;i++){ try{ Thread.sleep(100); }catch(InterruptedException e) {} } } } class DemoThread { public static void main(String[] args) { ThreadBaru thread1 = new ThreadBaru("Thread1"); ThreadBaru thread2 = new ThreadBaru("Thread2"); ThreadBaru thread3 = new ThreadBaru("Thread3"); System.out.println("Thread1 masih dieksekusi : " + thread1.isAlive()); System.out.println("Thread2 masih dieksekusi : " + thread2.isAlive()); System.out.println("Thread3 masih dieksekusi : " + thread3.isAlive()); //tunggu hingga semua child thread selesai dieksekusi try{ thread1.join(); System.out.println("Thread1 selesai dieksekusi"); thread2.join(); System.out.println("Thread2 selesai dieksekusi"); thread3.join(); System.out.println("Thread3 selesai dieksekusi"); }catch(InterruptedException e) { System.out.println("Thread utama diinterupsi " + e); } System.out.println("Thread utama selesai dieksekusi"); } }


Sinkronisasi adalah method atau blok yang memiliki tambahan keyword synchronized, sehingga apabila dijalankan maka hanya satu thread pada suatu waktu yang dapat menjalankan method atau blok program. Thread lain akan menunggu thread yang sedang mengeksekusi method ini hingga selesai. Mekanisme sinkronisasi penting apabila terjadi pembagian sumber daya maupun data di antara thread-thread. Sinkronisasi juga melakukan penguncian pada sumber daya atau data yang sedang diproses.
Berikut SC-nya ThreadsSinkronisasi.java
class TestSinkronisasi {
private java.util.Random random = new java.util.Random();
public void callMe(String data) {
System.out.print("[");
try{
Thread.sleep(random.nextInt(200));
}catch(InterruptedException e) {
e.printStackTrace();
}
System.out.print(data);
try{
Thread.sleep(random.nextInt(200));
}catch(InterruptedException e) {
e.printStackTrace();
}
System.out.println("]");
}
}
class ThreadBaru extends Thread {
private String data;
private TestSinkronisasi obj;
public ThreadBaru(TestSinkronisasi obj,String data) {
this.obj = obj;
this.data = data;
start();
}
public void run() {
obj.callMe(data);
}
}
class DemoThread {
public static void main(String[] args) {
TestSinkronisasi obj = new TestSinkronisasi();
ThreadBaru thread1 = new ThreadBaru(obj,"Superman");
ThreadBaru thread2 = new ThreadBaru(obj,"Batman");
ThreadBaru thread3 = new ThreadBaru(obj,"Spiderman");
//tunggu hingga semua child thread selesai dieksekusi
try{
thread1.join();
thread2.join();
thread3.join();
}catch(InterruptedException e) {
System.out.println("Thread utama diinterupsi " + e);
}
}
}


Read More...

Array pada Java

ARRAY adalah adalah Tipe terstruktur yang terdiri dari sejumlah komponen-komponen yang mempunyai tipe yang sama. Sebelum digunakan, variabel array perlu dideklarasikan terlebih dahulu. Cara mendeklarasikan variabel array sama seperti deklarasi variabel yang lainnya, hanya saja diikuti oleh suatu indek yang menunjukan jumlah maksimum data yang disediakan.

Array pada pemrogramman Java, dapat dibagi menjadi 2 bagian besar, yaitu Array Berdimensi Satu dan Array Multidimensi.

A. Array Berdimensi Satu
Bentuk pendekarasian Array Berdimensi Satu pada pemrograman Java, seperti dibawah ini:
tipe_data[] nama_var_array;
nama_var_array = new tipe_data[ukuran];

Contoh pendeklarasian :
int[] nilai;
nilai = new int[10];

a. Memasukan Nilai ke Array
Untuk memasukan nilai kedalam elemen array, dengan cara menyebutkan index untuk elemen array tersebut. Index dimulai dari index ke 0, bukan dari index ke 1.
nilai[0] = 70;
nilai[1] = 60;
nilai[2] = 80;

b. Mengambil Nilai dari Array
Untuk mengambil nilai dari dalam elemen array, dengan cara yang sama seperti memasukan kedalam elemen array, yaitu dengan menyebutkan index dari elemen array tersebut.
nilai[0];
nilai[1];
System.out.println("Nilai Elemen : " + nilai[0]);

Berikut contoh program array untuk menghitung total nilai dan nilai rata-rata elemen array.
/* ----------------------------
Nama File : Array_D1_01.java
Author : Frieyadie
------------------------------- */

import java.util.*;
class Array_D1_01
{
public static void main(String[] args)
{
int a, n, jml_nil=0;
double nil_rata=0;
int[] nilai; // deklarasi variabel array
nilai = new int[10]; // membuat objek array

Scanner input = new Scanner(System.in);

System.out.print("Masukkan Banyak Data = ");
n = input.nextInt();

System.out.println("");

//Memasukan Data ke Elemen Array
for(a=0; a




Read More...

Input Data Melalui Console Menggunakan Class Scanner

Untuk menginput data melalui layar console pada java, anda bisa menggunakan class Scanner() yang berada didalam package util (java.util.Scanner). Melalui Scanner ini pembacaan sebuah String dan Integer bisa dilakukan dari konsol dan menyimpannya dalam variabel. Untuk menggunakan Scanner ini, anda diharuskan mengimport dari java.util. Nah untuk selengkapnya dan bagimana bentuk implementasinya, anda bisa mengikuti coding seperti dibawah ini:

import java.util.Scanner;
public class InputData
{
public static void main(String[] args)
{
String nama;
int umur;

// Membuat Objek dengan in dari Class Scanner
Scanner in = new Scanner(System.in);

// Membaca satu baris Sting dari console
// dan meletakan didalam variabel nama
System.out.print("Masukan Nama Anda :");
nama = in.nextLine();

// Membaca satu baris integer dari console
// dan meletakan didalam variabel umur
System.out.print("Masukan Umur Anda :");
umur=in.nextInt();

in.close();

// Prints name and age to the console
System.out.println("Nama Anda :"+nama);
System.out.println("Umur Anda :"+umur+" Tahun");
}
}

Selamat Mencoba


Read More...

Percabangan (switch-case) Pada Java




public class FileSwitchSinyo {
public static void main(String[] args){
int a;
a=7;
switch (a) {
case 1: System.out.println("Hobi"); break;
case 2: System.out.println("saya adalah"); break;
case 3: System.out.println("berenang"); break;
case 4: System.out.println("menyanyi"); break;
case 5: System.out.println("menullis"); break;
case 6: System.out.println("jalan-jalan"); break;

case 7: System.out.println("menggambar");
case 8: System.out.println("bermain sepakbola");
case 9: System.out.println("bermain badminton");break;
case 10: System.out.println("melukis");break;
default: System.out.println("Tidak ada dalam daftar");break;
}
}
}


Logika programnya:
Percabangan switch itu sendiri dimaksudkan untuk menangani banyak kemungkinan kemunculan. Percabangan switch mengevaluasi dan membandingkan ekspresi untuk semua pernyataan case dan mengendalikan eksekusi program ke pernyataan case yang cocok. Jika tidak ada konstanta case yang cocok dengan ekspresi maka program menuju ke default, jika kita memberikan pernyataan ini.

Dalam percabangan ini (switch) diletakkan sebelum pernyataan fungsi umum. Jika tidak demikian, maka program yang kita buat tidak akan dapat dieksekusi (dijalankan) atau error semantik.
Pernyataan break adalah pilihan (optional) karena terdapat perintah untuk mengeksekusi beberapa case sekaligus. Jika kita tidak memberikan break, maka eksekusi program akan terus ke pernyataan case berikutnya.
Seperti :

.....
int a;
a=7;
switch (a) {
case 1: System.out.println("Hobi"); break;
.....
case 7: System.out.println("menggambar");
case 8: System.out.println("bermain sepakbola");
case 9: System.out.println("bermain badminton");break;
.....


Maka output yang akan tampil adalah menggambar dan bermain sepakbola, karena pada pernyataan switch (a) {, berarti kita menginstruksikan program untuk mengeksekusi data integer a dan integer a itu sendiri berisikan data ke-7. Jadi, kita memerintahkan program untuk mengeksekusi mulai dari case ke-7 hingga menemukan pernyataan break.
Setelah selesai sampai pada langkah terakhir, jangan lupa save listing program yang telah dibuat. Karena java bersifat case sensitive, maka penulisan nama kelas dan nama filenya harus kita perhatikan dengan teliti, apakah sama atau tidak. Jika nama kelas dengan nama file yang kita buat tidak sama, maka program yang kita buat tidak akan bisa dieksekusi (dijalankan).
Seperti : Jika nama kelas yang kita buat bernamakan FileSwitchAndi, maka pada menu save as kita harus mengetikken nama filenya adalah FileSwitchAndi.java

Selanjutnya untuk mengeksekusi project yang telah dibuat dengan program Eclipse, langkahnya adalah hanya tinggal memilih tools Run (pastikan project yang kita buat telah di save terlebih dahulu), maka pada bagian bawah lembar kerja kita akan muncul tampilan :
menggambar
bermain sepakbola
bermain badminton

Jika ingin mengeksekusi program yang telah dibuat dengan Command Prompt, langkah pertamanya, kita harus mengcompile file program yang telah kita buat sebelumnya dengan menggunakan perintah javac Nama File.java

Seperti : javac FileSwitchAndi.java

Setelah file di compile, lalu gunakan perintah java Nama File untuk mengeksekusi program yang telah kita buat.

Seperti : java FileSwitchSinyo
dan pada layar Command Prompt akan muncul tampilan :
menggambar
bermain sepakbola
bermain badminton

Sekian penjelasan yang singkat ini, semoga ada manfaatnya.


Read More...

Statement If-Else Untuk Menyelesaikan

Membaca Bilangan: Ambil sebuah angka sebagai input dari user, dan outputnya berupa kata yang sesuai dengan angka. Angka dimasukan antara 1-10. jika user memasukan nilai yang tidak sesuai berikan output "invalid number" :




Jawab :
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/

/**
*
* @author SiNyO
*/
public class baca_bilanganpakeifelse {
public static void main(String[] args) {
BufferedReader dataIn=new BufferedReader(new InputStreamReader(System.in));
String angka="";
String huruf="";
System.out.print("Input Angka: ");
try{
angka=dataIn.readLine();
}catch(IOException e){
System.out.println("Erorr!");
}
if(1==Integer.parseInt(angka)){
System.out.println("SATU");
}
else if(2==Integer.parseInt(angka)){
System.out.println("DUA");
}
else if(3==Integer.parseInt(angka)){
System.out.println("TIGA");
}
else if(4==Integer.parseInt(angka)){
System.out.println("EMPAT");
}
else if(5==Integer.parseInt(angka)){
System.out.println("LIMA");
}
else if(6==Integer.parseInt(angka)){
System.out.println("ENAM");
}
else if(7==Integer.parseInt(angka)){
System.out.println("TUJUH");
}
else if(8==Integer.parseInt(angka)){
System.out.println("DELAPAN");
}
else if(9==Integer.parseInt(angka)){
System.out.println("SEMBILAN");
}
else if(10==Integer.parseInt(angka)){
System.out.println("SEPULUH");
}
else{
System.out.println("Nomer Salah");
}
}
}


Read More...

Penggunaan Statement switch pada JAVA

Fungsi statement switch sebenarnya memberi pilihan, Switch mengkonstruksikan cabang untuk beberapa kondisi dari nilai.

Inilah contoh scriptnya :

public class Grade2
{
public static void main(String[] args)
{
int grade = 90;
switch (grade)
{
case 100:
System.out.println("exellent!");
break;
case 90:
System.out.println("Good Job!");
break;
case 80:
System.out.println("Study Hard!");
break;
default:
System.out.println("Sorry , you failed.");
}
}

}

Maka tampilannya akan seperti ini :



Read More...

Percabangan (if-else) Pada Java

public class kondisi {
public static void main(String[]args){
int a=70;
if (a>=90)
System.out.println("Nilai=A");
else if (a>=80)
System.out.println("Nilai=B");
else if (a>=70)
System.out.println("Nilai=C");
else if (a>=60)
System.out.println("Nilai=D");
else
System.out.println("Anda Tidak Lulus");
}
}

Output programnya:
Nilai=C


Logika programnya:
Percabangan if–else adalah percabangan yang digunakan untuk memilih salah satu dari dua atau lebih kemungkinan kemunculan bila memenuhi syarat atau kondisi tertentu. Pada percabangan ini (if-else) diletakkan sebelum pernyataan fungsi umum. Jika tidak demikian, maka program yang kita buat tidak akan dapat dieksekusi (dijalankan) atau error semantik.
Dalam penggunaan percabangan if-else ini. Bila pernyataan merupakan pernyataan komposit beberapa kalimat maka kita harus mengapit pernyataan tersebut dengan sepasang kurung kurawal ({…}) agar menjadi satu blok pernyataan utuh. Kalimat-kalimat komposit adalah sekumpulan kode di dalam kurung kurawal ({…}), kalimat itu dianggap sebagai satu kesatuan pernyataan.
Jika kondisi dievaluasi bernilai true, maka statement yang telah kita instruksikan yang akan di eksekusi. Namun jika kondisi dievaluasi bernilai false, maka statement pada instruksi else yang akan dieksekusi oleh program.
Seperti :

.....
int a=70;
if (a>=90)
System.out.println("Nilai=A");
else if (a>=80)
System.out.println("Nilai=C");
.....

Maka output yang akan tampil adalah Nilai C, karena pada pernyataan int a=70 berarti kita menginstruksikan program untuk mengeksekusi data yang bertipe integer yang nilainya adalah 70.

Setelah selesai sampai pada langkah terakhir, jangan lupa save listing program yang telah dibuat. Karena java bersifat case sensitive, maka penulisan nama kelas dan nama filenya harus kita perhatikan dengan teliti, apakah sama atau tidak. Jika nama kelas dengan nama file yang kita buat tidak sama, maka program yang kita buat tidak akan bisa dieksekusi (dijalankan).

Seperti : Jika nama kelas yang kita buat bernamakan kondisi, maka pada menu save as kita harus mengetikken nama filenya adalah kondisi.java


Selanjutnya untuk mengeksekusi program yang telah dibuat dengan program Eclipse, langkahnya adalah hanya tinggal memilih tools Run (pastikan project yang kita buat telah di save terlebih dahulu), maka pada bagian bawah lembar kerja kita akan muncul tampilan :
Nilai C
Jika ingin mengeksekusi program yang telah dibuat dengan Command Prompt, langkah pertamanya, kita harus mengcompile file program yang telah kita buat sebelumnya dengan menggunakan perintah javac Nama File.java
Seperti : javac kondisi.java

Setelah file di compile, lalu gunakan perintah java Nama File untuk mengeksekusi program yang telah kita buat.
Seperti : java kondisi
dan pada layar Command Prompt akan muncul tampilan :
Nilai C
Sekian penjelasan yang singkat ini, semoga ada manfaatnya.


Read More...

Class Variabel / Static Member Variabel

Instance Variabel atau dalam bahasa indonesianya Variabel class adalah variabel yang dapat diakses oleh semua method didalam class, termasuk static method seperti main. Ketika mendeklarasikan variabel class, ada 2 aturan dasar yang harus ditaati yaitu :

1. Menempatkan deklarasi variabel dalam blok class, tetapi tidak dalam method yang berada dalam class.

2. Anda harus memasukan kata static dalam pendeklarasian variabel. Kata static ditempatkan sebelum tipe variabel.

Sebagai ilustrasi silahkan lihat contoh program dibawah ini : (nama file : SayHello.java)


public class SayHello
{
// declare class variable
static String helloMessage = "Hello Programmer";
public static void main(String args[])
{
System.out.println(helloMessage);
System.out.println(myNickNameIs);
}
// declare class variable
static String myNickNameIs = "ghaNOZ2480";
}

Bila melihat contoh program diatas, kita dapat menempatkan pendeklarasian variabel pada awal class atau akhir class, tetapi lebih baik ditempatkan diawal class agar lebih mudah dibaca.


Read More...
  • Mahasiswa STMIK Duta Bangsa
  • description
  • description
  • description
  • description
  • description
  • description
  • description

Free Hosting

Free Hosting

My Blog List

A
B
C
     
D
E
F
DuGMp3    
G
H
I
Goo Otomotif HouseofScript  
J
K
L
Java Hotline    
M
N
O

My Games Collection

MeLangKah LeBih MaJu

   
P
Q
R
Pamella Decoration    
S
T
U
Studied WaLL    
V
W
X
     
Y
Z
0-9
     









Join....!


Free Domain

Free Domain

SiNyO. Powered by Blogger.