tag:blogger.com,1999:blog-55236241693524177952024-02-06T21:36:36.929-08:00Ikbal Achmad Fahrezaikbal achmad fahreza 26http://www.blogger.com/profile/18159349729659542082noreply@blogger.comBlogger35125tag:blogger.com,1999:blog-5523624169352417795.post-64971564480657447082012-11-26T04:27:00.002-08:002012-11-26T04:27:31.902-08:00Contoh fungsi dari script Book untuk perulangan dalam Java
<br /><div style="text-align: justify;">
<a href="http://www.blogger.com/blogger.g?blogID=5523624169352417795" name="1387806858739278179"></a>dalam contoh kali ini saya akan coba share tentang penggunaan fungsi
script "Book" untuk menampilkan infromasi penerbit dalam beberapa buku
hasil terbitanya. untuk detailnya bisa di lihat pada screenshoot image
berikut :</div>
<div dir="ltr" style="text-align: left;">
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgT-pkz7l7DcYcpqwqLxIkXVMrFSuTflcaNd9i3w-s9a3_hG48SYVY6qP0Fx8YjtoKK2M4kKm39-AZoAAZbeG2AdO9fD0XEu1bEZxYm0Ss6y11tb_9G5hnK2PmxkKQ42kX-1hhmqkOUM-ly/s1600/script+java.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="177" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgT-pkz7l7DcYcpqwqLxIkXVMrFSuTflcaNd9i3w-s9a3_hG48SYVY6qP0Fx8YjtoKK2M4kKm39-AZoAAZbeG2AdO9fD0XEu1bEZxYm0Ss6y11tb_9G5hnK2PmxkKQ42kX-1hhmqkOUM-ly/s320/script+java.png" width="320" /></a><a href="http://www.blogger.com/blogger.g?blogID=5523624169352417795" name="more"></a></div>
<br />
Untuk membuatnya, silahkan gunakan scrip di bawah ini :<br />
<br />
<div class="dp-highlighter">
<div class="bar">
<div class="tools">
<a href="http://www.komodonet.net/2012/11/contoh-fungsi-dari-script-book-untuk.html#">view plain</a><a href="http://www.komodonet.net/2012/11/contoh-fungsi-dari-script-book-untuk.html#">print</a><a href="http://www.komodonet.net/2012/11/contoh-fungsi-dari-script-book-untuk.html#">?</a></div>
</div>
<ol class="dp-c">
<li class="alt"><span><span class="keyword">package</span><span> javaapplication3; </span></span></li>
<li class=""><span>* @author Mohammad Hasanaji </span></li>
<li class="alt"><span><span class="keyword">class</span><span> book { </span></span></li>
<li class=""><span> String title,judul, pengarang, penerbit; </span></li>
<li class="alt"><span> <span class="keyword">int</span><span> tahunterbit; </span></span></li>
<li class=""><span> </span></li>
<li class="alt"><span><span class="keyword">public</span><span> book (String Title, String Judul, String Pengarang, String Penerbit, </span><span class="keyword">int</span><span> tahun){ </span></span></li>
<li class=""><span> <span class="keyword">this</span><span>.title=Title; </span></span></li>
<li class="alt"><span> <span class="keyword">this</span><span>.judul=Judul; </span></span></li>
<li class=""><span> <span class="keyword">this</span><span>.pengarang=Pengarang; </span></span></li>
<li class="alt"><span> <span class="keyword">this</span><span>.penerbit=Penerbit; </span></span></li>
<li class=""><span> <span class="keyword">this</span><span>.tahunterbit=tahun; </span></span></li>
<li class="alt"><span>} </span></li>
<li class=""><span><span class="keyword">void</span><span> cetaknilai () { </span></span></li>
<li class="alt"><span> System.out.println(<span class="string">" INI MERUPAKAN BUKU "</span><span>+title+</span><span class="string">" SAYA"</span><span>); </span></span></li>
<li class=""><span> System.out.println(<span class="string">" Judul : "</span><span>+judul); </span></span></li>
<li class="alt"><span> System.out.println(<span class="string">" Pengarang : "</span><span>+pengarang); </span></span></li>
<li class=""><span> System.out.println(<span class="string">" Penerbit : "</span><span>+penerbit); </span></span></li>
<li class="alt"><span> System.out.println(<span class="string">" Tahun Terbit : "</span><span>+tahunterbit); </span></span></li>
<li class=""><span> } </span></li>
<li class="alt"><span> </span></li>
<li class=""><span>} </span></li>
<li class="alt"><span><span class="keyword">public</span><span> </span><span class="keyword">class</span><span> bukudemo { </span></span></li>
<li class=""><span> </span></li>
<li class="alt"><span> <span class="keyword">public</span><span> </span><span class="keyword">static</span><span> </span><span class="keyword">void</span><span> main(String[] args) { </span></span></li>
<li class=""><span> book buku1=<span class="keyword">new</span><span> book(</span><span class="string">"PERTAMA"</span><span>,</span><span class="string">"Mahir Desain Web dengan Joomla"</span><span>,</span><span class="string">"Mohammad Hasanaji"</span><span>, </span></span></li>
<li class="alt"><span> <span class="string">"Informatika"</span><span>,2011); </span></span></li>
<li class=""><span> </span></li>
<li class="alt"><span> book buku2 = <span class="keyword">new</span><span> book(</span><span class="string">"KEDUA"</span><span>,</span><span class="string">"Mahir Blog dalam 48 Jam"</span><span>,</span><span class="string">"Mohammad Hasanaji"</span><span>, </span></span></li>
<li class=""><span> <span class="string">"Andi Offset"</span><span>,2011); </span></span></li>
<li class="alt"><span> book buku3 = <span class="keyword">new</span><span> book(</span><span class="string">"KETIGA"</span><span>,</span><span class="string">"Cara Mudah Mendapatkan Dollar dengan Modal Dengkul"</span><span>, </span></span></li>
<li class=""><span> <span class="string">"Mohammad Hasanaji"</span><span>,</span><span class="string">"Informatika"</span><span>,2011); </span></span></li>
<li class="alt"><span> </span></li>
<li class=""><span> buku1.cetaknilai(); </span></li>
<li class="alt"><span> buku2.cetaknilai(); </span></li>
<li class=""><span> buku3.cetaknilai(); </span></li>
<li class="alt"><span> } </span></li>
<li class=""><span>} </span></li>
</ol>
</div>
<br />
<div>
<i>Note</i> : sobat bisa menggantinya sesuai keinginan (kasus laen).
untuk javaapplication3 (text warna merah) ganti/sesuaikan dengan nama
application yang sobat bikin.</div>
</div>
<a class="share-button sb-email" href="http://www.blogger.com/share-post.g?blogID=8303021206881435638&postID=1387806858739278179&target=email" target="_blank" title="Kirimkan Ini lewat Email">
<span class="share-button-link-text">Kirimkan Ini lewat Email</span></a>ikbal achmad fahreza 26http://www.blogger.com/profile/18159349729659542082noreply@blogger.com0tag:blogger.com,1999:blog-5523624169352417795.post-42643759217126295042012-11-26T04:25:00.003-08:002012-11-26T04:25:36.131-08:00Delegation Event Model<h2 class="title">
<br />
</h2>
Delegasi event model menguraikan bagaimana program Anda dapat merespon interaksi<br />dari user. Untuk memahami model, pertama-tama mari kita pelajari melalui tiga<br />komponen utamanya.<br />1. Event Source<br />Event source mengacu pada komponen GUI yang meng-generate event. Sebagai<br />contoh, jika user menekan tombol, event source dalam hal ini adalah tombol.<br />2. Event Listener/Handler<br />Event listener menerima berita dari event-event dan proses-proses interaksi user.<br />Ketika tombol ditekan, listener akan mengendalikan dengan menampilkan sebuah<br />informasi yang berguna untuk user.<br />3. Event Object<br />Ketika sebuah event terjadi (misal, ketika user berinteraksi dengan komponen GUI),<br />sebuah object event diciptakan. Object berisi semua informasi yang perlu tentang<br />event yang telah terjadi. Informasi meliputi tipe dari event yang telah terjadi, seperti<br />ketika mouse telah di-klik. Ada beberapa class event untuk kategori yang berbeda<br />dari user action. Sebuah event object mempunyai tipe data mengenai salah satu dari<br />class ini.<br />
Pada awalnya, sebuah listener seharusnya diregistrasikan dengan sebuah source<br />sehingga dapat menerima informasi tentang event-event yang terjadi pada source<br />tersebut. Hanya listener yang sudah teregistrasi yang dapat menerima pemberitahuan<br />event-event. Ketika telah teregistrasi, sebuah listener hanya tinggal menunggu sampai<br />event terjadi.<br />Ketika sesuatu terjadi dengan event source, sebuah event object akan menguraikan<br />event yang diciptakan. Event kemudian ditembak oleh source pada listener yang<br />teregistrasi.<br />Saat listener menerima sebuah event object (pemberitahuan) dari source, dia akan<br />bekerja. Menerjemahkan pemberitahuan dan memproses event yang terjadi.
<a class="share-button sb-email" href="http://www.blogger.com/share-post.g?blogID=8303021206881435638&postID=4795792525577651701&target=email" target="_blank" title="Kirimkan Ini lewat Email">
<span class="share-button-link-text">Kirimkan Ini lewat Email</span></a>ikbal achmad fahreza 26http://www.blogger.com/profile/18159349729659542082noreply@blogger.com0tag:blogger.com,1999:blog-5523624169352417795.post-62556946607707704332012-11-26T04:24:00.002-08:002012-11-26T04:24:55.310-08:00Event Listeners
<br />
<div class="widget HTML" id="HTML8">
<div class="widget-content">
<div width="100%">
<br />
</div>
</div>
</div>
<div class="ptitle">
<a href="http://www.blogger.com/blogger.g?blogID=5523624169352417795" name="3038536284447811824"></a>
<h2 class="title">
<br />
</h2>
</div>
Event listeners adalah class yang mengimplementasikan interfaces Listener.<br />Tabel di bawah menunjukkan beberapa listener interfaces yang biasanya digunakan.<br />Event Listeners Deskripsi<br />ActionListener Bereaksi atas perubahan mouse atau atau keyboard.<br />MouseListener Bereaksi atas pergerakan mouse.<br />MouseMotionListener Interface MouseMotionListener mendukung MouseListener.<br />Menyediakan method-method yang akan memantau pergerakan<br />mouse,seperti drag dan pemindahan mouse.<br />WindowListener Bereaksi atas perubahan window.<br />Interface ActionListener hanya terdiri dari satu method.<br />Method ActionListener<br />public void actionPerformed(ActionEvent e)<br />Mengendalikan ActionEvent e yang terjadi.<br />Method MouseListener<br />Di bawah ini adalah method-method MouseListener yang seharusnya digunakan dalam<br />penerapan class.<br />Method-method MouseListener<br />public void mouseClicked(MouseEvent e)<br />Dipanggil pada saat tombol mouse di click (seperti tekan dan lepas).<br />public void mouseEntered(MouseEvent e)<br />Dipanggil pada saat kursor mouse memasuki area komponen.<br />public void mouseExited(MouseEvent e)<br />Dipanggil pada saat kursor mouse meninggalkan area komponen.<br />public void mousePressed(MouseEvent e)<br />Dipanggil pada saat tombol mouse ditekan di atas komponen<br />public void mouseReleased(MouseEvent e)<br />Dipanggil pada saat tombol mouse dilepas di atas komponen<br />
Method-Method MouseMotionListener<br />MouseMotionListener mempunyai dua method untuk diimplementasikan.<br />Method-method MouseListener<br />public void mouseDragged(MouseEvent e)<br />Digunakan untuk memantau pergerakan mouse yang melintasi object pada saat tombol<br />mouse ditekan. Tindakan ini persis sama dengan tindakan pada saat memindahkan<br />sebuah window.<br />public void mouseMoved(MouseEvent e)<br />Digunakan untuk memantau pergerakan mouse pada saat mouse melintasi area suatu<br />object. Pada saat ini tidak ada mouse yang ditekan, hanya memindahkan pointer<br />mouse melalui object.<br />8.4.4 Method-Method WindowListener<br />Di bawah ini method-method dari interface WindowListener.<br />Method-method WindowListener<br />public void windowOpened(WindowEvent e)<br />Dipanggil pada saat object window dibuka (pertama kali window dibuat tampil).<br />public void windowClosing(WindowEvent e)<br />Dipanggil pada saat user mencoba untuk menutup object Window dari menu sistem<br />object.<br />public void windowClosed(WindowEvent e)<br />Dipanggil pada saat object Window ditutup setelah memanggil penempatan (misal,<br />release dari resource-resource yang digunakan oleh source) pada object.<br />public void windowActivated(WindowEvent e)<br />Dilibatkan ketika object Window adalah window yang aktif (window masih dipakai).<br />public void windowDeactivated(WindowEvent e)<br />Dilibatkan ketika object Window tidak lagi merupakan window yang aktif.<br />public void windowIconified(WindowEvent e)<br />Dipanggil ketika object Window di-minimize.<br />public void windowDeiconified(WindowEvent e)<br />Dipanggil ketika object Window kembali setelah di-minimize ke keadaan normal.
<a class="share-button sb-email" href="http://www.blogger.com/share-post.g?blogID=8303021206881435638&postID=3038536284447811824&target=email" target="_blank" title="Kirimkan Ini lewat Email">
<span class="share-button-link-text">Kirimkan Ini lewat Email</span></a>ikbal achmad fahreza 26http://www.blogger.com/profile/18159349729659542082noreply@blogger.com0tag:blogger.com,1999:blog-5523624169352417795.post-79443509734947857642012-11-26T04:21:00.003-08:002012-11-26T04:21:59.907-08:00Rumus Perkalian dengan Syntac import java.util.* pada Java Netbeans
<br /><div style="text-align: justify;">
Kali ini saya akan memberikan program perkalian dalam java. Disini kita
akan belajar juga mengenai syntax untuk menginputkan bilangan. Jika di
C++ kita menggunakan syntax "cin", maka dalam java, hal pertama yang
harus kalian perhatikan dalam membuat syntax untuk menginputkan sesuatu
adalah syntax "import java.util.*;". Taruh syntax tadi di baris paling
atas dalam program.</div>
<div style="text-align: justify;">
Kemudian, setelah memasukkan syntax diatas, buatlah syntax Scanner baru
untuk menginputkan sesuatu. Syntaxnya seperti berikut "Scanner input =
new Scanner(System.in)". Nah, tulisan berwarna merah dapat kalian ganti
sesuka hati kalian. Nah, sekarang inputkan data-data yang akan kalian
masukkan. Misal memasukkan data bertipe String, caranya adalah, "nama =
input.next();". Nama adalah variabel bertipe string, sedangkan input
adalah syntax untuk memasukkan bilangan yang kalian gunakan di Scanner
tadi. Jika kalian memasukkan variabel bertipe Integer, cukup ganti
syntax "next();" menjadi "nextInt();".
</div>
<div style="text-align: justify;">
</div>
<div style="text-align: justify;">
Naah contoh script syntacnya bisa di lihat seperti di bawah ini :<br />
<div class="dp-highlighter">
<div class="bar">
<div class="tools">
<a href="http://www.komodonet.net/2012/11/rumus-perkalian-dengan-syntac-import.html#">view plain</a><a href="http://www.komodonet.net/2012/11/rumus-perkalian-dengan-syntac-import.html#">print</a><a href="http://www.komodonet.net/2012/11/rumus-perkalian-dengan-syntac-import.html#">?</a></div>
</div>
<ol class="dp-c">
<li class="alt"><span><span> </span></span></li>
<li class=""><span><span class="keyword">import</span><span> java.util.*; </span></span></li>
<li class="alt"><span> </span></li>
<li class=""><span><span class="keyword">public</span><span> </span><span class="keyword">class</span><span> Perkalian </span></span></li>
<li class="alt"><span>{ </span></li>
<li class=""><span> <span class="keyword">public</span><span> </span><span class="keyword">static</span><span> </span><span class="keyword">void</span><span> main(String[] args) </span></span></li>
<li class="alt"><span> { </span></li>
<li class=""><span> Scanner input = <span class="keyword">new</span><span> Scanner(System.</span><span class="keyword">in</span><span>); </span></span></li>
<li class="alt"><span> </span></li>
<li class=""><span> <span class="keyword">int</span><span> bil1, bil2, hasil; </span></span></li>
<li class="alt"><span> </span></li>
<li class=""><span> System.out.println(<span class="string">"Program Perkalian Java\n\n"</span><span>); </span></span></li>
<li class="alt"><span> System.out.print(<span class="string">"Masukkan Angka 1: "</span><span>); </span></span></li>
<li class=""><span> bil1 = input.nextInt(); </span></li>
<li class="alt"><span> System.out.print(<span class="string">"Masukkan Angka 2: "</span><span>); </span></span></li>
<li class=""><span> bil2 = input.nextInt(); </span></li>
<li class="alt"><span> </span></li>
<li class=""><span> System.out.println(<span class="string">"\n"</span><span>); </span></span></li>
<li class="alt"><span> hasil = bil1 * bil2; </span></li>
<li class=""><span> System.out.println(<span class="string">"Hasil perkalian "</span><span>+bil1 </span><span class="string">" dan "</span><span>+bil2 </span><span class="string">" = "</span><span>+hasil); </span></span></li>
<li class="alt"><span> } </span></li>
<li class=""><span>} </span></li>
<li class="alt"><span> </span></li>
</ol>
</div>
<br />
<i>Note</i> : <span style="color: red;">import java.util.*</span> di tambahkan /di ketik secara manual dan di letakkan di paling atas.</div>
<a class="share-button sb-email" href="http://www.blogger.com/share-post.g?blogID=8303021206881435638&postID=1530805826578829710&target=email" target="_blank" title="Kirimkan Ini lewat Email">
<span class="share-button-link-text">Kirimkan Ini lewat Email</span></a>ikbal achmad fahreza 26http://www.blogger.com/profile/18159349729659542082noreply@blogger.com0tag:blogger.com,1999:blog-5523624169352417795.post-9556348330926371442012-11-26T04:20:00.002-08:002012-11-26T04:20:25.754-08:00Cara Membuat Program Menu Login Melalui NetbeansPertama, buatlah JFrameForm Seperti seperti gambar di bawah ini.<br />
<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi6JUaXuhHVnluP7rZoIUyAH_uKK1LVF7nOcrmxNmmJsoMTG17HP7lQrZXrTxRb7BSVzuIAzwZ_I4JNp9383qeV1MPsRRvH4o7prowVzDc01p_Fv47mzgT9pTWTgKAqLWb84U9FHX58tjzO/s1600/Menu+Login+Display.jpg" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi6JUaXuhHVnluP7rZoIUyAH_uKK1LVF7nOcrmxNmmJsoMTG17HP7lQrZXrTxRb7BSVzuIAzwZ_I4JNp9383qeV1MPsRRvH4o7prowVzDc01p_Fv47mzgT9pTWTgKAqLWb84U9FHX58tjzO/s1600/Menu+Login+Display.jpg" /> </a></div>
<div class="separator" style="clear: both; text-align: center;">
</div>
Buatlah dengan ketentuan pada navigator yaitu :<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjbYLSQvCSHc-bNjr9-44Miv-4B4iivcQVz33WkCo3zhge9g9hKpgEfElSkCWdywIzVOuYKhML1aouVFCvIgxUNgTaOYWHWb8YkgsTzi2ZX4R0yWy8zpNu9mULPC3ZJBf_MJ19IJF12DuNn/s1600/Navigator.jpg" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjbYLSQvCSHc-bNjr9-44Miv-4B4iivcQVz33WkCo3zhge9g9hKpgEfElSkCWdywIzVOuYKhML1aouVFCvIgxUNgTaOYWHWb8YkgsTzi2ZX4R0yWy8zpNu9mULPC3ZJBf_MJ19IJF12DuNn/s1600/Navigator.jpg" /></a></div>
<br />
<a href="http://www.blogger.com/blogger.g?blogID=8303021206881435638" name="more"></a><br />
<br />
Setelah itu, masuk pada tab source, kemudian masukkan script ini :<br />
<span style="color: #6aa84f;">import java.awt.ComponentOrientation;</span><br />
<span style="color: #6aa84f;">import javax.swing.JFrame;</span><br />
public class MenuLogin extends javax.swing.JFrame {<br />
<br />
<span style="color: #6aa84f;">JFrame Direction;</span>//Direction adalah kelas yang akan dipanggil setelah masuk login<br />
<br />
public MenuLogin() {<br />
initComponents();<br />
<span style="color: #6aa84f;"> setTitle("Menu Login");</span><span style="color: #9fc5e8;"> //untuk titlenya</span><br />
}<br />
<br />
<span style="color: #6aa84f;">private void btnLoginActionPerformed(java.awt.event.ActionEvent evt) { </span><br />
<span style="color: #6aa84f;"> <span style="color: #9fc5e8;"> // TODO add your handling code here:</span></span><br />
<span style="color: #6aa84f;"> String id = txtID.getText();</span><br />
<span style="color: #6aa84f;"> String pass = passPassword.getText().toString();</span><br />
<span style="color: #6aa84f;"> System.out.println(id);</span><br />
<span style="color: #6aa84f;"> System.out.println(pass);</span><br />
<span style="color: #6aa84f;"> if (id.equals("yusuf") && pass.equals("masuk")) {</span><br />
<span style="color: #6aa84f;"> Direction = new Directionto();</span><br />
<span style="color: #6aa84f;"> Direction.setVisible(true);</span><br />
<span style="color: #6aa84f;"> dispose();</span><br />
<br />
<span style="color: #6aa84f;"> } else {</span><br />
<span style="color: #6aa84f;"> System.out.println("invalid Id or Password");</span><br />
<span style="color: #6aa84f;"> } </span><br />
<span style="color: #6aa84f;"> }</span><br />
<br />
public static void main(String args[]) {<br />
<span style="color: #6aa84f;">java.awt.EventQueue.invokeLater(new Runnable() {</span><br />
<br />
<span style="color: #6aa84f;"> @Override</span><br />
<span style="color: #6aa84f;"> public void run() {</span><br />
<span style="color: #6aa84f;"> <span style="color: #cfe2f3;"> <span style="color: #9fc5e8;">//throw new UnsupportedOperationException("Not supported yet.");</span></span></span><br />
<span style="color: #6aa84f;"> new MenuLogin().setVisible(true);</span><br />
<span style="color: #6aa84f;"> }</span><br />
<span style="color: #6aa84f;"> });</span><br />
<br />
}<br />
private javax.swing.JButton btnLogin;<br />
private javax.swing.JLabel jLabel1;<br />
private javax.swing.JLabel jLabel2;<br />
private javax.swing.JPanel jPanel1;<br />
private javax.swing.JPanel jPanel2;<br />
private javax.swing.JPasswordField passPassword;<br />
private javax.swing.JTextField txtID;<br />
}<br />
<br />
Pada Bagian yang berwarna hijau diketikkan manual, yang berwarna hitam
merupakan defaultnya JFrameForm tersebut, sementara yang berwarna biru
merupakan comment.<br />
<br />
Semoga bermanfaat.. :)
ikbal achmad fahreza 26http://www.blogger.com/profile/18159349729659542082noreply@blogger.com0tag:blogger.com,1999:blog-5523624169352417795.post-24268160197946903162012-11-26T04:19:00.000-08:002012-11-26T04:22:23.674-08:00Menentukan Nilai Akhir dengan Netbeans
<div id="headerarea">
<div id="descript">
<div class="header section" id="header">
<div class="widget Header" id="Header1">
<div id="header-inner">
<div class="titlewrapper">
<h1 class="title">
<a href="https://twitter.com/#%21/gaz_gaz_gaz" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img alt="twitter" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjt4BkRY6npkG4xuPWfWG_gLojx4m-qoCgrRW0ggRecpnXpiGmDk3A6xCNIzsR3NSH_hDiiKcsjW4jr-3UQ67BKJRssIhFrCR5JKLbZcagT_NiMWy67J28RGFy3MpVcungzx8G8-nbs6Z4/s1600/blank.gif" style="height: 70px; width: 90px;" /></a></h1>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="ptitle">
<a href="http://www.blogger.com/blogger.g?blogID=5523624169352417795" name="5772018184029170263"></a>
<h2 class="title">
<br />
</h2>
</div>
<div dir="ltr" style="text-align: left;">
Naah pada artikel
kali ini saya akan coba sharing menentukan nilai akhir dengan
menggunakan fungsi float dan integer. Seperti biasa kamu buat project
baru dan class baru di netbeans, jika kamu belum tau caranya, silahkan
baca artikel saya sebelumnya <a href="http://hasanaji.blogspot.com/2012/01/tutorial-java-menggunakan-netbeans-71.html" target="new">ini</a>.<br />
- Jika sudah membuat Class Java copykan code berikut didalamnya.<br />
<div class="dp-highlighter">
<div class="bar">
<div class="tools">
<a href="http://www.komodonet.net/2012/11/menentukan-nilai-akhir-dengan-netbeans.html#">view plain</a><a href="http://www.komodonet.net/2012/11/menentukan-nilai-akhir-dengan-netbeans.html#">print</a><a href="http://www.komodonet.net/2012/11/menentukan-nilai-akhir-dengan-netbeans.html#">?</a></div>
</div>
<ol class="dp-c">
<li class="alt"><span><span class="keyword">package</span><span> javaapplication1; </span></span></li>
<li class=""><span>* @author Mohammad Hasanaji </span></li>
<li class="alt"><span> </span></li>
<li class=""><span><span class="keyword">class</span><span> Nilai { </span></span></li>
<li class="alt"><span> String nim, nama; </span></li>
<li class=""><span> <span class="keyword">float</span><span> nilaiuts,nilaitugas,nilaiuas,pnilaiuts,pnilaitugas,pnilaiuas,nilaiakhir; </span></span></li>
<li class="alt"><span> <span class="keyword">void</span><span> hitungNilai() </span></span></li>
<li class=""><span> { </span></li>
<li class="alt"><span> pnilaiuts=0.2f*nilaiuts; </span></li>
<li class=""><span> pnilaitugas=0.35f*nilaitugas; </span></li>
<li class="alt"><span> pnilaiuas=0.45f*nilaiuas; </span></li>
<li class=""><span> nilaiakhir=pnilaiuts+pnilaitugas+pnilaiuas; </span></li>
<li class="alt"><span> } </span></li>
<li class=""><span> <span class="keyword">void</span><span> cetakNilai() </span></span></li>
<li class="alt"><span> { </span></li>
<li class=""><span> System.out.println(<span class="string">"NIM = "</span><span> +nim); </span></span></li>
<li class="alt"><span> System.out.println(<span class="string">"Nama = "</span><span> +nama); </span></span></li>
<li class=""><span> System.out.println(<span class="string">"Nilai UTS = "</span><span> +nilaiuts +</span><span class="string">" 20% :"</span><span>+pnilaiuts); </span></span></li>
<li class="alt"><span> System.out.println(<span class="string">"Nilai Tugas = "</span><span> +nilaitugas +</span><span class="string">" 35% :"</span><span>+pnilaitugas); </span></span></li>
<li class=""><span> System.out.println(<span class="string">"Nilai UAS = "</span><span> +nilaiuas +</span><span class="string">" 45% :"</span><span>+pnilaiuas); </span></span></li>
<li class="alt"><span> System.out.println(<span class="string">"Nilai Akhir = "</span><span> +nilaiakhir); </span></span></li>
<li class=""><span> } </span></li>
<li class="alt"><span>} </span></li>
<li class=""><span> <span class="keyword">public</span><span> </span><span class="keyword">class</span><span> NilaiDemo { </span></span></li>
<li class="alt"><span> <span class="keyword">public</span><span> </span><span class="keyword">static</span><span> </span><span class="keyword">void</span><span> main(String[] args) { </span></span></li>
<li class=""><span> Nilai nilaiku=<span class="keyword">new</span><span> Nilai(); </span></span></li>
<li class="alt"><span> </span></li>
<li class=""><span> nilaiku.nim=<span class="string">"G.131.10.0049"</span><span>; </span></span></li>
<li class="alt"><span> nilaiku.nama=<span class="string">"Hasanaji"</span><span>; </span></span></li>
<li class=""><span> nilaiku.nilaitugas=80; </span></li>
<li class="alt"><span> nilaiku.nilaiuas=87; </span></li>
<li class=""><span> nilaiku.nilaiuts=90; </span></li>
<li class="alt"><span> </span></li>
<li class=""><span> nilaiku.hitungNilai(); </span></li>
<li class="alt"><span> nilaiku.cetakNilai(); </span></li>
<li class=""><span> </span></li>
<li class="alt"><span> } </span></li>
<li class=""><span>} </span></li>
</ol>
</div>
</div>
<br />
Maka Print Outnya seperti ini<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgVQ6hyphenhyphenmvfqcHmRgarS7JyTWayY45B3d3J3b5U0sqMH5I00Fufo1_8eOisYzNuG5GoEQIBqutTZ_tkWZKmogbU1TpbxF4rLFQ9vkN_Rmh0Iqd7Dk85CbDSr5cIDeTflQsYZNSAv5G6Okh1J/s1600/nilaiakhir.PNG" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="128" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgVQ6hyphenhyphenmvfqcHmRgarS7JyTWayY45B3d3J3b5U0sqMH5I00Fufo1_8eOisYzNuG5GoEQIBqutTZ_tkWZKmogbU1TpbxF4rLFQ9vkN_Rmh0Iqd7Dk85CbDSr5cIDeTflQsYZNSAv5G6Okh1J/s320/nilaiakhir.PNG" width="320" /></a></div>
<br />
* Ada beberapa hal yang perlu kamu sesuaikan dengan project kamu, yakni di bagian <b>Project Name</b> = javaapplication1 >> ganti sesuai dengan nama projectmu. dan <b>Nama Class</b>= NilaiDemo ganti sesuai dengan nama classmu.
<a class="share-button sb-email" href="http://www.blogger.com/share-post.g?blogID=8303021206881435638&postID=5772018184029170263&target=email" target="_blank" title="Kirimkan Ini lewat Email">
<span class="share-button-link-text">Kirimkan Ini lewat Email</span></a>ikbal achmad fahreza 26http://www.blogger.com/profile/18159349729659542082noreply@blogger.com0tag:blogger.com,1999:blog-5523624169352417795.post-14705370247420323312012-11-26T04:16:00.003-08:002012-11-26T04:22:23.672-08:00Tutorial dasar pemrograman java berbasis GUI menggunakan NETBEANS
<div id="headerarea">
<br /></div>
<div class="widget HTML" id="HTML8">
<div class="widget-content">
<div width="100%">
<br />
</div>
</div>
</div>
<div class="ptitle">
<a href="http://www.blogger.com/blogger.g?blogID=5523624169352417795" name="4598086798000452396"></a>
<h2 class="title">
<br />
</h2>
</div>
<b>BENAR-BENAR UNTUK PEMULA</b>
<br />
<b>1. INSTALASI NETBEANS</b><br />
Untuk menginstall Netbeans Anda harus punya DVD nya yang bisa didapat dengan Cuma-Cuma dari <a href="http://www.netbeans.org/about/media.html">NetBeans.org</a> (tergantung keberuntungan) tinggal dipesan aja via <a href="http://indodesain.org/2008/06/03/tutorial-dasar-pemrograman-java-berbasis-gui-menggunakan-netbeans/" target="undefined"><span style="color: #0000ff ! important; font-size: 12px; font-weight: 400; position: static;"><span style="color: #0000ff ! important; font-family: Verdana,"BitStream vera Sans",Tahoma,Helvetica,Sans-serif; font-size: 12px; font-weight: 400; position: relative;">Internet</span></span></a>
lalu Anda akan menerima DVDnya langsung ke tangan Anda dalam sekejab
(nunggu beberapa hari/gak sampe berminggu-minggu), lebih gampang 1agi
Anda silahkan unduh dari <a href="http://download.netbeans.org/netbeans/6.1/final/">netbeans.org</a> hanya beberapa menit kalau kamu punya bandwith <a href="http://indodesain.org/2008/06/03/tutorial-dasar-pemrograman-java-berbasis-gui-menggunakan-netbeans/" target="undefined"><span style="color: #0000ff ! important; font-size: 12px; font-weight: 400; position: static;"><span style="color: #0000ff ! important; font-family: Verdana,"BitStream vera Sans",Tahoma,Helvetica,Sans-serif; font-size: 12px; font-weight: 400; position: relative;">Internet </span><span style="color: #0000ff ! important; font-family: Verdana,"BitStream vera Sans",Tahoma,Helvetica,Sans-serif; font-size: 12px; font-weight: 400; position: relative;">Connection</span></span></a>
yang tinggi. Setelah Anda punya package nya silahkan install aja
sendiri, boleh juga ditemani pacar, teman, saudara, oppung, nenek, atho’
dan lain-lain….hehe…:))<br />
<br />
baca selengkapnya……….click di<br />
Sebagai catatan, dalam tutorial ini penulis menggunakan NetBeans IDE 6.0 dan <a href="http://indodesain.org/2008/06/03/tutorial-dasar-pemrograman-java-berbasis-gui-menggunakan-netbeans/" target="undefined"><span style="color: #0000ff ! important; font-size: 12px; font-weight: 400; position: static;"><span style="color: #0000ff ! important; font-family: Verdana,"BitStream vera Sans",Tahoma,Helvetica,Sans-serif; font-size: 12px; font-weight: 400; position: relative;">JDK</span></span></a>
1.6 yang sudah terintegrasi langsung pada netbeans, Sistem Operasi
Windows XP SP2 (comment: ternyata penulis masih doyan produk microsoft:
sekarang ini sedang migrasi ke Linux: Ubuntu, sedang dicoba,
Slackware12 pernah dicoba agak payah bagi pemula, OpenSuse lumayan enak
dengan Yast nya. Kini juga sedang mencoba FreeBSD dan Solaris… masih
coba-coba terus)<br />
<b>2. MEMULAI NETBEANS</b><br />
Yang pasti kalo kamu pake SO dari keluarga Microsoft, ada shortcut nya di <a href="http://indodesain.org/2008/06/03/tutorial-dasar-pemrograman-java-berbasis-gui-menggunakan-netbeans/" target="undefined"><span style="color: #0000ff ! important; font-size: 12px; font-weight: 400; position: static;"><span style="color: #0000ff ! important; font-family: Verdana,"BitStream vera Sans",Tahoma,Helvetica,Sans-serif; font-size: 12px; font-weight: 400; position: relative;">desktop</span></span></a> kamu, ya tinggal di double click aja terus nunggu sambil minum coffeemix<br />
<a href="http://www.blogger.com/blogger.g?blogID=5523624169352417795" name="more"></a><br />
<b>3. MEMBUAT PROJECT BARU</b><br />
Nih stepnya, ikuti saja (bahasanya/kalimatnya akag aneh, maklum….):<br />
- Pilih File<br />
- New Project<br />
<a href="http://indodesain.org/wp-content/gallery/javapic/javagui01.jpg"><img alt="javagui01.jpg" border="0" src="http://indodesain.org/wp-content/gallery/javapic/thumbs/thumbs_javagui01.jpg" /></a><br />
- Pada Category: pilih Java<br />
- Pada Projects: pilih <a href="http://indodesain.org/2008/06/03/tutorial-dasar-pemrograman-java-berbasis-gui-menggunakan-netbeans/" target="undefined"><span style="color: #0000ff ! important; font-size: 12px; font-weight: 400; position: static;"><span style="color: #0000ff ! important; font-family: Verdana,"BitStream vera Sans",Tahoma,Helvetica,Sans-serif; font-size: 12px; font-weight: 400; position: relative;">Java </span><span style="color: #0000ff ! important; font-family: Verdana,"BitStream vera Sans",Tahoma,Helvetica,Sans-serif; font-size: 12px; font-weight: 400; position: relative;">Application</span></span></a><br />
- Kemudian Click tombol Next<br />
<a href="http://indodesain.org/wp-content/gallery/javapic/javagui02.jpg"><img alt="javagui02.jpg" border="0" src="http://indodesain.org/wp-content/gallery/javapic/thumbs/thumbs_javagui02.jpg" /></a><br />
- Pada Project Name: ketik nama project misalnya prjPaletteButton<br />
- Pada Project Locaton: click Browse untuk memilih folder diaman Anda akan menyimpan project<br />
- Checklist pada Set as Main Project<br />
- Checklist juga apda Create Main Class<br />
- Kemudian click Finish, maka hasilnya akan tampak seperti di bawah ini:<br />
<b>4. MEMBUAT FORM</b><br />
- Click kanan pada nama project Anda disisi sebelah kiri yang ada pada Project Explorer<br />
<a href="http://indodesain.org/wp-content/gallery/javapic/javagui04.jpg"><img alt="javagui04.jpg" border="0" src="http://indodesain.org/wp-content/gallery/javapic/javagui04.jpg" /></a><br />
- Pilih JFrame Form<br />
- Kemudian pada Class Name : ketik nama form misal frmButton<br />
- Pada Location : pilih Sources Packages (ini pilihan default)<br />
- Pada Package : pilih prjpalletbutton (sesuai nama project)<br />
- Setelah itu click Finish<br />
<b>5. MENAMBAHKAN CODE PROGRAM PADA MAIN.JAVA</b><br />
Karna
pada saat membuat project pertama sekali dichecklist pada Creat Main
Class dan Set as Main Project, maka yang selalu dijalankan pertama
sekali ketika program di run adalah main.java, dari program inilah
dipanggil form frmButton (nama form / class name), bagaimana caranya?:<br />
- Buka Code main.java dengan mengclick pada tab Main.java yang ada di bawah <a href="http://indodesain.org/2008/06/03/tutorial-dasar-pemrograman-java-berbasis-gui-menggunakan-netbeans/" target="undefined"><span style="color: #0000ff ! important; font-size: 12px; font-weight: 400; position: static;"><span style="color: #0000ff ! important; font-family: Verdana,"BitStream vera Sans",Tahoma,Helvetica,Sans-serif; font-size: 12px; font-weight: 400; position: relative;">toolbar</span></span></a><br />
<a href="http://indodesain.org/wp-content/gallery/javapic/javagui05.jpg"><img alt="javagui05.jpg" border="0" src="http://indodesain.org/wp-content/gallery/javapic/javagui05.jpg" /></a><br />
- Kemudian tambahkan code pada class utama (class main)<br />
public static void main (String[] args) {<br />
//TODO code application logic here<br />
<span style="color: red;"><b>new frmButton().setVisible(true);</b></span><br />
}<br />
Lihat gambar dibawah ini:<br />
<a href="http://indodesain.org/wp-content/gallery/javapic/javagui06.jpg"><br /> </a><br />
- Setelah itu coba jalankan program Anda dengan menekan tombol F6<br />
Atau click tombol ?yang terdapat pada toolbar<br />
- Lalu akan tampil form yang masih kosong, click pada sudut form (x)
untuk menutup form yang sedang running dan kembalilah edit form Anda
dan tambahkan beberapa palette (bacanya bukan pelet tetapi pælet) (di <a href="http://indodesain.org/2008/06/03/tutorial-dasar-pemrograman-java-berbasis-gui-menggunakan-netbeans/" target="undefined"><span style="color: #0000ff ! important; font-size: 12px; font-weight: 400; position: static;"><span style="color: #0000ff ! important; font-family: Verdana,"BitStream vera Sans",Tahoma,Helvetica,Sans-serif; font-size: 12px; font-weight: 400; position: relative;">visual </span><span style="color: #0000ff ! important; font-family: Verdana,"BitStream vera Sans",Tahoma,Helvetica,Sans-serif; font-size: 12px; font-weight: 400; position: relative;">basic</span></span></a> disebut toolbox) sesuai dengan kebutuhan Anda<br />
- Sekarang lanjutkan mengedit form Anda<br />
<b>6. MENAMBAH PALETTE PADA FORM</b><br />
Ada banyak palette yang dapat Anda tambahkan pada form sesuai
kebutuhan program Anda, pada project Anda biasanya jendela palette
terletak di sebelah kanan layar Anda, lihat gambar dibawah ini
perhatikan garis merahnya (comment:sebaiknya di jelaskan di awal ?):<br />
<a href="http://indodesain.org/wp-content/gallery/javapic/javagui06.jpg"><img alt="javagui06.jpg" border="0" height="344" src="http://indodesain.org/wp-content/gallery/javapic/javagui06.jpg" width="507" /></a><br />
DAFTAR PALETTE<br />
<b>- Swing Control:</b><br />
o Label<br />
o Button<br />
o Toggle Button<br />
o Check Box<br />
o Radio Button<br />
o Button Group<br />
o Combo Box<br />
o List<br />
o Text Field<br />
o Text Area<br />
o Scroll Bar, banyak lagi (lihat saja gambar di atas)<br />
Sekarang bagaimana cara menambahkan palette tersebut ke form, gampang
aja pada dasarnya sama dengan ketika Anda menggunakan bahasa pemrograman
visual lainnya, tinggal click pada palette yang kamu butuhkan dan
drag, kemudian letakkan pada form.<br />
Atau boleh juga dengan mengclick
sekali pada palette dan bawa mouse Anda ke area form maka palette yang
Anda click tadi akan tampil, sekarang Anda tinggal click sekali pada
area form dimana Anda akan meletakkan objek palette tersebut.<br />
Sebagai contoh lihat gambar di bawah ini:<br />
<a href="http://indodesain.org/wp-content/gallery/javapic/javagui07.jpg"><img alt="javagui07.jpg" border="0" height="259" src="http://indodesain.org/wp-content/gallery/javapic/javagui07.jpg" width="489" /></a><br />
- Arahkan mouse pada palette Label, Click sekali(jangan ditahan, click biasa aja)<br />
- kemudian Arahkan mouse Anda pada area form (lihat posisinya
disesuaikan) lalu click sekali, pallete Label akan tampak pada form Anda<br />
- kemudian ubah bacaan jLabel1 (caption di VB) menjadi Nilai Tugas, caranya:<br />
o click kanan pada objek label<br />
o pilih Edit Text<br />
<a href="http://indodesain.org/wp-content/gallery/javapic/javagui08.jpg"><img alt="javagui08.jpg" border="0" src="http://indodesain.org/wp-content/gallery/javapic/javagui08.jpg" /></a><br />
o lalu ketik judul yang baru (Nilai Tugas) dan click OK<br />
o Anda
dapat merubah ukuran objek dengan mengclick pada titik-titik yang ada
di setiap sisi dan sudut objek yang sedang Anda edit (objek yang aktif)<br />
- kemudian ubah nama objek, biasanya disesuaikan dengan jenis palette
yang Anda gunakan misalnya kalau label, maka nama objek biasanya diawali
dengan lbl misal lblNilaiTugas, kalau button penamaannya biasanya
diawali dengan btn, misalnya btnClose. Dll, bagaimana cara merubah nama
palette:<br />
? click kanan pada palette yang akan Anda rubah namanya<br />
? pilih Change Variable Name<br />
? kemudian ketik nama Variable Namenya, misal lblNilaiTugas, lihat gambar:<br />
<a href="http://indodesain.org/wp-content/gallery/javapic/javagui09.jpg"><img alt="javagui09.jpg" border="0" src="http://indodesain.org/wp-content/gallery/javapic/javagui09.jpg" /></a><br />
? click Ok<br />
? Anda dapat melakukan perubahan Variable Name atau yang lainnya (properties) melalui jendela Properties:<br />
<a href="http://indodesain.org/wp-content/gallery/javapic/javagui10.jpg"><img alt="javagui10.jpg" border="0" height="416" src="http://indodesain.org/wp-content/gallery/javapic/javagui10.jpg" width="495" /></a><br />
o Selanjutnya kalau Anda mau menambahkan palette yang sama boleh saja
kamu copy paste lalu rubah Text, Variable Name dan lain-lain sesuai
kebutuhan. Kemudian…. kemudian… dan selanjutnya kerjakan kasus dibawah
ini<br />
<b>7. KASUS 1</b><br />
Lengkapilah form Anda seperti dibawah ini<br />
<a href="http://indodesain.org/wp-content/gallery/javapic/javagui11.jpg"><img alt="javagui11.jpg" border="0" src="http://indodesain.org/wp-content/gallery/javapic/javagui11.jpg" /></a><br />
Catatan:<br />
- Jika project dijalankan, maka form yang tampil adalah seperti yang Anda lihat diatas<br />
- Pertama sekali textfield tidak dapat di isi/diclick dan tombol New,
Save, Show, hanya tombol Close dan Release Array saja yang dapat di
Click<br />
<b> - Fungsi tombol:</b><br />
<b>o Release Array ?</b><br />
apabila di click berarti mengalokasikan variabel Array dengan jumlah
row data yang baru, dengan mengclick tombol ini, maka tombol New dan
Show akan aktif sementara tombol Save belum aktif<br />
<a href="http://indodesain.org/wp-content/gallery/javapic/javagui12.jpg"><img alt="javagui12.jpg" border="0" src="http://indodesain.org/wp-content/gallery/javapic/javagui12.jpg" /></a><br />
Setelah Anda ketik jumlah data lalu click OK, maka tombol New akan aktif<br />
<b> </b><br />
<b>o New ?</b><br />
apabila di click maka semua textfield menjadi aktif dan bernilai
kosong, kemudian cursor akan aktif pada txtNT (text nilai tugas),
kemudian tombol Save akan aktif dan tombol New dan tombol Show malah
tidak aktif. Dan akan tampil nomor data yang akan di isi pada label Data
Ke :<br />
<b> </b><br />
<b>o Save ?</b><br />
<b> </b>hanya dapat di click setelah tombol New di click,
tombol ini akan menyimpan data yang ada pada textfield ke Array yang
sudah didefenisikan sebelumnya sesuai urutan row, apabila salahsatu
textfield masih kosong maka penyimpanan tidak dikerjakan dan cursor akan
kembali ke textfield (jadi ada validasi textfield)<br />
<a href="http://indodesain.org/wp-content/gallery/javapic/javagui13.jpg"><img alt="javagui13.jpg" border="0" src="http://indodesain.org/wp-content/gallery/javapic/javagui13.jpg" /></a><br />
<b>o Show ?</b><br />
<b> </b>untuk menampilkan data sesuai dengan permintaan
data keberapa yang akan di tampilkan kembali ke textfield, ketika Anda
click tombol ini akan tampil inputbox:<br />
<a href="http://indodesain.org/wp-content/gallery/javapic/javagui14.jpg"><img alt="javagui14.jpg" border="0" src="http://indodesain.org/wp-content/gallery/javapic/javagui14.jpg" /></a><br />
<div style="margin: 3px; text-align: center;">
<ins style="border: none; display: inline-table; height: 60px; margin: 0; padding: 0; position: relative; visibility: visible; width: 468px;"><ins id="aswift_0_anchor" style="border: none; display: block; height: 60px; margin: 0; padding: 0; position: relative; visibility: visible; width: 468px;"></ins></ins><ins style="border: medium none; display: inline-table; height: 60px; margin: 0pt; padding: 0pt; position: relative; visibility: visible; width: 468px;"><ins id="google_ads_frame1_anchor" style="border: medium none; display: block; height: 60px; margin: 0pt; padding: 0pt; position: relative; visibility: visible; width: 468px;"></ins></ins></div>
Ketiklah nomor record yang akan Anda tampilkan ke textfield form<br />
Setelah Anda click OK, maka akan tampil data dari Array yang sudah
tersimpan, jika Anda masukkan angka 1 maka data yang akan tampil adalah
yang ada pada Index Array 0, jika Anda input dengan jumlah yang
melebihi Array, maka akan ditampilkan data 1 (array 0)<br />
<b>o Close ? </b><br />
menutup Form atau keluar dari aplikasi.<br />
<b>8. MENYELESAIKAN KASUS 1</b><br />
- setelah Anda melengkapi object yang dibutuhkan pada form, diantaranya:<br />
Kelompok Label:<br />
- label yang perlu dirubah hanya text(caption nya saja) , disesuaikan (lihat form diatas)<br />
<b>Kelompok TextField :</b><br />
<b> Variable Name | Keterangan</b><br />
txtNT : jenis palette TextField, Variable Name untuk menampung Nilai Tugas yang di input dari keyboard<br />
txtNF : jenis palette TextField, untuk menampung Nilai Formatif<br />
txtNUTS : jenis palette TextField, Nilai UTS<br />
txtNUAS : jenis palette TextField, Nilai UAS<br />
txtNRata : jenis palette TextField, Nilai Rata-Rata, tidak di input
langsung dari keyboard, melainkan melalui proses setelah tombol Save di
click<br />
<b> Kelompok Button:</b><br />
btnNew : jenis palette Button, judul text New, shortcut:N<br />
btnSave : jenis palette Button, judul text Save, shortcut:S<br />
btnShow : jenis palette Button, judul text Show, shortcut:O<br />
btnRelease : jenis palette Button, judul text Release Array, shortcut:R<br />
btnClose : jenis palette Button, judul text Close, shortcut:C<br />
- Sekarang Anda lengkapi Code program untuk setiap objek sesuai dengan kebutuhan<br />
<b>- frmButton (form utama Anda),</b><br />
pada awal program kenalkan dulu beberapa variabel yang akan digunakan secara public di seluruh form:<br />
public int[][] Nilai;<br />
public int datake;<br />
lihat gambar dibawah ini:<br />
<a href="http://indodesain.org/wp-content/gallery/javapic/javagui15.jpg"><img alt="javagui15.jpg" border="0" src="http://indodesain.org/wp-content/gallery/javapic/javagui15.jpg" /></a><br />
Kemudian tambahkan code program pada Events Window Opened, agar
apabila form ini dipanggil/dijalankan dari main.java, maka ketika
pertama sekali tampil dilayar code program pada windowOpened dijalankan
hanya sekali saja, cara membuat code nya:<br />
o dalam mode Design/Click bebas pada area form yang kosong (aktifkan objek yang akan di isi code programnya)<br />
o Kemudian perhatikan, bawa mouse pointer Anda ke jendela properties<br />
o Pada Properties pilih tab menu Events, lihat gambar di bawah ini<br />
<a href="http://indodesain.org/wp-content/gallery/javapic/javagui16.jpg"><img alt="javagui16.jpg" border="0" src="http://indodesain.org/wp-content/gallery/javapic/javagui16.jpg" /></a><br />
o Jika Anda belum melihat properti windowsOpened, geser scroll yang
ada di sebelah kanan jendela properties ke bawah, lalu Seperti pada
gambar di atas, click properties windowOpened pada kolom Value nya.<br />
o Pada value yang tadinya bernilai akan berubah menjadi formWindowOpened<br />
o Kemudian Anda tekan panah ke bawah, maka akan tampil jendela code untuk event tersebut, lihat gambar dibawah ini:<br />
<a href="http://indodesain.org/wp-content/gallery/javapic/javagui17.jpg"><img alt="javagui17.jpg" border="0" height="252" src="http://indodesain.org/wp-content/gallery/javapic/javagui17.jpg" width="497" /></a><br />
o Lalu sediakan baris kosong dan ketik code programnya, lihat gambar di atas.<br />
o Code programnya :<br />
this.setTitle(“Form Data Nilai”); //membuat judul form<br />
this.setSize(350, 360); //mengatur ukuran form<br />
this.setLocationRelativeTo(null);<br />
this.setVisible(true);<br />
// semua textfield dikunci saat form dubuka/dipanggil dari main.java<br />
txtNT.setEnabled(false);<br />
txtNF.setEnabled(false);<br />
txtNUTS.setEnabled(false);<br />
txtNUAS.setEnabled(false);<br />
txtNRata.setEnabled(false);<br />
btnSave.setEnabled(false);<br />
btnNew.setEnabled(false);<br />
btnShow.setEnabled(false);<br />
// semua tombol diset shortcut nya<br />
btnNew.setMnemonic(‘N’);<br />
btnSave.setMnemonic(‘S’);<br />
btnShow.setMnemonic(‘O’);<br />
btnClose.setMnemonic(‘C’);<br />
btnRelease.setMnemonic(‘R’);<br />
// pointer difokuskan pada btnRelease<br />
btnRelease.requestFocus();<br />
<b>- btnRelease : </b><br />
event nya adalah ActionPerformed (sama dengan
click), boleh dengan double click pada buttonnya atau mengikuti langkah
pada frmButton. Adapun code programnya adalah :<br />
// alokasikan array Nilai sebanyak yang dibutuhkan<br />
/* oleh karena JoptionPane.showInputDialog menghasilkan nilai string,<br />
Maka dikonversi ke integer menggunakan perintah Integer.parseInt berfungsi<br />
mengkonversi data yang di input menjadi data angka Integer dan<br />
disimpan kedalam variable JumlahData<br />
*/<br />
int JumlahData=Integer.parseInt(JOptionPane.showInputDialog(null,”Masukkan Jumlah Data?”,”5″));<br />
/*<br />
Jangan lupa aktifkan dulu library javax.swing.JoptionPane,<br />
Pada awal code pada form, posisinya kira-kira dibawah package namapackageanda;<br />
Ketikkan code berikut: import javax.swing.JOptionPane;<br />
jika tidak Maka pada saat anda selesai mengetik int JumlahData dst….
pada nomor baris disebelah kiri anda akan tampil gambar bola lampu
kuning dan tanda merah tanda seru, itu artinya library harus di
aktifkan.<br />
Untuk mengaktifkan kamu boleh saja mengclick pada gambar
bola lampu tersebut, kemudian pilih Add import for
javax.swing.JOptionPane<br />
<a href="http://indodesain.org/wp-content/gallery/javapic/javagui18.jpg"><img alt="javagui18.jpg" border="0" src="http://indodesain.org/wp-content/gallery/javapic/javagui18.jpg" /></a><br />
<a href="http://indodesain.org/wp-content/gallery/javapic/javagui19.jpg"><img alt="javagui19.jpg" border="0" src="http://indodesain.org/wp-content/gallery/javapic/javagui19.jpg" /></a><br />
*/<br />
// Alokasikan index array Nilai<br />
Nilai=new int[JumlahData][4]; //JumlahData adalah jumlah row,4 adlh jlh kolom<br />
datake=0;<br />
btnSave.setEnabled(false);<br />
btnNew.setEnabled(true);<br />
btnShow.setEnabled(true);<br />
<b>- btnNew :</b> ActionPerformed<br />
//tambahkan nilai array<br />
datake=datake+1;<br />
// deteksi apabila jumlah array yang didefenisikan rownya sudah terisi<br />
// Nilai.length berfungsi mendeteksi jumlah row array<br />
if (datake>Nilai.length)<br />
JOptionPane.showMessageDialog(null,”ups… aray yang didefenisikan tidak<br />
cukup maksimum row :”+Nilai.length);<br />
else {<br />
lblDataKe.setText(“Data Ke :”+(datake));<br />
// set agar textfield dan tombol dapat<br />
// diakses, mirip properti enabled pada vb<br />
btnSave.setEnabled(true);<br />
btnNew.setEnabled(false);<br />
btnShow.setEnabled(false);<br />
btnClose.setEnabled(false);<br />
txtNT.setEnabled(true);<br />
txtNF.setEnabled(true);<br />
txtNUTS.setEnabled(true);<br />
txtNUAS.setEnabled(true);<br />
txtNRata.setEnabled(true);<br />
//kosongkan isi textfield<br />
txtNT.setText(“”);<br />
txtNF.setText(“”);<br />
txtNUTS.setText(“”);<br />
txtNUAS.setText(“”);<br />
//meletakkan cursor aktif pada textfield txtNT<br />
txtNT.requestFocus();<br />
}<br />
<b>- btnSave : </b>ActionPerformed<br />
// validasi data<br />
String nt=txtNT.getText();<br />
String nf=txtNF.getText();<br />
String nut=txtNUTS.getText();<br />
String nus=txtNUAS.getText();<br />
// deteksi kalau masih ada textfield yang belum di isi<br />
if ((nt.isEmpty()) | (nf.isEmpty()) |(nut.isEmpty()) | (nus.isEmpty()))<br />
{<br />
JOptionPane.showMessageDialog(null,”Masih ada nilai yang kosong, silahkan dilengkapi”);<br />
txtNT.requestFocus();<br />
}<br />
else {<br />
// simpan data ke array<br />
Nilai[(datake-1)][0]=Integer.parseInt(txtNT.getText());<br />
Nilai[(datake-1)][1]=Integer.parseInt(txtNF.getText());<br />
Nilai[(datake-1)][2]=Integer.parseInt(txtNUTS.getText());<br />
Nilai[(datake-1)][3]=Integer.parseInt(txtNUAS.getText());<br />
// semua textfield dikunci<br />
txtNT.setEnabled(false);<br />
txtNF.setEnabled(false);<br />
txtNUTS.setEnabled(false);<br />
txtNUAS.setEnabled(false);<br />
btnSave.setEnabled(false);<br />
btnNew.setEnabled(true);<br />
btnShow.setEnabled(true);<br />
btnClose.setEnabled(true);<br />
}<br />
<b>- btnShow : </b>ActionPerformed<br />
int JumlahData=Integer.parseInt(JOptionPane.showInputDialog(null,”Masukkan<br />
Nomor Row/Record Data?”,”1″));<br />
//deteksi kalau data yang ditampilkan melewati batas row array<br />
if ((JumlahData>Nilai.length) | (JumlahData<=0))<br />
JumlahData=1;<br />
lblDataKe.setText(“Data Ke :”+(JumlahData));<br />
txtNT.setText(new Integer(Nilai[(JumlahData-1)][0]).toString());<br />
txtNF.setText(new Integer(Nilai[(JumlahData-1)][1]).toString());<br />
txtNUTS.setText(new Integer(Nilai[(JumlahData-1)][2]).toString());<br />
txtNUAS.setText(new Integer(Nilai[(JumlahData-1)][3]).toString());<br />
<b>- btnClose :</b>ActionPerformed<br />
// boleh menggunakan dispose(); , hanya menutup form yang sedang aktif<br />
System.exit(0); //keluar dari program aplikasi secara keseluruhan<br />
<b>TUGAS (KERJASAMA KELOMPOK DISKUSI):</b><br />
<ol>
<li> DARI PROGRAM DI ATAS ANTA TAMBAHKAN PROSES UNTUK MENGHITUNG NILAI
RATA-RATA… TENTUNYA VARIABEL NYA MERUPAKAN JENIS DATA FLOAT KARENA HASIL
NYA DALAM BENTUK DESIMAL MISALKAN NILAI RATA : 80,50</li>
<li>TAMBAHKAN LABEL YANG AKAN MENAMPILKAN NILAI DALAM HURUF, BERDASARKAN NILAI RATA-RATA YANG DIDAPAT:</li>
</ol>
a. JIKA NILAI RATA-RATA >=85, MAKA AKAN TAMPIL PADA LABEL NILAI HURUF A<br />
b. 70 S/D <85 b="b" br="br" huruf="huruf" nilai="nilai"> c. 60 S/D
<70 br="br" c="c" huruf="huruf" nilai="nilai"> d. 45 S/D <60
br="br" d="d" huruf="huruf" nilai="nilai"> e. <45 e="e"
huruf="huruf" nilai="nilai" p="p">
<b>Kerja Sama Adalah Langkah Terbaik Dalam Menyelesaikan Permasalahan</b><br /> (MUHAZIR, Mei 2008)<br />
Sumber: http://indodesain.org/2008/06/03/tutorial-dasar-pemrograman-java-berbasis-gui-menggunakan-netbeans/ikbal achmad fahreza 26http://www.blogger.com/profile/18159349729659542082noreply@blogger.com0tag:blogger.com,1999:blog-5523624169352417795.post-67453948275999843272012-11-26T04:15:00.002-08:002012-11-26T04:22:23.688-08:00Apa itu NetBeans?
<br />
<div class="widget HTML" id="HTML8">
<div class="widget-content">
<div width="100%">
<br />
</div>
</div>
</div>
<div class="ptitle">
<a href="http://www.blogger.com/blogger.g?blogID=5523624169352417795" name="7555090020861359550"></a>
<h2 class="title">
<br />
</h2>
</div>
NetBeans merupakan sebuah proyek kode terbuka yang sukses dengan pengguna yang sangat luas,
komunitas yang terus tumbuh, dan memiliki hampir 100 mitra (dan terus bertambah!).
Sun Microsystems mendirikan proyek kode terbuka NetBeans pada bulan Juni 2000 dan terus
menjadi sponsor utama.
<br />
Saat ini terdapat dua produk : NetBeans IDE dan NetBeans Platform.
<br />
The <a href="http://netbeans.org/features/ide/index.html">NetBeans IDE</a>
adalah sebuah lingkungan pengembangan - sebuah kakas untuk pemrogram menulis,
mengompilasi, mencari kesalahan dan menyebarkan program. Netbeans IDE ditulis
dalam Java - namun dapat mendukung bahasa pemrograman lain. Terdapat banyak modul
untuk memperluas Netbeans IDE. Netbeans IDE adalah sebuah produk bebas dengan
tanpa batasan bagaimana digunakan.
<br />
Tersedia juga <a href="http://netbeans.org/features/platform/index.html">NetBeans Platform</a>;
sebuah fondasi yang modular dan dapat diperluas yang dapat digunakan sebagai
perangkat lunak dasar untuk membuat aplikasi desktop yang besar.
Mitra ISV menyediakan plug-in bernilai tambah yang dapat dengan mudah diintegrasikan
ke dalam Platform dan dapat juga digunakan untuk membuat kakas dan solusi sendiri.
<br />
Kedua produk adalah kode terbuka (open source) dan bebas (free) untuk penggunaan
komersial dan non komersial.
Kode sumber tersedia untuk guna ulang dengan lisensi
<a href="http://netbeans.org/cddl.html">Common Development
and Distribution License</a> (CDDL).<br />
<h3>
Apa itu netbeans.org?</h3>
netbeans.org adalah wadah dari komunitas kode terbuka NetBeans
yang didedikasikan untuk membangun sebuah IDE kelas dunia.
netbeans.org memungkinkan pengguna di lebih dari 160 negara dunia
terhubungkan ke sumber daya dan orang di seputar NetBeans.
Di sini, Anda dapat mengunduh versi terakhir NetBeans, melihat
dokumentasi pendukung secara online, membangun pengetahuan Anda tentang Java,
memantau berita, bergabung dengan sebuah mailing list,
menyumbangkan koce, belajar tentang orang-orang yang terlibat dengan proyek,
melakukan kontak, dan banyak lagi
<h3>
Bergabung dengan Komunitas NetBeans</h3>
Menjadi bagian dari tim NetBeans dan membantu membuat NetBeans jadi lebih baik.
Dengan mendaftar Anda akan secara langsung menyumbang kesuksesan NetBeas dan
imbalannya Anda akan selalu mendafat informasi terkini seputar proyek NetBeans.
Gunakan kotak pendaftaran pada pojok kanan atas halaman ini - pilih sebuah nama
pengguna dan bergabung!.
<h3>
Tetap Mendapatkan Informasi</h3>
NetBeans menawarkan beberapa mailing list untuk mengakomodasi berbagai macam
ketertarikan atau kepentingan dan memfasilitasi komunikasi antar pengguna NetBeans.
Lihat daftar mailing list NetBeans di
<a href="http://netbeans.org/community/lists/index.html">http://www.netbeans.org/community/lists/index.html</a>
untuk mengetahui lebih lanjut mailing list NetBeans.
ikbal achmad fahreza 26http://www.blogger.com/profile/18159349729659542082noreply@blogger.com0tag:blogger.com,1999:blog-5523624169352417795.post-65269277632093988312012-11-26T04:15:00.000-08:002012-11-26T04:22:23.686-08:00Membuat Project untuk menentukan Waktu dengan Java Netbeans
<br />
<div class="widget HTML" id="HTML8">
<div class="widget-content">
<div width="100%">
<br />
</div>
</div>
</div>
<div class="ptitle">
<a href="http://www.blogger.com/blogger.g?blogID=5523624169352417795" name="8875898064954970545"></a>
<h2 class="title">
<br />
</h2>
</div>
Temen-temen pembaca blog hasanaji,
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 <i>netbeans</i>. Dalam project ini kita bisa <i>menentukan waktu hari, jam, menit, detik</i>
pada variable yang kita inputkan menggunakan kaidah fungsi this.Untuk
lebih jelasnya mungkin bisa menyimak penjelasan singkat berikut ini :<br />
<br />
<br />
<ul style="text-align: left;">
<li>Seperti biasa silahkan buka program
Netbeansnya, kemudian pilih menu File >> New Project, Pilih Java
Aplication dan klik tombol Next</li>
</ul>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhNNC0ECXbWVowSRJGGAF2Qihdjb-nCiBCAsQRal7NBb74ggDQm1rkTdRYErGbAJVX1gH5uzVeYSkRDV-8-_7O20ro_dUUCYKXxL_QRv8deHJ88AkVLeHX_280ax_6lHFWFaCi3WtAP3SiZ/s1600/new+project1.PNG" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="220" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhNNC0ECXbWVowSRJGGAF2Qihdjb-nCiBCAsQRal7NBb74ggDQm1rkTdRYErGbAJVX1gH5uzVeYSkRDV-8-_7O20ro_dUUCYKXxL_QRv8deHJ88AkVLeHX_280ax_6lHFWFaCi3WtAP3SiZ/s320/new+project1.PNG" width="320" /></a><a href="http://www.blogger.com/blogger.g?blogID=5523624169352417795" name="more"></a></div>
<div>
<br />
</div>
<ul style="text-align: left;">
<li style="text-align: justify;">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.<br />
</li>
</ul>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg2i2EcXTlVONGjh9D6HIBWZVM7_11Ah2IotX3CsFYcSpG5fMv7yGdnhrD85dxwMHtvKstFfouLL1XfBBHgTU_pfX7OFRt-i8maG7ZpjlzlasFIWrjJS1uKM9fejh0tS0ohxU4QnSe7ce4f/s1600/new+project2.PNG" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="218" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg2i2EcXTlVONGjh9D6HIBWZVM7_11Ah2IotX3CsFYcSpG5fMv7yGdnhrD85dxwMHtvKstFfouLL1XfBBHgTU_pfX7OFRt-i8maG7ZpjlzlasFIWrjJS1uKM9fejh0tS0ohxU4QnSe7ce4f/s320/new+project2.PNG" width="320" /></a></div>
<div>
<br />
</div>
<ul style="text-align: left;">
<li>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 : <b>waktu</b> kemudian klik tombol <b>Finish</b><br />
</li>
</ul>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiFd_8cZSiVvp6SeU82V4_pnX3Huw1Lfhj2AsQkpoAsSj9AKVh9TMOstBpAFuVL7XhabUYbyBJIDCkNfhxUEaZQWZ8wHpyvnFaKmmh9BfFjlA_vktqBmTg8JON5_RuOLmJl5YE5weGRYIxh/s1600/new+class1.PNG" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="201" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiFd_8cZSiVvp6SeU82V4_pnX3Huw1Lfhj2AsQkpoAsSj9AKVh9TMOstBpAFuVL7XhabUYbyBJIDCkNfhxUEaZQWZ8wHpyvnFaKmmh9BfFjlA_vktqBmTg8JON5_RuOLmJl5YE5weGRYIxh/s320/new+class1.PNG" width="320" /></a></div>
<div>
<br />
</div>
<ul style="text-align: left;">
<li>Sekarang Class baru sudah
dibikin, langkah selanjutnya tinggal mengisinya dengan codingnya.
copykan kode dibawah ini persis di bawah nama class kamu, misal class
name=<b>waktu</b><br />
</li>
</ul>
<div>
<div class="dp-highlighter">
<div class="bar">
<div class="tools">
<a href="http://www.komodonet.net/2012/11/membuat-project-untuk-menentukan-waktu.html#">view plain</a><a href="http://www.komodonet.net/2012/11/membuat-project-untuk-menentukan-waktu.html#">print</a><a href="http://www.komodonet.net/2012/11/membuat-project-untuk-menentukan-waktu.html#">?</a></div>
</div>
<ol class="dp-c">
<li class="alt"><span><span class="keyword">public</span><span> </span><span class="keyword">class</span><span> waktu { </span></span></li>
<li class=""><span> <span class="keyword">int</span><span> dt, hari,jam,menit,detik; </span></span></li>
<li class="alt"><span> <span class="keyword">public</span><span> detik(</span><span class="keyword">int</span><span> dt) </span></span></li>
<li class=""><span> { </span></li>
<li class="alt"><span> <span class="keyword">this</span><span>.dt=dt; </span></span></li>
<li class=""><span> <span class="keyword">this</span><span>.hari=(</span><span class="keyword">this</span><span>.dt/86400); </span></span></li>
<li class="alt"><span> <span class="keyword">this</span><span>.jam=(</span><span class="keyword">this</span><span>.dt % 86400)/3600; </span></span></li>
<li class=""><span> <span class="keyword">this</span><span>.menit=((</span><span class="keyword">this</span><span>.dt % 86400) % 3600)/60; </span></span></li>
<li class="alt"><span> <span class="keyword">this</span><span>.detik=((</span><span class="keyword">this</span><span>.dt % 86400) % 3600) % 60; </span></span></li>
<li class=""><span> </span></li>
<li class="alt"><span> } </span></li>
<li class=""><span> <span class="keyword">public</span><span> </span><span class="keyword">void</span><span> cetakwaktu (){ </span></span></li>
<li class="alt"><span> System.out.println(<span class="string">"Masukkan detik = "</span><span>+dt); </span></span></li>
<li class=""><span> System.out.println(<span class="string">"Hari = "</span><span>+hari); </span></span></li>
<li class="alt"><span> System.out.println(<span class="string">"Jam = "</span><span>+jam); </span></span></li>
<li class=""><span> System.out.println(<span class="string">"Menit = "</span><span>+menit); </span></span></li>
<li class="alt"><span> System.out.println(<span class="string">"Detik = "</span><span>+detik); </span></span></li>
<li class=""><span> } </span></li>
<li class="alt"><span> </span></li>
<li class=""><span>} </span></li>
</ol>
</div>
</div>
<ul style="text-align: left;">
<li>Kemudian buatlah class baru dengan nama <i>waktudemo</i> dan copykan script berikut pada class <b>waktudemo</b></li>
<div class="dp-highlighter">
<div class="bar">
<div class="tools">
<a href="http://www.komodonet.net/2012/11/membuat-project-untuk-menentukan-waktu.html#">view plain</a><a href="http://www.komodonet.net/2012/11/membuat-project-untuk-menentukan-waktu.html#">print</a><a href="http://www.komodonet.net/2012/11/membuat-project-untuk-menentukan-waktu.html#">?</a></div>
</div>
<ol class="dp-c">
<li class="alt"><span><span class="keyword">public</span><span> </span><span class="keyword">class</span><span> waktudemo { </span></span></li>
<li class=""><span> <span class="keyword">public</span><span> </span><span class="keyword">static</span><span> </span><span class="keyword">void</span><span> main(String[] args) { </span></span></li>
<li class="alt"><span> detik detik1 = <span class="keyword">new</span><span> detik (180183); </span></span></li>
<li class=""><span> detik1.cetakwaktu(); </span></li>
<li class="alt"><span> } </span></li>
<li class=""><span>} </span></li>
</ol>
</div>
<li>Untuk melihat hasilnya klik kanan >> RUN pada class waktudemo</li>
</ul>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi7h73VEH04dClbS3nRtxOctjIVhP3HLbGUJwOjotcQgNMOcV0XAeKli6cvHY9_erXkQzOY-8W-_hUtsTyv69ViHLMHyiFrcEepL7ii_KKawIWqQeEjyLhBSE19Q-Dw8Qq8B3k3gF_86Qv3/s1600/waktu.PNG" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi7h73VEH04dClbS3nRtxOctjIVhP3HLbGUJwOjotcQgNMOcV0XAeKli6cvHY9_erXkQzOY-8W-_hUtsTyv69ViHLMHyiFrcEepL7ii_KKawIWqQeEjyLhBSE19Q-Dw8Qq8B3k3gF_86Qv3/s1600/waktu.PNG" /></a></div>
ikbal achmad fahreza 26http://www.blogger.com/profile/18159349729659542082noreply@blogger.com0tag:blogger.com,1999:blog-5523624169352417795.post-27127231254352595892012-11-26T04:14:00.002-08:002012-11-26T04:22:23.676-08:00Definisi dan dasar-dasar thread<h2 class="title">
<br />
</h2>
Definisi Thread<br />Sebuah thread merupakan sebuah pengontrol aliran program. Untuk lebih mudahnya,<br />bayangkanlah thread sebagai sebuah proses yang akan dieksekusi didalam sebuah<br />program tertentu. Penggunaan sistem operasi modern saat ini telah mendukung<br />kemampuan untuk menjalankan beberapa program. Misalnya, pada saat Anda mengetik<br />sebuah dokumen di komputer Anda dengan menggunakan text editor, dalam waktu yang<br />bersamaan Anda juga dapat mendengarkan musik, dan surfing lewat internet di PC<br />Anda. Sistem operasi yang telah terinstal dalam computer Anda itulah yang<br />memperbolehkan Anda untuk menjalankan multitaskting. Seperti itu juga sebuah<br />program (ibaratkan di PC Anda), ia juga dapat mengeksekusi beberapa proses secara<br />bersama-sama(ibaratkan beberapa aplikasi berbeda yang bekerja pada PC Anda).<br />Sebuah contoh aplikasi adalah HotJava browser yang memperbolehkan Anda untuk<br />browsing terhadap suatu page, bersamaan dengan mendownload object yang lain,<br />misalnya gambar, memainkan animasi, dan juga file audio pada saat yang bersamaan.<br />
State dari Thread<br />Sebuah thread memungkinkan untuk memiliki beberapa state:<br />1. Running<br />Sebuah thread yang pada saat ini sedang dieksekusi dan didalam control dari CPU.<br />2. Ready to run<br />Thread yang sudah siap untuk dieksekusi, tetapi masih belum ada kesempatan untuk<br />melakukannya.<br />3. Resumed<br />Setelah sebelumnya di block atau diberhentikan sementara, state ini kemudian siap<br />untuk dijalankan.<br />4. Suspended<br />Sebuah thread yang berhenti sementara, dan kemudian memperbolehkan CPU untuk<br />menjalankan thread lain bekerja.<br />5. Blocked<br />Sebuah thread yang di-block merupakan sebuah thread yang tidak mampu berjalan,<br />karena ia akan menunggu sebuah resource tersedia atau sebuah event terjadi.<br />
Prioritas<br />Untuk menentukan thread mana yang akan menerima control dari CPU dan akan<br />dieksekusi pertama kali, setiap thread akan diberikan sebuah prioritas. Sebuah prioritas<br />adalah sebuah nilai integer dari angka 1 sampai dengan 10, dimana semakin tinggi<br />prioritas dari sebuah thread, berarti semakin besar kesempatan dari thread tersebut<br />untuk dieksekusi terlebih dahulu.<br />Sebagai contoh, asumsikan bahwa ada dua buah thread yang berjalan bersama-sama.<br />Thread pertama akan diberikan prioritas nomor 5, sedangkan thread yang kedua<br />memiliki prioritas 10. Anggaplah bahwa thread pertama telah berjalan pada saat thread<br />kedua dijalankan. Thread kedua akan menerima control dari CPU dan akan dieksekusi<br />pada saat thread kedua tersebut memiliki prioritas yang lebih tinggi dibandingkan thread<br />yang pada saat itu tengah berjalan. Salah satu contoh dari skenario ini adalah context<br />switch.<br />Sebuah context switch terjadi apabila sebagian dari thread telah dikontrol oleh CPU dari<br />
thread yang lain. Ada beberapa skenario mengenai bagaimana cara kerja dari context<br />switch. Salah satu skenario adalah sebuah thread yang sedang berjalan memberikan<br />kesempatan kepada CPU untuk mengontrol thread lain sehingga ia dapat berjalan.<br />Dalam kasus ini, prioritas tertinggi dari thread adalah thread yang siap untuk menerima<br />kontrol dari CPU. Cara yang lain dari context switch adalah pada saat sebuah thread<br />yang sedang berjalan diambil alih oleh thread yang memiliki prioritas tertinggi seperti<br />yang telah dicontohkan sebelumnya.<br />Hal ini juga mungkin dilakukan apabila lebih dari satu CPU tersedia, sehingga lebih dari<br />satu prioritas thread yang siap untuk dijalankan. Untuk menentukan diantara dua thread<br />yang memiliki prioritas sama untuk menerima kontrol dari CPU, sangat bergantung<br />kepada sistem operasi yang digunakan. Windows 95/98/NT menggunakan time-slicing<br />dan round-robin untuk menangani kasus ini. Setiap thread dengan prioritas yang sama<br />akan diberikan sebuah jangka waktu tertentu untuk dieksekusi sebelum CPU mengontrol<br />thread lain yang memiliki prioritas yang sama. Sedangkan Solaris, ia akan membiarkan<br />sebuah thread untuk dieksekusi sampai ia menyelesaikan tugasnya.
ikbal achmad fahreza 26http://www.blogger.com/profile/18159349729659542082noreply@blogger.com0tag:blogger.com,1999:blog-5523624169352417795.post-50955829582221191762012-11-26T04:13:00.002-08:002012-11-26T04:22:23.684-08:00Swing komponen
<br />
<div class="widget HTML" id="HTML8">
<div class="widget-content">
<div width="100%">
<br />
</div>
</div>
</div>
<div class="ptitle">
<a href="http://www.blogger.com/blogger.g?blogID=5523624169352417795" name="5997627773383349586"></a>
<h2 class="title">
<br />
</h2>
</div>
<table class="tutorialTable"><tbody>
<tr><td><span><b>JPasswordField</b></span> </td><td> <span> <b>bidang khusus teks untuk entri password</b></span> </td></tr>
<tr><td> <span> JEditorPane dan JTextPane</span> </td><td> <span> memberikan dukungan untuk menampilkan dan mengedit konten multi-dikaitkan, seperti HTML dan RTF.</span> </td></tr>
<tr><td> <span> JSpinner</span> </td><td> <span> menyediakan pilihan dari serangkaian memerintahkan nilai standar</span> </td></tr>
<tr><td> <span> JToggleButton</span> </td><td> <span> menawarkan tombol yang tetap tertekan saat dipilih.</span> </td></tr>
<tr><td> <span> JSlider</span> </td><td> <span> seperti komponen Scrollbar, menawarkan berbagai petunjuk untuk membantu pengguna memilih nilai.</span> </td></tr>
<tr><td> <span> JProgressBar</span> </td><td> <span> memungkinkan pengguna untuk secara visual melihat kemajuan dari suatu kegiatan.</span> </td></tr>
<tr><td> <span> JFormattedTextField</span> </td><td> <span> menyediakan bantuan untuk input teks diformat, seperti nilai-nilai numerik, nomor telepon</span> </td></tr>
<tr><td> <span> JTable</span> </td><td> <span> menampilkan dua dimensi baris dan kolom informasi</span> </td></tr>
<tr><td> <span> JTree</span> </td><td> <span> mendukung tampilan data hirarkis.</span> </td></tr>
<tr><td> <span> JToolTip</span> </td><td> <span> menawarkan tips berguna.</span> </td></tr>
<tr><td> <span> JToolBar</span> </td><td> <span> menawarkan toolbar draggable</span> </td></tr>
<tr><td> <span> JRadioButtonMenuItem</span> </td><td> <span> tombol radio komponen menu.</span> </td></tr>
<tr><td> <span> JSeparator</span> </td><td> <span> Menu ini pemisah bar</span> </td></tr>
<tr><td> <span> JDesktopPane dan JInternalFrame</span> </td><td> <span> Ini sepasang komponen untuk Document Interface Beberapa Windows (MDI).</span> </td></tr>
<tr><td> <span> JOptionPane</span> </td><td> <span> menciptakan jendela pop-up dengan konten bervariasi,</span> </td></tr>
<tr><td> <span> JColorChooser</span> </td><td> <span> untuk memilih warna</span> </td></tr>
<tr><td> <span> JSplitPane</span> </td><td> <span> tempat beberapa komponen di jendela dengan pembagi draggable.</span> </td></tr>
<tr><td> <span> JTabbedPane</span> </td><td> <span> tab panel</span></td></tr>
</tbody></table>
ikbal achmad fahreza 26http://www.blogger.com/profile/18159349729659542082noreply@blogger.com0tag:blogger.com,1999:blog-5523624169352417795.post-40733896093571220242012-11-26T04:10:00.002-08:002012-11-26T04:22:23.681-08:00Merancang GUI<h2 class="title">
<a href="http://www.komodonet.net/2012/11/merancang-gui.html">Merancang GUI</a>
</h2>
<span>Widgets
(yaitu komponen atau kontrol) yang diatur dalam cara yang logis dan
menyenangkan dengan menggunakan pendekatan berlapis di mana setiap
lapisan menggunakan manajer layout yang sesuai.</span> <span> Dengar-dan-merasa memungkinkan desainer mengontrol rendering kontrol.</span> <span> Menu, toolbar dan popup juga dibahas.</span> <br />
<div class="c">
<table class="col"><tbody>
<tr><td><ul>
<li> <span> <a href="http://translate.googleusercontent.com/translate_c?depth=1&hl=id&rurl=translate.google.co.id&sl=en&tl=id&twu=1&u=http://home.cogeco.ca/%7Eve3ll/jatutord.htm&usg=ALkJrhjsypZVXymgs4k0dMETz-dXDRvljQ#lo">Tata Letak Manajer</a></span> </li>
<li> <span> <a href="http://translate.googleusercontent.com/translate_c?depth=1&hl=id&rurl=translate.google.co.id&sl=en&tl=id&twu=1&u=http://home.cogeco.ca/%7Eve3ll/jatutord.htm&usg=ALkJrhjsypZVXymgs4k0dMETz-dXDRvljQ#la">Layered Desain</a></span> </li>
</ul>
</td><td><ul>
<li> <span> <a href="http://translate.googleusercontent.com/translate_c?depth=1&hl=id&rurl=translate.google.co.id&sl=en&tl=id&twu=1&u=http://home.cogeco.ca/%7Eve3ll/jatutord.htm&usg=ALkJrhjsypZVXymgs4k0dMETz-dXDRvljQ#lf">Lihatlah Dan Rasakan</a></span> </li>
<li> <span> <a href="http://translate.googleusercontent.com/translate_c?depth=1&hl=id&rurl=translate.google.co.id&sl=en&tl=id&twu=1&u=http://home.cogeco.ca/%7Eve3ll/jatutord.htm&usg=ALkJrhjsypZVXymgs4k0dMETz-dXDRvljQ#au">Auditory Isyarat</a></span> </li>
</ul>
</td><td><ul>
<li> <span> <a href="http://translate.googleusercontent.com/translate_c?depth=1&hl=id&rurl=translate.google.co.id&sl=en&tl=id&twu=1&u=http://home.cogeco.ca/%7Eve3ll/jatutord.htm&usg=ALkJrhjsypZVXymgs4k0dMETz-dXDRvljQ#me">Menubars, Toolbars, popups</a></span> </li>
</ul>
</td></tr>
</tbody></table>
</div>
<h2 id="lo">
<span> Tata Letak Manajer</span> </h2>
<span> <em>Manajer tata letak</em> kelas yang mengontrol ukuran, posisi dan penyelarasan komponen dalam sebuah <em>wadah</em> sehingga mereka tidak kerumunan sama lain atau tumpang tindih.</span> <span> Wadah adalah komponen dan dapat <a href="http://translate.googleusercontent.com/translate_c?depth=1&hl=id&rurl=translate.google.co.id&sl=en&tl=id&twu=1&u=http://home.cogeco.ca/%7Eve3ll/jatutord.htm&usg=ALkJrhjsypZVXymgs4k0dMETz-dXDRvljQ#la">berlapis</a> (manajer tata letak yaitu dalam manajer tata letak).</span> <span> Java menyediakan manajer tata letak yang berkisar dari yang sederhana: <em>FlowLayout, BoxLayout</em> dan <em>GridLayout</em> untuk tujuan khusus:. <em>BorderLayout</em> dan <em>CardLayout</em> ke <em>GridBagLayout</em> sangat fleksibel <a href="http://translate.googleusercontent.com/translate_c?depth=1&hl=id&rurl=translate.google.co.id&sl=en&tl=id&twu=1&u=http://docs.oracle.com/javase/tutorial/uiswing/layout/spring.html&usg=ALkJrhiynO9bmZCStYdmeZTOSG_RcSZNKA">SpringLayout</a>
adalah manajer layout baru (tapi kompleks) yang menggunakan konsep mata
air dan struts untuk membantu merancang dengan baik- diposisikan
kontainer.</span> <span> Gunakan metode <em>setLayout ()</em> untuk mengatur ulang panel konten ke manajer layout yang spesifik:</span><br />
<a href="http://www.blogger.com/blogger.g?blogID=5523624169352417795" name="more"></a> <br />
<pre><span> JPanel p = new JPanel (); / / membuat panel pertama</span>
<span> p.setLayout (new BorderLayout ()); / / kemudian manajer ulang</span> </pre>
<span> Gunakan <em>setPreferedSize (w, h)</em> pada suatu obyek sehingga tampilan preset.</span> <span> Setiap manajer tata letak komponen pada skala resize dengan cara yang berbeda.</span> <span> Gunakan <em>setMinimumSize (w, h)</em> pada objek untuk mencegah bungkus atau hilangnya tampilan komponen.</span> <br />
<div id="f">
<span> <a href="http://translate.googleusercontent.com/translate_c?depth=1&hl=id&rurl=translate.google.co.id&sl=en&tl=id&twu=1&u=http://home.cogeco.ca/%7Eve3ll/jatutord.htm&usg=ALkJrhjsypZVXymgs4k0dMETz-dXDRvljQ#sc">FlowLayout</a> mengatur komponen dalam baris di lebar dari sebuah wadah.</span> <span> Komponen FlowLayout otomatis membungkus atau pindah ke baris berikutnya bila diperlukan.</span> <span>
Bila Anda menggunakan FlowLayout, masing-masing komponen mempertahankan
ukuran standar (yaitu JButton akan menjadi cukup besar untuk menampung
teks nya), tidak seperti BorderLayout dimana komponen Anda menambahkan
mengisi daerah mereka.</span> <span>
Juga, dengan FlowLayout, ketika Anda mengubah ukuran jendela,
masing-masing komponen mempertahankan ukurannya (tapi mungkin menjadi
sebagian dikaburkan atau mengubah posisi atau bungkus).</span> <span>
Jika Anda perlu untuk memaksa bungkus (seperti menggunakan <br />
dalam HTML), menggunakan dua kontainer, satu untuk setiap baris.</span> <span> FlowLayout adalah default untuk objek JPanel.</span> <span> Komponen yang FlowLayout pusat dibenarkan secara default.</span> <span> Jika Anda membutuhkan pembenaran kiri komponen, ulang tata letak keselarasan dengan:</span> </div>
<pre> <span> setLayout (baru FlowLayout (FlowLayout.LEFT));</span> </pre>
<span> <a href="http://translate.googleusercontent.com/translate_c?depth=1&hl=id&rurl=translate.google.co.id&sl=en&tl=id&twu=1&u=http://home.cogeco.ca/%7Eve3ll/jatutord.htm&usg=ALkJrhjsypZVXymgs4k0dMETz-dXDRvljQ#sc">BoxLayout</a> tempat item dalam satu baris atau kolom. <em>Lem</em>
dapat ditambahkan sebagai pengisi ruang yang fleksibel menggunakan
metode Box.createGlue (), Box.createHorizontalGlue () dan
Box.createVerticalGlue () <em>Struts</em> dapat ditambahkan sebagai
pengisi ruang tetap menggunakan. metode createRigidArea (redup),
createHorizontalStrut (w) dan createVerticalStrut (h) <span>Catatan:.</span> BoxLayout tidak biasa dalam hal itu harus menggunakan pane dan bukan frame sebagai wadahnya.</span> <span> Sebuah contoh pengaturan BoxLayout untuk keselarasan baris adalah:</span> <br />
<pre> <span> p.setLayout (new BoxLayout (p, BoxLayout.X_AXIS));</span> </pre>
<span> <a href="http://translate.googleusercontent.com/translate_c?depth=1&hl=id&rurl=translate.google.co.id&sl=en&tl=id&twu=1&u=http://home.cogeco.ca/%7Eve3ll/jatutord.htm&usg=ALkJrhjsypZVXymgs4k0dMETz-dXDRvljQ#sc">GridLayout</a> menggunakan baris sederhana dan metafora kolom grid untuk tata letak.</span> <span> Semua komponen dari lebar dan tinggi yang sama dan skala yang sama ketika diubah ukurannya.</span> <span> Format konstruktor adalah:</span> <br />
<pre><span> setLayout (new GridLayout (baris, cols, x-spasi, y-spasi));</span> </pre>
<div id="b">
<span> <a href="http://translate.googleusercontent.com/translate_c?depth=1&hl=id&rurl=translate.google.co.id&sl=en&tl=id&twu=1&u=http://home.cogeco.ca/%7Eve3ll/jatutord.htm&usg=ALkJrhjsypZVXymgs4k0dMETz-dXDRvljQ#sc">BorderLayout</a> digunakan ketika Anda ingin menambahkan komponen untuk maksimal lima bagian diatur dalam <em>Utara, Selatan, Timur, Barat</em> dan posisi <em>Center.</em></span> <span> BorderLayout adalah manajer default untuk semua panel konten.</span> <span> Jika Anda menempatkan tepat lima komponen dalam BorderLayout wadah dan penggunaan, masing-masing komponen mengisi satu wiayah.</span> <span> Ketika program dijalankan, compiler menentukan ukuran yang tepat dari setiap komponen berdasarkan isi komponen.</span> <span> Ketika Anda mengubah ukuran wadah yang memiliki BorderLayout, daerah juga berubah dalam ukuran.</span> <span>
Bila Anda menempatkan kurang dari lima komponen dalam BorderLayout
wadah dan penggunaan, setiap daerah komponen kosong menghilang dan
komponen sisa memperluas untuk mengisi ruang yang tersedia.</span> </div>
<span> <a href="http://translate.googleusercontent.com/translate_c?depth=1&hl=id&rurl=translate.google.co.id&sl=en&tl=id&twu=1&u=http://home.cogeco.ca/%7Eve3ll/jatutord.htm&usg=ALkJrhjsypZVXymgs4k0dMETz-dXDRvljQ#sc">GridBagLayout</a> memungkinkan menempatkan tepat dan ukuran dari setiap widget.</span> <span> Gunakan sifat: jangkar, gridheight, gridwidth, gridx, gridy, mengisi, ipadx, ipady, weightx dan berat.</span> <br />
<span> <a href="http://translate.googleusercontent.com/translate_c?depth=1&hl=id&rurl=translate.google.co.id&sl=en&tl=id&twu=1&u=http://home.cogeco.ca/%7Eve3ll/jatutord.htm&usg=ALkJrhjsypZVXymgs4k0dMETz-dXDRvljQ#sc">CardLayout</a> menyajikan widget ditumpuk mirip dengan setumpuk kartu.</span> <span> Hal ini dapat digunakan untuk mempertahankan panel statis tombol kontrol dan lain panel yang lebih dinamis di alam.</span> <span>
Penggunaan umum adalah penampil slideshow mana kontrol yang statis dan
bingkai foto sebenarnya satu set panel kartu yang disajikan sebagai
tombol yang ditekan atau timer disebut.</span> <br />
<h2 id="la">
<span> Layered Desain</span> </h2>
<span>
Desain berlapis adalah pola arsitektur yang struktur aplikasi sehingga
mereka dapat dipecah menjadi kelompok subtasks sedemikian rupa sehingga
setiap kelompok subtasks berada pada tingkat tertentu abstraksi.</span> <span> Interface yang paling GUI menggunakan lapisan nested panel, sering dengan manajer tata letak yang berbeda.</span> <span> Sebagai contoh desain berlapis, di sini adalah kode untuk tata letak dua kolom.</span> <span> Kolom kiri adalah satu set pilihan masukan.</span> <span> Kolom kanan adalah seperangkat tombol 'go'.</span> <span> Sebuah <em>GridLayout</em> kolom dua <em>tidak</em> digunakan karena menganggap kedua kolom dan baris akan sama ukuran.</span> <span> Sebaliknya kita membagi layar dengan <em>BorderLayout</em> dan kemudian menggunakan dua <em>GridLayouts</em> kolom tunggal.</span> <span> The GridLayout kiri lebih lanjut dibagi dengan menggunakan FlowLayout untuk captioning.</span> <span> Potong dan paste berikut ke sebuah file yang bernama Layer.java, mengkompilasi dan menjalankan untuk melihat efek <span>Catatan:.</span> The <a href="http://translate.googleusercontent.com/translate_c?depth=1&hl=id&rurl=translate.google.co.id&sl=en&tl=id&twu=1&u=http://home.cogeco.ca/%7Eve3ll/jatutorc.htm&usg=ALkJrhjwpdbyNX0ZeC5PgXcdpwsyfLvDIQ#mvc">Model MVC</a> digunakan untuk mengisolasi pandangan coding coding dari tindakan model.</span> <br />
<div class="c">
<textarea class="all" cols="72" readonly="readonly" rows="90"><span
onmouseover="_tipon(this)" onmouseout="_tipoff()"><span
class="google-src-text" style="direction: ltr; text-align:
left">import java.awt.*; import java.awt.event.*; import
javax.swing.*; public class Layer // driver function { public static
void main(String args[]) { try
{UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());}
catch (Exception e) {;} Layer_Model model=new Layer_Model(); Layer_View
view=new Layer_View("Batch IO Utility"); Layer_Controller controller=new
Layer_Controller(model,view); } } class Layer_Model // simple actions
for demo { public void run(){System.out.println("Pressed
Run");System.exit(0);} public void exit(){System.out.println("Pressed
Exit");System.exit(0);} public void help(){System.out.println("Pressed
Help");System.exit(0);} public void mail(){System.out.println("Pressed
Mail");System.exit(0);} } class Layer_View extends JFrame // sets up the
GUI { //declare input area components String rlabels[]={"Site URL:
","Style: ","Report: "}; JTextField siteField=new JTextField(15);
JComboBox styleBox=new JComboBox(); JTextField fileField=new
JTextField(10); JButton fileBrow=new JButton("Browse..."); JPanel
report=new JPanel(new GridLayout(4,1,2,2)); //declare button components
JButton run=new JButton("Run the Utility"); JButton exit=new
JButton("Exit After Save"); JButton help=new JButton("Helpful Hints");
JButton mail=new JButton("Contact Author"); JPanel buttons=new
JPanel(new GridLayout(4,1,2,2)); //BorderLayout pane to hold
input/button JPanels JPanel main=new JPanel(new BorderLayout()); public
Layer_View(String title)// constructor method for GUI {
super(title);setBounds(100,100,500,180);setResizable(true);
setDefaultCloseOperation(DO_NOTHING_ON_CLOSE); //construct input
fieldset styleBox.addItem("Tipue database format");
styleBox.addItem("Comma delimited ASCII"); styleBox.addItem("Tab
delimited ASCII"); for (int i=0; i<3;i++) { JLabel lab=new
JLabel(rlabels[i]); lab.setForeground(Color.black); JPanel p=new
JPanel(new FlowLayout(FlowLayout.LEFT)); p.add(lab); switch (i) { case
0: p.add(siteField); break; case 1: p.add(styleBox); break; case 2:
p.add(fileField); p.add(fileBrow); break; } report.add(p); } //construct
button controls buttons.add(run); buttons.add(exit); buttons.add(help);
buttons.add(mail); //complete the panel assembly
main.add("Center",report); main.add("East",buttons);
this.getContentPane().add("Center",main);setVisible(true); } public void
buttonActionListeners(ActionListener al) {
run.setActionCommand("run");run.addActionListener(al);
exit.setActionCommand("exit");exit.addActionListener(al);
help.setActionCommand("help");help.addActionListener(al);
mail.setActionCommand("mail");mail.addActionListener(al); } } class
Layer_Controller implements ActionListener { Layer_Model model;
Layer_View view; public Layer_Controller(Layer_Model model, Layer_View
view) { this.model=model; this.view=view;
view.buttonActionListeners(this); } // methods dealing with interactions
performed on the View.</span> import java.awt *; java.awt.event
impor *;. import javax.swing *;.. Lapisan public class / / driver fungsi
{public static void main (String args []) {try
{UIManager.setLookAndFeel (UIManager. getSystemLookAndFeelClassName
());} catch (Exception e) {;} Layer_Model model = new Layer_Model ();
Layer_View view = new Layer_View ("Batch IO Utility"); Layer_Controller
controller = new Layer_Controller (model, tampilan);}} Layer_Model kelas
/ / sederhana tindakan untuk demo {public void run ()
{System.out.println ("Run ditekan"); System.exit (0);} void keluar
public () {System.out.println ("Keluar ditekan") , System.exit (0);}
void bantuan publik () {System.out.println ("Bantuan ditekan");
System.exit (0);} void mail publik () {System.out.println ("Surat
ditekan "); System.exit (0);}} class Layer_View extends JFrame / / set
up GUI {/ / mendeklarasikan komponen masukan daerah String rlabels [] =
{" Site URL: "," Style: "," Laporan: " }; JTextField siteField = new
JTextField (15); JComboBox styleBox = new JComboBox (); JTextField
fileField = new JTextField (10); JButton fileBrow = new JLabel ("Browse
..."); JPanel laporan = new JPanel (new GridLayout (4,1,2,2)); / /
mendeklarasikan komponen tombol JButton run = new JLabel ("Jalankan
Utility"), keluar JButton = new JButton ("Keluar Setelah Save"), bantuan
JButton = new JButton ("Bermanfaat Petunjuk "); JButton mail = new
JLabel (" Contact Author "), tombol = new JPanel JPanel (new GridLayout
(4,1,2,2)); pane / / BorderLayout untuk menahan masukan / tombol JPanels
JPanel utama = JPanel baru (new BorderLayout ()); public Layer_View
(String judul) metode / / konstruktor untuk GUI {super (judul);
setBounds (100100500180); setResizable (true); setDefaultCloseOperation
(DO_NOTHING_ON_CLOSE); / / membangun masukan fieldset styleBox.addItem
(" Tipue database format "); styleBox.addItem (" Comma delimited ASCII
"); styleBox.addItem (" Tab delimited ASCII "), karena (int i = 0; i
<3, i + +) {JLabel lab = new JLabel (rlabels [ i]); lab.setForeground
(Color.black), JPanel p = new JPanel (new FlowLayout
(FlowLayout.LEFT)); p.add (lab), switch (i) {case 0: p.add (siteField);
break; Kasus 1: p.add (styleBox); break; Kasus 2: p.add (fileField);
p.add (fileBrow); break;} report.add (p);} / / membangun tombol kontrol
buttons.add (run), buttons.add (exit), buttons.add (membantu),
buttons.add (mail), / / melengkapi panel perakitan main.add ("Center",
laporan), main.add ("Timur", tombol);. this.getContentPane () add
("Center", utama), setVisible (true);} buttonActionListeners public void
(ActionListener al) {run.setActionCommand ("run");
run.addActionListener (al); keluar. setActionCommand ("exit");
exit.addActionListener (al); help.setActionCommand ("help");
help.addActionListener (al); mail.setActionCommand ("mail");
mail.addActionListener (al);}} class Layer_Controller
mengimplementasikan ActionListener {Layer_Model model; Layer_View
pandangan, masyarakat Layer_Controller (Layer_Model model, Layer_View
tampilan) {this.model = model; this.view = pandangan,
view.buttonActionListeners (ini);} / / metode yang berhubungan dengan
interaksi dilakukan pada View.</span> <span
onmouseover="_tipon(this)" onmouseout="_tipoff()"><span
class="google-src-text" style="direction: ltr; text-align:
left">public void actionPerformed(ActionEvent ae) { String
action_com=ae.getActionCommand(); if (action_com.equals("run"))
{model.run();} else if (action_com.equals("help")) {model.help();} else
if (action_com.equals("mail")) {model.mail();} else if
(action_com.equals("exit")) {model.exit();} } }</span> public void
actionPerformed (ActionEvent ae) {String action_com =
ae.getActionCommand (), jika (action_com.equals ("run")) {model.run ();}
else if (action_com.equals ("help")) {Model bantuan ();.} else if
(action_com.equals ("mail")) {model.mail ();} else if (action_com.equals
("exit")) {model.exit ();}}}</span> </textarea></div>
<span> <span>CATATAN:</span>
Tombol-tombol yang dibuat oleh demo ini tidak menyediakan fungsi
tersirat mereka tetapi hanya mencetak pesan dan mengakhiri program.</span> <span> Untuk sepenuhnya melaksanakan aksi tombol, konsultasikan baik <a href="http://home.cogeco.ca/%7Eve3ll/jatutora.htm#ev">pendengar basic event</a> dengan bersarang jika konstruksi atau <a href="http://home.cogeco.ca/%7Eve3ll/jatutorc.htm#ev">pendengar acara canggih</a> .</span> <br />
<h2 id="lf">
<span> Tampilan dan Nuansa</span> </h2>
<span> <em>Ayunan</em>
memungkinkan mode render tiga: lihat bersatu 'Java' dan merasa
[default], tampilan platform asli, atau melihat platform tertentu itu.</span> <span> Jika Anda ingin mengubah dari default ke <em>tampilan platform asli,</em> tambahkan berikut pada awal metode kelas pendorong utama:</span> <br />
<pre> <span> try {UIManager.setLookAndFeel (UIManager.getSystemLookAndFeelClassName ());}</span>
<span> catch (Exception e) {}</span> </pre>
<span> Jika Anda ingin menggunakan tampilan selain default atau yang asli, Anda harus terlebih dahulu memeriksa apa yang tersedia.</span> <span> Untuk alasan hak cipta, pandangan Mac tidak tersedia di Windows dan sebaliknya.</span> <span> Untuk memeriksa apa gunanya tersedia:</span> <br />
<pre> <span> UIManager.LookAndFeelInfo [] = laf UIManager.GetInstalledLookAndFeels ();</span>
<span> for (int i = 0; i
<span> {System.out.println ("Kelas Nama:". + Laf [i] getClassName ());</span>
<span> System.out.println ("Nama:". + Laf [i] getName ());}</span> </span></pre>
<span>
Jika Anda ingin mengubah tampilan setelah memulai (misalnya membiarkan
pengguna memilih tampilan) pastikan untuk membuat semua komponen
memperbarui penampilan mereka.</span> <span>
Panggilan kelas SwingUtilities metode updateComponentTreeUI (Komponen)
dengan komponen antarmuka pengguna utama seperti objek JFrame sebagai
argumen.</span> <br />
<h2 id="au">
<span> Auditory Isyarat</span> </h2>
<span> Isyarat pendengaran adalah potongan suara yang terjadi sebagai bagian dari acara GUI seperti tombol tekan atau popup window.</span> <span> Java menggunakan L nya & F manager untuk mengakses file suara umum untuk Logam, Mac atau Windows.</span> <span> Ini menggunakan daftar putar untuk jenis tertentu peristiwa seperti dekat, kesalahan dan item menu.</span> <span> Ambil <a href="http://home.cogeco.ca/%7Eve3ll/jatutord.htm#sc">Audio</a> untuk demo.</span> <br />
<h2 id="me">
<span> Menubars, Toolbars, popups</span> </h2>
<span> <em>Bar penarikan Dropdown / menu</em> adalah menu serupa dengan yang muncul di bagian atas program Windows yang paling.</span> <span> Bar menu dibangun dari kelas <em>JMenuBar.</em></span> <span> Menu (bar item alias) yang dibangun dari kelas <em>JMenu</em> dan item menu dari kelas <em>JMenuItem.</em></span> <span> Pemisah item yang dapat ditambahkan ke menu dengan <em>addSeparator ()</em> atau dimasukkan dengan <em>insertSeparator (posn).</em></span> <span> Item menu dapat dinonaktifkan (berwarna abu-abu) <em>dengan) setEnabled (palsu)</em> dan diuji dengan <em>isEnabled (.</em></span> <span> Item menu dapat memiliki cara <em>pintas</em> hotkey ditambahkan dengan menggunakan <em>setMnemonic (char).</em> Kunci <em>Accelerator</em> ditambahkan dengan <em>setAccelerator ().</em></span> <span> Menubar ditambahkan ke rangka utama dengan menggunakan <em>this.setJMenuBar (obj).</em> <a href="http://home.cogeco.ca/%7Eve3ll/jatutord.htm#sc">MyMenu</a>
menunjukkan banyak fitur dari kelas menu termasuk mnemonik, akselerator
bersemangat untuk item platform, kotak centang & radiobutton dan
ikon.</span> <br />
<span> <em>Dockable toolbar</em> dapat dibangun dari kelas <em>JToolBar. JToolBar (SwingConstants.VERTICAL)</em> menimpa orientasi default.</span> <span> <em>Add ()</em> metode menambahkan komponen yang sering ikon. <em>SetFloatable (bool)</em> dan <em>setRollover (bool)</em> mengubah tampilan toolbar.</span> <span> Toolbar selalu sepenuhnya terkena. <a href="http://home.cogeco.ca/%7Eve3ll/jatutord.htm#sc">MyToolBar</a> menunjukkan fitur dari kelas toolbar termasuk kelas tindakan.</span> <br />
<span> <em>Konteks menu popup sensitif</em> diungkapkan oleh beberapa aksi pengguna (seperti klik kanan) dan terlihat mirip dengan kotak dialog. <a href="http://home.cogeco.ca/%7Eve3ll/jatutord.htm#sc">MyPop</a> menunjukkan <em>JPopupMenu</em> dan beberapa fitur dari kelas menu popup termasuk pendengar khusus.</span> <br />
<h2 id="sc">
<span> Tutorial Source Code</span> </h2>
<span> Mendapatkan sumber untuk FlowGUI, BoxGUI, GridGUI, BorderGUI, GridBagGUI dan CardLayoutGUI menggunakan MVC sini.</span> <span> Kompilasi demo masing-masing dan perhatikan bagaimana pembentukan kerak pada resize bekerja.</span>
<a class="share-button sb-email" href="http://www.blogger.com/share-post.g?blogID=8303021206881435638&postID=90288615986550476&target=email" target="_blank" title="Kirimkan Ini lewat Email">
<span class="share-button-link-text">Kirimkan Ini lewat Email</span></a><br />ikbal achmad fahreza 26http://www.blogger.com/profile/18159349729659542082noreply@blogger.com0tag:blogger.com,1999:blog-5523624169352417795.post-47789903286172829432012-11-26T04:02:00.003-08:002012-11-26T04:22:23.682-08:00Cara Koneksi Database Dengan Java Netbeans <h2 class="title">
<br />
</h2>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhI3_JajeCMbKCneZ3E3ICnFHz-PYaVn98AAaqQ2NHY1QXcvpadHBB54L-9CwV5PRCHJ8FY7FqhhuwBl0ZK3kS3i3LSDdGFkxnk57QXBrB6WtSUPq6hQx22ah7VjRh4_vRqMiVi4qDIgL21/s1600/mysql-java-jdbc1.jpg" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="261" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhI3_JajeCMbKCneZ3E3ICnFHz-PYaVn98AAaqQ2NHY1QXcvpadHBB54L-9CwV5PRCHJ8FY7FqhhuwBl0ZK3kS3i3LSDdGFkxnk57QXBrB6WtSUPq6hQx22ah7VjRh4_vRqMiVi4qDIgL21/s400/mysql-java-jdbc1.jpg" width="400" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
</div>
<div style="text-align: justify;">
Selamat datang para pengunjung setia <a href="http://kandangkuaja.blogspot.com/" rel="nofollow" target="_blank">Kandangkuaja</a>, kali ini <a href="https://plus.google.com/117404395541089720401/posts" rel="me" target="_blank">Mas Idris</a> akan mencoba untuk berbagi tips <a href="http://kandangkuaja.blogspot.com/2012/07/cara-koneksi-database-dengan-java.html" rel="nofollow" target="_blank">Cara koneksi database dengan java netbeans</a>.
Mengapa saya membuat tips tentang bagaimana cara mengkoneksikan
database di pemograman java netbeans karena beberapa hari yang lalu
sebelum tulisan ini saya buat, saya telah menjalani Ujian Akhir Semester
(UAS) dan dengan mata kuliah saya adalah Pempograman III Java Netbeans
dan salah satu dari soalnya adalah tentang script koneksi ke database.</div>
<div style="text-align: justify;">
</div>
<div style="text-align: justify;">
Oke, kita akan segera memulai pelajaran kali ini, silahkan lihat caranya di bawah ini :</div>
<div style="text-align: justify;">
1. Munculkan Libraries <b>MYSQL JDBC</b> Driver pada dokumen Libraries dengan cara klik kanan dan pilih Add Library pada dokumen Libraries anda.</div>
<div style="text-align: justify;">
2. Buat class <b>Koneksi</b> seperti di bawah ini :</div>
<br />
<blockquote class="tr_bq">
<span style="font-family: 'Courier New', Courier, monospace;">import java.sql.*;<br />public class <b>Koneksi</b> { <br /> public <b>Koneksi</b> () {<br /> }<br /> public Connection OpenKoneksi () throws SQLException<br /> {<br /> Connection conn = null;<br /> try {<br /> Class.forName("org.gjt.mm.mysql.Driver");<br /> conn = DriverManager.getConnection("jdbc:mysql://localhost/<b><span style="color: red;">Nama_Database_Anda</span></b>","root","");<br /> return conn;<br /> }<br /> catch(SQLException Ex) {<br /> System.out.println("Database anda tidak dapat terbaca");<br /> return null;<br /> }<br /> catch(Exception e) {<br /> System.out,println("Maaf, anda tidak dapat terhubung ke database");<br /> return null;<br /> }<br /> }<br /> public static void main (String args []) {<br /> // new Koneksi();<br /> }<br />}</span></blockquote>
<br />
<div style="text-align: justify;">
<b><span style="font-size: small;">Keterangan :</span></b></div>
<div style="text-align: justify;">
Tulisan Koneksi berbentuk <b>huruf tebal </b>adalah nama Class anda, silahkan buat nama Class anda sendiri saat anda membuat Class Baru di Java Netbeans.</div>
<div style="text-align: justify;">
Tulisan Nama_Database_Anda yang berupa teks <span style="color: red;">warna merah</span> adalah nama Database anda di MySQL Admin anda.</div>
ikbal achmad fahreza 26http://www.blogger.com/profile/18159349729659542082noreply@blogger.com0tag:blogger.com,1999:blog-5523624169352417795.post-91897196190913108852012-11-26T03:58:00.003-08:002012-11-26T04:22:23.715-08:00Cara Menghubungkan Database MySQL ke Netbeans VERSION 2<h2 class="title">
<br />
</h2>
<div class="MsoNormal">
Berikut adalah langkah-langkah menghubungkan database MySQL ke Netbeans
yang saya dapatkan dari pembelajaran salah satu UKM di Kampus saya. </div>
<div class="MsoNormal">
Pertama, run program XAMPP kemudian buka link pada browser
anda localhost/phpmyadmin.</div>
<div class="MsoNormal">
Kedua, pada tampilan PHP My Admin buatlah databasenya.
Namanya optional namun kali ini saya menggunakan nama </div>
<div class="MsoNormal">
db_database.</div>
<div class="MsoNormal">
</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgK84cuMufybzSWBMquI42OY-_Qw8DVCkCmXwUTvUBRGpA9IGRG95V1Tdl-ZsqbkLbbII10dSSO9247fXGh25tzuzb4N2Hw5cGW_dXJkk8shHjrI9EupQwXooBdrUTKnwljuX9Yg0kUt05l/s1600/P1.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="222" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgK84cuMufybzSWBMquI42OY-_Qw8DVCkCmXwUTvUBRGpA9IGRG95V1Tdl-ZsqbkLbbII10dSSO9247fXGh25tzuzb4N2Hw5cGW_dXJkk8shHjrI9EupQwXooBdrUTKnwljuX9Yg0kUt05l/s400/P1.png" width="400" /></a></div>
<div class="MsoNormal">
<br />
<a href="http://www.blogger.com/blogger.g?blogID=8303021206881435638" name="more"></a><br /><br />
Ketiga, buatlah java applicationnya. Dengan cara klik tombol
new project pada program netbean. Dan kemudian Pilih Categories “Java” dan Project “Java Application”. Kemudian
klik next setelah itu beri nama dan lokasi file. Klik finish.</div>
<div class="MsoNormal">
</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjwNMFgLcUid6f6WA6T9R8a7ATWTgtQ4Y3Gnc1wn1fQwGyfcNeXfEJgU_HEJjfqhsniEjEq6l4fkAXBjMgnVnCcB7o7SKIz_uJ8tjLbxw0BPsBC3ydE2roOu62Y2th4ztYExKG-zUZeO9q4/s1600/P2.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="275" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjwNMFgLcUid6f6WA6T9R8a7ATWTgtQ4Y3Gnc1wn1fQwGyfcNeXfEJgU_HEJjfqhsniEjEq6l4fkAXBjMgnVnCcB7o7SKIz_uJ8tjLbxw0BPsBC3ydE2roOu62Y2th4ztYExKG-zUZeO9q4/s400/P2.png" width="400" /></a></div>
<div class="MsoNormal">
</div>
<div class="MsoNormal">
</div>
<div class="MsoNormal">
Keempat, buatlah Packagenya
dengan cara klik kanan pada Source Package new-> Java Package beri nama dan
klik finsih. Setelah itu buat</div>
<div class="MsoNormal">
Java Class pada Java Package tersebut dengan
cara klik kanan new->Java Class beri nama klik finish.</div>
<div class="MsoNormal">
Kelima, tuliskan script
berikut :<br />
import java.sql.Connection;<br />
import java.sql.PreparedStatement;<br />
import java.sql.DriverManager;<br />
import java.sql.ResultSet;<br />
import java.sql.SQLException;<br />
import java.util.logging.Level;<br />
import java.util.logging.Logger;<br />
import javax.management.Query; </div>
<div class="MsoNormal">
public class DBconnection { //Menunjukkan
Class</div>
<div class="MsoNormal">
private Connection con;</div>
<div class="MsoNormal">
private ResultSet rs;</div>
<div class="MsoNormal">
private PreparedStatement ps;</div>
<div class="MsoNormal">
</div>
<div class="MsoNormal">
public Connection getCon() { //press
alt+insert getter=>Connection</div>
<div class="MsoNormal">
if(con==null){</div>
<div class="MsoNormal">
try {</div>
<div class="MsoNormal">
Class.forName("com.mysql.jdbc.Driver"); //press alt+enter Surround Statement
with try-catch</div>
<div class="MsoNormal">
String url =
"jdbc:mysql://localhost:3306/db_latihan";</div>
<div class="MsoNormal">
try {</div>
<div class="MsoNormal">
con =
DriverManager.getConnection(url, "root", ""); //press alt+enter Surround Statement with
try-catch</div>
<div class="MsoNormal">
System.out.println("connection success");</div>
<div class="MsoNormal">
} catch (SQLException ex) {</div>
<div class="MsoNormal">
//Logger.getLogger(DBconnection.class.getName()).log(Level.SEVERE, null,
ex);</div>
<div class="MsoNormal">
System.out.println("connection failed");</div>
<div class="MsoNormal">
}</div>
<div class="MsoNormal">
} catch (ClassNotFoundException ex)
{</div>
<div class="MsoNormal">
//Logger.getLogger(DBconnection.class.getName()).log(Level.SEVERE, null,
ex);</div>
<div class="MsoNormal">
System.out.println("Class
unfounded");</div>
<div class="MsoNormal">
}</div>
<div class="MsoNormal">
}</div>
<div class="MsoNormal">
return con;</div>
<div class="MsoNormal">
}</div>
<div class="MsoNormal">
</div>
<div class="MsoNormal">
public ResultSet getRs() {</div>
<div class="MsoNormal">
return rs;</div>
<div class="MsoNormal">
}</div>
<div class="MsoNormal">
public boolean Queryexecution(String query,
boolean kindofQuery) {</div>
<div class="MsoNormal">
try {</div>
<div class="MsoNormal">
ps = con.prepareStatement(query);</div>
<div class="MsoNormal">
if(kindofQuery){</div>
<div class="MsoNormal">
rs=ps.executeQuery();</div>
<div class="MsoNormal">
}else{</div>
<div class="MsoNormal">
ps.executeUpdate();</div>
<div class="MsoNormal">
}</div>
<div class="MsoNormal">
return true;</div>
<div class="MsoNormal">
} catch (SQLException ex) {</div>
<div class="MsoNormal">
//Logger.getLogger(DBconnection.class.getName()).log(Level.SEVERE,
null, ex);</div>
<div class="MsoNormal">
return false;</div>
<div class="MsoNormal">
}</div>
<div class="MsoNormal">
}</div>
<div class="MsoNormal">
public static void main(String[] args) {</div>
<div class="MsoNormal">
new DBconnection().getCon();</div>
<div class="MsoNormal">
}</div>
<div class="MsoNormal">
}</div>
<div class="MsoNormal">
Keenam, jalankan class dengan
klik kanan pada class run.</div>
<div class="MsoNormal">
</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh1rSZ4QjJwUswMLJLVuINy6l1-o4ByyS5HxdmdSZOUyFuU6tslXVya_fH-VyP3RDOtvotsTm6PFQd-xvbJ_JPwKHvTHDGgJ-KEK3KGDxGoV2h64LhkJEXpEqpug9iKDOvUy4w1uUhV1Pfb/s1600/P3.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="212" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh1rSZ4QjJwUswMLJLVuINy6l1-o4ByyS5HxdmdSZOUyFuU6tslXVya_fH-VyP3RDOtvotsTm6PFQd-xvbJ_JPwKHvTHDGgJ-KEK3KGDxGoV2h64LhkJEXpEqpug9iKDOvUy4w1uUhV1Pfb/s400/P3.png" width="400" /></a></div>
<br />
<br />
<div class="MsoNormal">
Lihat pada Program netbeans bagian bawah, terlihat
"connection success" hal ini berarti program yang kita buat berhasil terhubung.</div>
<div class="MsoNormal">
</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhlGwp0YoJnHOgBpaMnSS1TVD1BffPs6ovvOJlSYY_tj8MnCmGIMaLAz187K8FU8_fQB43cCXYHBlON69uZIuGysHRjZJmBl78PfYwN974X2ozd6D0MLSGhQ86fDiQC1tschyAjMv4boHCw/s1600/Publication2.jpg" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="123" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhlGwp0YoJnHOgBpaMnSS1TVD1BffPs6ovvOJlSYY_tj8MnCmGIMaLAz187K8FU8_fQB43cCXYHBlON69uZIuGysHRjZJmBl78PfYwN974X2ozd6D0MLSGhQ86fDiQC1tschyAjMv4boHCw/s400/Publication2.jpg" width="400" /></a></div>
<br />
Semoga bermanfaat. :)
ikbal achmad fahreza 26http://www.blogger.com/profile/18159349729659542082noreply@blogger.com0tag:blogger.com,1999:blog-5523624169352417795.post-31898470397739656042012-11-26T03:50:00.004-08:002012-11-26T04:22:23.677-08:00Cara memasukkan data kedalam tabel dengan java<header class="single-entry-header">
<h1 class="entry-title">
<br />
</h1>
<a href="http://ifanlumape.wordpress.com/2011/04/19/cara-memasukkan-data-kedalam-tabel-dengan-java/" rel="bookmark" title="6:10 pm"><time class="entry-date" datetime="2011-04-19T18:10:00+00:00" pubdate="">19/04/2011</time></a><span class="byline"> by <span class="author vcard"><a class="url fn n" href="http://ifanlumape.wordpress.com/author/fnnight/" rel="author" title="View all posts by ifan">ifan</a></span></span> <br />
</header>
<br />Pada
postingan kali ini saya akan menunjukkan cara untuk memasukkan data
kedalam database. Caranya sangat mudah dan tentunya artikel ini untuk
anda yang baru memulai belajar pemrograman java. <img alt=":)" class="wp-smiley" src="http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif?m=1129645325g" /> <br />
Postingan kali ini merupakan kelanjutan dari postingan-postingan
artikel java sebelumnya. Silahkan dibaca jika anda sebelumnya belum
membaca postingan-postingan tersebut, karena pada postingan kali ini
masih menggunakan database yang sama. Oke langsung saja.<br />
<strong>Pertama</strong>: Jalankan Notepad kemudian buat file baru dengan nama <strong>InputData.java</strong>, kemudian simpan di direktori kerja sebelumya. (Pada postingan sebelumnya direktori kerja berada pada <strong>D:\JavaCode</strong>).<br />
<em>import java.sql.*;<br />
public class InputData {<br />
public static void main (String[] args) {<br />
try{<br />
Class.forName(“com.mysql.jdbc.Driver”);<br />
Connection kon = DriverManager.getConnection(“jdbc:mysql://localhost:3306/db_java?user=root&password=”);<br />
String sql = “INSERT INTO berita SET judul=’Judul berita kelima’, isi_berita=’isi berita kelima’, tgl_posting=now()”;<br />
Statement sta = kon.createStatement();<br />
int proses = sta.executeUpdate(sql);</em><br />
<em>
</em><em>if(proses == 1){<br />
System.out.println(proses + ” data berhasil disimpan”);<br />
}<br />
}catch(Exception e){<br />
e.printStackTrace();<br />
}<br />
}<br />
}</em><br />
<strong>Kedua</strong>. Kompilasi program <strong>InputData.java</strong>.<br />
<em>D:\JavaCode>javac InputData.java</em><br />
<strong>Ketiga</strong>. Jalankan program InputData<br />
<em>D:\JavaCode>java InputData<br />
1 data berhasil disimpan</em><br />
Hasilnya seperti terlihat diatas. Sangat mudahkan?<br />
Sumber : http://ifanlumape.wordpress.com
<a class="share-button sb-email" href="http://www.blogger.com/share-post.g?blogID=8303021206881435638&postID=113576824547234671&target=email" target="_blank" title="Kirimkan Ini lewat Email">
<span class="share-button-link-text">Kirimkan Ini lewat Email</span></a>ikbal achmad fahreza 26http://www.blogger.com/profile/18159349729659542082noreply@blogger.com0tag:blogger.com,1999:blog-5523624169352417795.post-3836825211604938032012-11-26T03:49:00.002-08:002012-11-26T04:22:23.679-08:00bekerja dengan jCalenderBaiklah, kita sampai pada Topik pembahasan yang kali ini akan
membahas secara lebih lanjut dari kegiatan kita yakni tahapan pembuatan
project penyimpanan sederhana pada neatbean (versi yang saya gunakan 6.0
adapun versi diatas itu tidak ada permasalahan dengan modul ini).<br />
Adapun software-software yang kita butuhkan diantaranya<br />
<br />
1. Java Virtual Machine adalah software yang digunakan untuk membaca
scrip java pada system Operasi yang kita gunakan (nah saya menggunakan
Sistem Operasi Windows7) untuk versi terbarunya silahkan download pada
Link berikut :<br />
<br />
<span style="text-decoration: underline;"> <b><i>http://www.java.com/en/download/inc/windows_upgrade_xpi.jsp </i></b></span><br />
<br />
2. Neatbean sebagai IDE dari Java, versi terbarunya silahkan download pada Situs Resmi nya pada link berikut<br />
<a href="http://netbeans.org/downloads/"><b><i>http://netbeans.org/downloads/</i></b></a><b><i> </i></b><br />
<b><i><span style="text-decoration: underline;"></span></i></b>
<b><i> </i></b><br />
3.<b><i> </i></b>Database MySql. Nah untuk database
MySql sendiri saya menggunakan Database MySql yang include pada paket
web server yang dikembangkan provider XAMPP. untuk versi terbaru dari
XAMPP silahkan Download pada Link Berikut :<b><i> </i></b><br />
<b><i><span style="text-decoration: underline;">http://www.apachefriends.org/en/xampp-windows.html</span></i></b><br />
<b><i><span style="text-decoration: underline;"></span></i></b>
<b><i> </i></b><br />
4.<b><i> </i></b>JCalender, yakni sebagai library
tambahan untuk membantu menginputkan tanggal. JCalender merupakan
library yang dikembangkan bukan dari provider Neatbean itu sendiri dan
bersifat opensource. Nah saya sudah menyediakan link download untuk
mendapatkan Library JCalender pada link berikut :<b><i> </i></b><br />
<a href="http://www.ziddu.com/download/12328454/jcalendar-1.3.2.jar.html"><b>http://www.ziddu.com/download/12328454/jcalendar-1.3.2.jar.html</b></a><br />
<br />
<b><i><span style="text-decoration: underline;"> </span></i></b><br />
Nah untuk Software I, II dan III silahkan diinstal pada Komputer anda
masing-masing. Untuk software IV cara pemasangannya akan dibahas pada
tahapan berikutya.<br />
II. Persiapan Database<br />
Baiklah sebelum mulai pada persiapan database pastikan dahulu
database MySql anda sudah terinstal pada Sistem Opersi Anda sendiri.
Kali ini saya akan mencontokan pembuatan database DBMHS (database
mahasiswa dengan tabel tbmhs) pada Software II yakni XAMPP.<a href="http://www.blogger.com/blogger.g?blogID=5523624169352417795" name="more"></a><br />
<b><i> </i></b><br />
<br />
<ol>
<li>Pastikan pada XAMPP Control Panel anda untuk service apache dan mysqlnya dalam keadaan aktif</li>
<li>Buka Browser Anda dan ketikkan perintah Localhost pada Address Toolbarnya <a href="http://localhost/xampp/">http://localhost/xampp/</a> sehingga muncul tampilan tampilan XAMPP</li>
<li>Ambil menu phpMyAdmin untuk masuk kedalam database MySql. Dan
kemudian buat database dengan nama dbmhs dan lalu pilih tombol create</li>
<li>Buatlah Sebuah tabel pada dbmhs tersebut dengannama tbmhs atau masukkan perintah berikut :</li>
</ol>
CREATE TABLE `tbmhs` (<br />
`nobp` varchar(20) collate latin1_general_ci NOT NULL,<br />
`nama` varchar(50) collate latin1_general_ci default NULL,<br />
`sex` varchar(10) collate latin1_general_ci default NULL,<br />
`tmpt_lahir` varchar(50) collate latin1_general_ci default NULL,<br />
`tgl_lahir` date default NULL,<br />
`alamat` varchar(50) collate latin1_general_ci default NULL,<br />
PRIMARY KEY (`nobp`)<br />
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci;<br />
Nah jika sudah sampai pada tahapan ini berarti Anda sudah
menyelesaikan Satu buah database dengan dbmhs, yang didalamnya ada tabel
yakni tbmhs dengan nobp sebagai primary key nya.<br />
<br />
<b>III. Pembuatan Project pada Neatbean.</b><br />
<b> </b><br />
Ok, kita langsung pada tahapan berikutnya yakni menyiapkan project pada IDE Neatbean. Adapaun tahapan sebagai berikut :<br />
<ol>
<li>Tentunya jalankan IDE Neatbean Anda</li>
<li>Lalu buatlah sebuah Projectbaru (dengan shortcut Key : Ctrl+Shift+N dengan nama project “simplesaving”</li>
<li>Tambahkan didalamnya sebuah form dengan nama “fsiswa </li>
</ol>
<img alt="" class="size-medium wp-image-255 aligncenter" height="231" src="http://mhdariefhasan.files.wordpress.com/2010/11/image-1.jpg?w=300&h=231" title="image 1" width="300" /><br />
<br />
<b>Nama Form : fsiswa</b><br />
Form Diatas terdiri dari : <b> </b><br />
<table border="1" cellpadding="0" cellspacing="0">
<tbody>
<tr>
<td valign="top" width="212"><b>Komponen Form</b></td>
<td valign="top" width="212"><b>Properties</b></td>
<td valign="top" width="212"><b>Nilai</b></td>
</tr>
<tr>
<td valign="top" width="212">JLabel1</td>
<td valign="top" width="212">Text</td>
<td valign="top" width="212">ENTRI DATA MAHASISWA</td>
</tr>
<tr>
<td valign="top" width="212">JLabel2</td>
<td valign="top" width="212">Text</td>
<td valign="top" width="212">Nomor Buku Pokok Mahasiswa</td>
</tr>
<tr>
<td valign="top" width="212">JLabel3</td>
<td valign="top" width="212">Text</td>
<td valign="top" width="212">Nama Mahasiswa</td>
</tr>
<tr>
<td valign="top" width="212">JLabel4</td>
<td valign="top" width="212">Text</td>
<td valign="top" width="212">Jenis Kelamin</td>
</tr>
<tr>
<td valign="top" width="212">JLabel5</td>
<td valign="top" width="212">Text</td>
<td valign="top" width="212">Tempat Lahir</td>
</tr>
<tr>
<td valign="top" width="212">JLabel6</td>
<td valign="top" width="212">Text</td>
<td valign="top" width="212">Tanggal Lahir</td>
</tr>
<tr>
<td valign="top" width="212">JLabel7</td>
<td valign="top" width="212">Text</td>
<td valign="top" width="212">Alamat</td>
</tr>
<tr>
<td valign="top" width="212">JTextField</td>
<td valign="top" width="212">Variable Name</td>
<td valign="top" width="212">Txtnbp</td>
</tr>
<tr>
<td valign="top" width="212">JTextField</td>
<td valign="top" width="212">Variable Name</td>
<td valign="top" width="212">Txtnama</td>
</tr>
<tr>
<td valign="top" width="212">JTextField</td>
<td valign="top" width="212">Variable Name</td>
<td valign="top" width="212">Txttmptlahir</td>
</tr>
<tr>
<td valign="top" width="212">JTextField</td>
<td valign="top" width="212">Variable Name</td>
<td valign="top" width="212">Txtalamat</td>
</tr>
<tr>
<td valign="top" width="212">ButtonGroup1</td>
<td valign="top" width="212"><br /></td>
<td valign="top" width="212"><br /></td>
</tr>
<tr>
<td valign="top" width="212">JRadioButton1</td>
<td valign="top" width="212">- Variable Name
- ButtonGroup</td>
<td valign="top" width="212">- BPria
- ButtonGroup1</td>
</tr>
<tr>
<td valign="top" width="212">JRadioButton2</td>
<td valign="top" width="212">- Variable Name
- ButtonGroup</td>
<td valign="top" width="212">- BWanita
- ButtonGroup1</td>
</tr>
<tr>
<td valign="top" width="212">JDateChooser1</td>
<td valign="top" width="212"><br /></td>
<td valign="top" width="212">-</td>
</tr>
<tr>
<td valign="top" width="212">JButton</td>
<td valign="top" width="212">- Variable Name
- Text</td>
<td valign="top" width="212">- tmblbersih
- Bersih</td>
</tr>
<tr>
<td valign="top" width="212">JButton</td>
<td valign="top" width="212">- Variable Name
- Text</td>
<td valign="top" width="212">- Tmblsimpan
- Simpan</td>
</tr>
</tbody>
</table>
Catatan :<br />
- Untuk Pilihan Opsi JRadioButton1 dan JRadioButton2 kedua komponen ini diikat dengan menggunakan ButtonGroup1<br />
<b>BAGAIMANA MEMASUKKAN KOMPONEN JDateChooser1…….?</b><br />
<b>III. </b><b>Menambahkan Komponen JdateChooser sebagai alat bantu dalam penginputan tanggal lahir</b><br />
JDatechooser merupakan bagian dari Library JCalender. Nah sekarang saya jelaskan cara memasukkan Library JDateChooser.<br />
Bukalah pada project panel simplesaving kita dan klik kanan ambil project Properties<br />
<br />
<img alt="" class="size-medium wp-image-258 aligncenter" height="256" src="http://mhdariefhasan.files.wordpress.com/2010/11/image-2.jpg?w=300&h=256" title="image 2" width="300" /><br />
<br />
<br />
Maka akan muncul Jendela Properties dari Project Simplesaving<br />
<br />
<img alt="" class="size-medium wp-image-259 aligncenter" height="215" src="http://mhdariefhasan.files.wordpress.com/2010/11/image-3.jpg?w=300&h=215" title="image 3" width="300" /><br />
<br />
Nah Pada Tab Libraries Pilih File Jar dari JCalender yang sudah Kita Download sebelumnya<br />
<br />
<img alt="" class="size-medium wp-image-260 aligncenter" height="218" src="http://mhdariefhasan.files.wordpress.com/2010/11/image-4.jpg?w=300&h=218" title="image 4" width="300" /><br />
<br />
Masukkan JCalender-1.3.2.jar kedalam Librari Project Kita.<br />
<br />
<img alt="" class="size-medium wp-image-261 aligncenter" height="214" src="http://mhdariefhasan.files.wordpress.com/2010/11/image-5.jpg?w=300&h=214" title="image 5" width="300" /><br />
<br />
Pastikan Librarinya sudah masuk pada Project Kita<br />
<br />
<img alt="" class="size-medium wp-image-262 aligncenter" height="216" src="http://mhdariefhasan.files.wordpress.com/2010/11/image-6.jpg?w=300&h=216" title="image 6" width="300" /><br />
<br />
Nah Tahapan Berikutnya kita memasukkan JCalender didalam Pallete Manager. Tahapan Langkahnya sebagai berikut :<br />
Buka Tab Window Pallete, dan Klik kanan ambil Create New Category<br />
<br />
<img alt="" class="size-medium wp-image-263 aligncenter" height="300" src="http://mhdariefhasan.files.wordpress.com/2010/11/image-7.jpg?w=200&h=300" title="image 7" width="200" /><br />
<br />
<br />
Klik Menu New Categoy dan masukkan Kategi barunya dengan nama Komponen Tanggal<br />
<br />
<img alt="" class="size-medium wp-image-265 aligncenter" height="120" src="http://mhdariefhasan.files.wordpress.com/2010/11/image-9.jpg?w=300&h=120" title="image 9" width="300" /><br />
<br />
Sehingga muncul Pallete Manager….<br />
<br />
<img alt="" class="size-medium wp-image-264 aligncenter" height="278" src="http://mhdariefhasan.files.wordpress.com/2010/11/image-8.jpg?w=300&h=278" title="image 8" width="300" /><br />
<br />
Pilih Menu Add From JAR untuk memasukkan JCalender versi Jar sebelumnya….<br />
<br />
<img alt="" class="size-medium wp-image-266 aligncenter" height="211" src="http://mhdariefhasan.files.wordpress.com/2010/11/image-10.jpg?w=300&h=211" title="image 10" width="300" /><br />
<br />
Klik Tombol Next dan Blok Semua Komponen yang ada<br />
<br />
<img alt="" class="size-medium wp-image-267 aligncenter" height="211" src="http://mhdariefhasan.files.wordpress.com/2010/11/image-11.jpg?w=300&h=211" title="image 11" width="300" /><br />
<br />
Klik Tombol Next dan masukkan Semua Pallete yang kita buat kedalam kategori Komponen Tanggal …<br />
<br />
<img alt="" class="size-medium wp-image-269 aligncenter" height="213" src="http://mhdariefhasan.files.wordpress.com/2010/11/image-12.jpg?w=300&h=213" title="image 12" width="300" /><br />
<br />
Jika Berhasil maka akan muncul Pallete baru pada Jendela Pallete berikut<br />
<br />
<img alt="" class="size-medium wp-image-270 aligncenter" height="300" src="http://mhdariefhasan.files.wordpress.com/2010/11/image-13.jpg?w=164&h=300" title="image 13" width="164" /><br />
<br />
Nah Untuk Tanggal Lahir kita menggunakan JDateChooser pada Pallete Komponen Tanggal Tampilan akhirnya sbb….<br />
<br />
<img alt="" class="size-medium wp-image-271 aligncenter" height="244" src="http://mhdariefhasan.files.wordpress.com/2010/11/image-14.jpg?w=300&h=244" title="image 14" width="300" /><br />
<br />
<br />
<b>V, Menambahkan modul koneksi guna menghubungkan project dengan database MYSQL</b><br />
<b> </b><br />
Oke, pada tahapan ini kita akan memasukkan modul koneksi, guna mengkoneksikan Neatbean dengan MySQL…<br />
Adapaun tahapan adalah sebagai berikut buka Jendela Project Properties pada Project simplesaving tadi…..<br />
Nah…. pada tab Librariesnya pilih menu add library<br />
<br />
<br />
<img alt="" class="size-medium wp-image-272 aligncenter" height="216" src="http://mhdariefhasan.files.wordpress.com/2010/11/image-15.jpg?w=300&h=216" title="image 15" width="300" /><br />
<br />
Ambil Library MYSQL JDBC Driver dan masukkan pada project….<br />
<br />
<img alt="" class="size-medium wp-image-273 aligncenter" height="300" src="http://mhdariefhasan.files.wordpress.com/2010/11/image-16.jpg?w=272&h=300" title="image 16" width="272" /><br />
<br />
Dan Pilih Tombol Add Library……..<br />
VIII Menambahkan Scrip Program<br />
1. Import yang diperlukan ……….<br />
import java.awt.*;<br />
import javax.swing.*;<br />
import java.sql.*;<br />
import java.text.SimpleDateFormat;<br />
2. Tambahkan Variabel umum Tanggal1 dan Connect untuk deklarasi tanggal dan koneksi database<br />
public class fsiswa extends javax.swing.JFrame {<br />
Connection konek;<br />
String tanggal1;<br />
3. Tambahkan kelas Koneksi untuk mengkoneksikan dengan database<br />
public void koneksi() {<br />
try {<br />
Class.forName(“com.mysql.jdbc.Driver”);<br />
System.out.println(“Sukses Driver JDBC Ditemukan….!”);<br />
try {<br />
String url = “jdbc:mysql://localhost:3306/dbmhs?user=root&password=”;<br />
konek = DriverManager.getConnection(url);<br />
System.out.println(“Sukses Koneksi…”);<br />
} catch (SQLException se) {<br />
System.out.println(” Gagal Koneksi = ” + se);<br />
System.exit(0);<br />
}<br />
} catch (ClassNotFoundException cnfe) {<br />
JOptionPane.showMessageDialog(null, “Class Tidak Ditemukan…Error: ” + cnfe);<br />
System.exit(0);<br />
}<br />
}<br />
4. Tambahkan Kelas Bersih untuk membersihkan semua komponen Form<br />
private void bersih() {<br />
txtnbp.setText(“”);<br />
txtnama.setText(“”);<br />
txttmptlahir.setText(“”);<br />
txtalamat.setText(“”);<br />
BPria.isSelected();<br />
txttgllahir.setDate(null);<br />
txtnbp.requestFocus();<br />
}<br />
5. Panggil Kelas Kelas Bersih dan Kelas Koneksi Pada Kelas Public Fsiswa<br />
public fsiswa() {<br />
initComponents();<br />
koneksi();<br />
bersih();<br />
}<br />
6. Dikarenakan kita menggunakan library tambahan berupa
JDateChooser1 klik kanan pada txttgllahir tersebut dan ambil even
propertychange. Lalu masukkan listing berikut<br />
If (txttgllahir.getDate()!=null){<br />
SimpleDateFormat Format=new SimpleDateFormat(“yyyy-MM-dd”);<br />
tanggal1=Format.format(txttgllahir.getDate());<br />
}<br />
7. Pada Kelas Mainnya rubah scripnya dan masukkan listing berikut<br />
public static void main(String args[]) {<br />
fsiswa fs = new fsiswa();<br />
Dimension screen = Toolkit.getDefaultToolkit().getScreenSize();<br />
int lebar = (screen.width – fs.getSize().width) / 2;<br />
int tinggi = (screen.height – fs.getSize().height) / 2;<br />
fs.setTitle(“Entri Data Mahasiswa”);<br />
fs.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);<br />
fs.setLocation(lebar, tinggi);<br />
fs.setResizable(false);<br />
fs.setVisible(true);<br />
}<br />
8. Klik 2 Kali pada Tombol Bersih dan panggil kelas bersih<br />
private void tmblbersihActionPerformed(java.awt.event.ActionEvent evt) {<br />
// TODO add your handling code here:<br />
bersih();<br />
}<br />
9. Pada Tombol Simpan masukkan perintah ini….<br />
private void tmblsimpanActionPerformed(java.awt.event.ActionEvent evt) {<br />
// TODO add your handling code here:<br />
// berikut ini kita deklarasikan variabel untuk pencegahan data kosong<br />
String nobp, nama, tmptlahir,alamat;<br />
nobp = txtnbp.getText();<br />
nama = txtnama.getText();<br />
tmptlahir=txttmptlahir.getText();<br />
alamat =txtalamat.getText();<br />
//nah variabel tersebut di logikana agar tidak diisi kosong<br />
if (nobp.equals(“”) | (nama.equals(“”)) | (tmptlahir.equals(“”)) | (alamat.equals(“”))) {<br />
JOptionPane.showMessageDialog(null, “Pengisian Data Tidak Boleh Kosong”);<br />
txtnbp.requestFocus();<br />
} else {<br />
// jika sudah data terpenuhi lakukan proses penyimpanan<br />
try {<br />
String sql = “Insert Into tbmhs values(?,?,?,?,?,?)”;<br />
PreparedStatement stat = konek.prepareStatement(sql);<br />
try {<br />
stat.setString(1, txtnbp.getText());<br />
stat.setString(2, txtnama.getText());<br />
// Deklarasikan untuk kelamin<br />
String Pria = BPria.getText();<br />
String Wanita = BWanita.getText();<br />
if (BPria.isSelected()){<br />
stat.setString(3, Pria);<br />
}else{<br />
stat.setString(3, Wanita);<br />
}<br />
stat.setString(4, txttmptlahir.getText());<br />
stat.setString(5, tanggal1);<br />
stat.setString(6, txtalamat.getText());<br />
stat.executeUpdate();<br />
JOptionPane.showMessageDialog(null, “Data Tersimpan…..”);<br />
bersih();<br />
} catch (SQLException se) {<br />
System.out.println(“Gagal Menyimpan..” + se);<br />
JOptionPane.showMessageDialog(null, “Yang Anda Masukkan Telah Ada..\nGagal Disimpan..Coba Lagi \npesan Error :\n” + se);<br />
txtnbp.requestFocus();<br />
}<br />
} catch (Exception e) {<br />
//System.out.println(“se);<br />
}<br />
}<br />
}<br />
10. Pada Tombol Exit Masukkan perintah berikut<br />
private void tmblexitActionPerformed(java.awt.event.ActionEvent evt) {<br />
// TODO add your handling code here:<br />
this.dispose();<br />
}<br />
X. Menjalankan Program<br />
Setelah selesai menginputkan semua listing jalankan form tersebut (Shift+F6)<br />
<br />
<b>Selamat Mencoba…..!!!!!!!!</b><br />
<br />
<b>SUMBER : http://priawadi.blogspot.com/2011/12/entri-data-dan-cara-menggunakan.html </b>ikbal achmad fahreza 26http://www.blogger.com/profile/18159349729659542082noreply@blogger.com0tag:blogger.com,1999:blog-5523624169352417795.post-680511633388208472012-11-26T03:32:00.001-08:002012-11-26T04:22:23.713-08:00membuat spalsh screennih bat bikin splash screen ,<br />
mungkin ga terlalu penting sih dalam program tapi gapapa buat mempercantik tampilan awal :)<br />
ini coding nya : <br />
<br />
<blockquote class="tr_bq">
/*<br />
* To change this template, choose Tools | Templates<br />
* and open the template in the editor.<br />
*/<br />
<br />
import java.awt.Color;<br />
import java.awt.Component;<br />
import java.awt.Font;<br />
import javax.swing.BorderFactory;<br />
import javax.swing.JFrame;<br />
import javax.swing.JLabel;<br />
import javax.swing.JPanel;<br />
import javax.swing.JProgressBar;<br />
import javax.swing.UIManager;<br />
import javax.swing.border.Border;<br />
/**<br />
*<br />
* @author jie<br />
*/<br />
public class splash extends JFrame{<br />
int a = 0;<br />
JProgressBar progressBar = new JProgressBar(0, 100);<br />
JLabel label = new JLabel();<br />
Border border = BorderFactory.createTitledBorder("Waiting…");<br />
<br />
public splash() {<br />
<br />
progressBar.setStringPainted(true);<br />
progressBar.setBorder(border);<br />
label.setText("Aplikasi Peternakan Ayam");<br />
label.setFont(new Font("Tahoma", 1, 24));<br />
JPanel content = (JPanel)getContentPane();<br />
content.setBackground(Color.blue);<br />
Color warnaBorder = Color.BLACK;<br />
content.setBorder(BorderFactory.createLineBorder(warnaBorder, 5));<br />
setLayout(null);<br />
add(label);<br />
label.setBounds(10, 10, 350, 100);<br />
Component add = add(progressBar);<br />
progressBar.setBounds(10, 130, 315, 40);<br />
pack();<br />
setSize(350, 250);<br />
setVisible(true);<br />
setLocationRelativeTo(null);<br />
setDefaultCloseOperation(3);<br />
while (a <= 100) {<br />
progressBar.setValue(a);<br />
try {<br />
Thread.sleep(20);<br />
} catch (InterruptedException e) {<br />
}<br />
a += 1;<br />
}<br />
this.dispose();<br />
}<br />
public static void main(String args[]) {<br />
try {<br />
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());<br />
new splash();<br />
} catch (Exception ex) {<br />
}<br />
}<br />
} </blockquote>
<a class="share-button sb-email" href="http://www.blogger.com/share-post.g?blogID=8303021206881435638&postID=3740837143570755792&target=email" target="_blank" title="Kirimkan Ini lewat Email">
<span class="share-button-link-text">Kirimkan Ini lewat Email</span></a>ikbal achmad fahreza 26http://www.blogger.com/profile/18159349729659542082noreply@blogger.com0tag:blogger.com,1999:blog-5523624169352417795.post-55444326740403077942012-11-08T05:05:00.001-08:002012-11-08T05:05:45.976-08:00pengalaman pertama belajar javapertama saya belum mengenal bahasa pemograman dari java, tapi sebelumnya saya sudah belajar bahasa pemograman c++ . Tidak terlalu rumit kita belajar java bila sebulumnya tekah mengetahui dasar dasar pemograman khususnya C++ karena java juga merupakan turunan dari C++.<br />
pada saat pertama mungkin saya hanya belajar menampilkan kalimat kalimat. <br />
dan inilah contoh program program dimana saya pertama bekerja dengan java :<br />
program pertama :<br />
/*<br /> * To change this template, choose Tools | Templates<br /> * and open the template in the editor.<br /> */<br />package day1;<br /><br />/**<br /> *<br /> * @author PERSONAL<br /> */<br />public class Day1 {<br /><br /> /**<br /> * @param args the command line arguments<br /> */<br /> public static void main(String[] args) {<br /> // TODO code application logic here<br />
//untuk menampilkan kalimat saat di ruuning<br /> System.out.println("maliiiing maliiiiiiing");<br /> }<br />}<br />yang kedua :<br />
/*<br /> * To change this template, choose Tools | Templates<br /> * and open the template in the editor.<br /> */<br />package day1;<br /><br />/**<br /> *<br /> * @author PERSONAL<br /> */<br />public class StrukturData {<br /> public static void main(String[] args) {<br /> <br /> int nilai; // deklarasi<br /> nilai = 70; // inisialisasi<br /> System.out.println("nilai : " + nilai);<br /> <br /> }<br />}<br />
mungkin program seperti itu untuk membuat anda yang mau belajar bahasa pemograman java tidak terlalu kaget dengan syntax/coding yang banyak . dan programan seperti ini pun sebagai pemanasan bagi saya untuk membuat syntax/coding yang lebih banyak lagi . mungkin program diatasa itu hanya 0,000001% dari program yang saya buat sekarang.<br />
ikbal achmad fahreza 26http://www.blogger.com/profile/18159349729659542082noreply@blogger.com0tag:blogger.com,1999:blog-5523624169352417795.post-71232920152890889412012-11-08T04:50:00.001-08:002012-11-08T04:50:12.100-08:00Mendapatkan Input dari Keyboard<b>Menggunakan BufferedReader untuk<br />mendapatkan input</b><br />Pada bagian ini, kita akan menggunakan class BufferedReader yang berada di package<br />java.io untuk mendapatkan input dari keyboard.<br />Berikut ini adalah langkah-langkah yang diperlukan untuk mendapatkan input dari<br />keyboard:<br />1. Tambahkan di bagian paling atas code Anda:<br />import java.io.*;<br />2. Tambahkan statement berikut:<br />BufferedReader dataIn = new BufferedReader(new InputStreamReader( System.in) );<br />3. Deklarasikan variabel String temporary untuk mendapatkan input, dan gunakan<br />fungsi readLine() untuk mendapatkan input dari keyboard. Anda harus<br />mengetikkannya di dalam blok try-catch:<br />try{<br />String temp = dataIn.readLine();<br />}<br />catch( IOException e ){<br />System.out.println(“Error in getting input”);<br />}<br /><br />Berikut ini adalah source code lengkapnya:<br />import java.io.BufferedReader;<br />import java.io.InputStreamReader;<br />import java.io.IOException;<br />public class GetInputFromKeyboard<br />{<br />public static void main( String[] args ){<br />BufferedReader dataIn = new BufferedReader(new<br />InputStreamReader( System.in) );<br />String name = "";<br />System.out.print("Please Enter Your Name:");<br />try{<br />name = dataIn.readLine();<br />}catch( IOException e ){<br />System.out.println("Error!");<br />}<br />System.out.println("Hello " + name +"!");<br />}<br />}<br />
<br />
Berikutnya akan penjelasan setiap baris dari code tersebut:<br />Statement,<br />import java.io.BufferedReader;<br />import java.io.InputStreamReader;<br />import java.io.IOException;<br />menjelaskan bahwa kita akan menggunakan class BufferedReader, InputStreamReader<br />dan IOException yang berada di java.io package. Java Application Programming<br />Interface (API) berisi ratusan class yang sudah didefinisikan sebelumnya yang dapat<br />digunakan untuk program Anda. Class-class tersebut dikumpulkan di dalam packages.<br />Packages berisi class yang mempunyai fungsi yang saling berhubungan. Seperti pada<br />contoh di atas, java.io package mengandung class-class yang memungkinkan<br />program untuk melakukan input dan output data. Pernyataan di atas juga dapat ditulis<br />sebagai berikut,<br />import java.io.*;<br />yang akan mengeluarkan semua class yang berada dalam package, dan selanjutnya kita<br />bisa menggunakan class-class tersebut dalam program kita.<br /><br />Dua statement selanjutnya,<br />public class GetInputFromKeyboard<br />{<br />public static void main( String[] args ){<br />kita sudah mempelajari pada pelajaran sebelumnya. Pernyataan ini mendeklarasikan<br />class bernama GetInputFromKeyboard dan kita mendeklarasikan method main.<br />Dalam statement,<br />BufferedReader dataIn = new BufferedReader(new<br />InputStreamReader( System.in) );<br />kita mendeklarasikan sebuah variabel bernama dataIn dengan tipe class<br />BufferedReader. Jangan mengkhawatirkan tentang maksud dari syntax saat ini. Kita<br />akan menjelaskannya pada akhir pembahasan.<br />Sekarang, kita akan mendeklarasikan variabel String dengan identifier name,<br />String name = "";<br />Pernyataan di atas merupakan tempat untuk menyimpan input dari user. Nama variabel<br />diinisialisasi sebagai String kosong "". Sebaiknya kita selalu menginisialisasi sebuah<br />variabel setelah kita mendeklarasikannya.<br />Baris berikutnya adalah memberikan output sebuah String pada layar yang menanyakan<br />nama user.<br />System.out.print("Please Enter Your Name:");<br />Sekarang, blok di bawah ini merupakan try-catch block,<br />try{<br />name = dataIn.readLine();<br />}catch( IOException e ){<br />System.out.println("Error!");<br />}<br />Pada baris ini menjelaskan bahwa kemungkinan terjadi error pada pernyataan,<br />name = dataIn.readLine();<br />akan ditangkap. Kita akan membahas tentang penanganan exception pada bab<br />selanjutnya dari pembahasan ini, tetapi untuk sekarang, Anda cukup mencatat bahwa<br />Anda perlu menambahkan kode ini untuk menggunakan method readLine() dari<br />BufferedReader untuk mendapatkan input dari user.<br /><br />Selanjutnya kembali ke pernyataan,<br />name = dataIn.readLine();<br />method diatas memanggil dataIn.readLine(), mendapatkan input dari user dan<br />memberikan sebuah nilai String. Nilai ini akan disimpan ke dalam variabel name, yang<br />akan kita gunakan pada statement akhir untuk menyambut user,<br />System.out.println("Hello " + name + "!");<br />
<b><br /></b>
<b>Menggunakan JOptionPane untuk<br />mendapatkan input</b><br />Cara lain untuk mendapatkan input dari user adalah dengan menggunakan class<br />JoptionPane yang didapatkan dari javax.swing package. JoptionPane memudahkan<br />memunculkan dialog box standard yang memberikan kepada user sebuah nilai atau<br />menginformasikan sesuatu.<br />Diberikan kode berikut ini,<br />import javax.swing.JOptionPane;<br />public class GetInputFromKeyboard<br />{<br />public static void main( String[] args ){<br />String name = "";<br />name = JoptionPane.showInputDialog("Please enter your<br />name");<br />String msg = "Hello " + name + "!";<br />JOptionPane.showMessageDialog(null, msg);<br />}<br />}<br />
Statement pertama,<br />import javax.swing.JOptionPane;<br />Menjelaskan bahwa kita mengimpor class JoptionPane dari package javax.swing.<br />Bisa juga ditulis seperti,<br />import javax.swing.*;<br />Pernyataan,<br />name = JOptionPane.showInputDialog("Please enter your name");<br />membuat sebuah input dialog JOptionPane, yang akan menampilkan dialog dengan<br />sebuah pesan, sebuah textfield dan tombol OK seperti pada gambar. Hasil dari dialog<br />tersebut adalah String dan disimpan ke dalam variabel name.<br />Sekarang kita membuat pesan selamat datang, yang akan disimpan ke dalam variabe<br />msg,<br />String msg = "Hello " + name + "!";<br />Baris selanjutnya adalah menampilkan sebuah dialog yang berisi sebuah pesan dan<br />tombol OK,<br />JOptionPane.showMessageDialog(null, msg);<br />
<br />ikbal achmad fahreza 26http://www.blogger.com/profile/18159349729659542082noreply@blogger.com0tag:blogger.com,1999:blog-5523624169352417795.post-20820314146810656782012-11-08T04:43:00.004-08:002012-11-08T04:43:45.563-08:00pengenalan pemograman javaJava telah mengakomodasi hampir seluruh fitur penting bahasa–bahasa<br />pemrograman yang ada semenjak perkembangan komputasi modern manusia :<br />1. Dari SIMULA, bahasa pada tahun 65-an, bahasa yang paling mempengaruhi<br />Java sekaligus C++. Dari bahasa ini diadopsi bentukan–bentukan dasar dari<br />pemrograman berorientasi objek.<br />2. Dari LISP – bahasa tahun 55-an. Diadopsi fasilitas garbage collection, serta<br />kemampuan untuk meniru generic list processing, meski fasilitas ini jarang<br />yang memanfaatkannya.<br />3. Dari Algol – bahasa pada tahun 60-an, diambil struktur kendali yang<br />dimilikinya.<br />4. Dari C++, diadopsi sintaks, sebagian semantiks dan exception handling<br />5. Dari bahasa Ada, diambil strongly type, dan exception handling.<br />6. Dari Objective C, diambil fasilitas interface.<br />7. Dari bahasa SmallTalk, diambil pendekatan single-root class hiérarchie,<br />dimana object adalah satu kesatuan hirarki pewarisan<br />8. Dari bahasa Eiffel, fasilitas assertion yang mulai diterapkan di sebagian JDK<br />1.4<br />
<b><br /></b>
<b>Apa itu Teknologi JAVA?</b><br />
1. Sebuah Bahasa Pemrograman<br />Sebagai sebuah bahasa pemrograman, Java dapat membuat seluruh bentuk aplikasi,<br />desktop, web dan lainnya, sebagaimana dibuat dengan menggunakan bahasa<br />pemrograman konvensional yang lain.<br />Java adalah bahasa pemrograman yang berorientasi objek (OOP) dan dapat<br />dijalankan pada berbagai platform sistem operasi. Perkembangan Java tidak hanya<br />terfokus pada satu sistem operasi, tetapi dikembangkan untuk berbagai sistem<br />operasi dan bersifat open source.<br />
2. Sebuah Development Environment<br />Sebagai sebuah peralatan pembangun, teknologi Java menyediakan banyak tools :<br />compiler, interpreter, penyusun dokumentasi, paket kelas dan sebagainya.<br />
3 Sebuah Aplikasi<br />Aplikasi dengan teknologi Java secara umum adalah aplikasi serba guna yang dapat<br />dijalankan pada seluruh mesin yang memiliki Java Runtime Environment (JRE)..<br />
4. Sebuah Deployment Environment<br />Terdapat dua komponen utama dari Deployment Environment. Yang pertama adalah<br />JRE, yang terdapat pada paket J2SDK, mengandung kelas–kelas untuk semua paket<br />teknologi Java yang meliputi kelas dasar dari Java, komponen GUI dan sebagainya.<br />Komponen yang lain terdapat pada Web Browser. Hampir seluruh Web Browser<br />komersial menyediakan interpreter dan runtime environment dari teknologi Java.<br />
<br />
Berdasarkan white paper resmi dari SUN, Java memiliki karakteristik berikut :<br />1. Sederhana<br />Bahasa pemrograman Java menggunakan sintaks mirip dengan C++ namun<br />sintaks pada Java telah banyak diperbaiki terutama menghilangkan<br />penggunaan pointer yang rumit dan multiple inheritance. Java juga<br />menggunakan automatic memory allocation dan memory garbage collection.<br />2. Berorientasi objek (Object Oriented)<br />Java mengunakan pemrograman berorientasi objek yang membuat program<br />dapat dibuat secara modular dan dapat dipergunakan kembali. Pemrograman<br />berorientasi objek memodelkan dunia nyata kedalam objek dan melakukan<br />interaksi antar objek-objek tersebut.<br />3. Dapat didistribusi dengan mudah<br />Java dibuat untuk membuat aplikasi terdistribusi secara mudah dengan adanya<br />libraries networking yang terintegrasi pada Java.<br />4. Interpreter<br />Program Java dijalankan menggunakan interpreter yaitu Java Virtual Machine<br />(JVM). Hal ini menyebabkan source code Java yang telah dikompilasi menjadi<br />Java bytecodes dapat dijalankan pada platform yang berbeda-beda.<br />5. Robust<br />Java mempuyai reliabilitas yang tinggi. Compiler pada Java mempunyai<br />kemampuan mendeteksi error secara lebih teliti dibandingkan bahasa<br />pemrograman lain. Java mempunyai runtime-Exception handling untuk<br />membantu mengatasi error pada pemrograman.<br />6. Aman<br />Sebagai bahasa pemrograman untuk aplikasi internet dan terdistribusi, Java<br />memiliki beberapa mekanisme keamanan untuk menjaga aplikasi tidak<br />digunakan untuk merusak sistem komputer yang menjalankan aplikasi<br />tersebut.<br />7. Architecture Neutral<br />Program Java merupakan platform independent. Program cukup mempunyai<br />satu buah versi yang dapat dijalankan pada platform yang berbeda dengan<br />Java Virtual Machine.<br />8. Portabel<br />Source code maupun program Java dapat dengan mudah dibawa ke platform<br />yang berbeda-beda tanpa harus dikompilasi ulang.<br />9. Performance<br />Performance pada Java sering dikatakan kurang tinggi. Namun performance<br />Java dapat ditingkatkan menggunakan kompilasi Java lain seperti buatan<br />Inprise, Microsoft ataupun Symantec yang menggunakan Just In Time<br />Compilers (JIT).<br />10. Multithreaded<br />Java mempunyai kemampuan untuk membuat suatu program yang dapat<br />melakukan beberapa pekerjaan secara sekaligus dan simultan.<br />11. Dinamis<br />Java didesain untuk dapat dijalankan pada lingkungan yang dinamis. Perubahan<br />pada suatu class dengan menambahkan properties ataupun method dapat<br />dilakukan tanpa menggangu program yang menggunakan class tersebut.<br />
<br />
<b>Sebagian Fitur dari JAVA</b><br />
1. Java Virtual Machine (JVM)<br />JVM adalah sebuah mesin imajiner (maya) yang bekerja dengan menyerupai aplikasi<br />pada sebuah mesin nyata. JVM menyediakan spesifikasi hardware dan platform<br />dimana kompilasi kode Java terjadi. Spesifikasi inilah yang membuat aplikasi<br />berbasis Java menjadi bebas dari platform manapun karena proses kompilasi<br />diselesaikan oleh JVM.<br />Aplikasi program Java diciptakan dengan file teks berekstensi .java. Program ini<br />dikompilasi menghasilkan satu berkas bytecode berekstensi .class atau lebih.<br />Bytecode adalah serangkaian instruksi serupa instruksi kode mesin. Perbedaannya<br />adalah kode mesin harus dijalankan pada sistem komputer dimana kompilasi<br />ditujukan, sementara bytecode berjalan pada java interpreter yang tersedia di<br />semua platform sistem komputer dan sistem operasi.<br />2. Garbage Collection<br />Banyak bahasa pemrogaman lain yang mengijinkan seorang programmer<br />mengalokasikan memori pada saat dijalankan. Namun, setelah menggunakan alokasi<br />memori tersebut, harus terdapat cara untuk menempatkan kembali blok memori<br />tersebut supaya program lain dapat menggunakannya. Dalam C, C++ dan bahasa<br />lainnya, adalah programmer yang mutlak bertanggung jawab akan hal ini. Hal ini<br />dapat menyulitkan bilamana programmer tersebut alpa untuk mengembalikan blok<br />memori sehingga menyebabkan situasi yang dikenal dengan nama memory leaks.<br />Program Java melakukan garbage collection yang berarti program tidak perlu<br />menghapus sendiri objek–objek yang tidak digunakan lagi. Fasilitas ini mengurangi<br />beban pengelolaan memori oleh programmer dan mengurangi atau mengeliminasi<br />sumber kesalahan terbesar yang terdapat pada bahasa yang memungkinkan alokasi<br />dinamis.<br />3. Code Security<br />Code Security terimplementasi pada Java melalui penggunaan Java Runtime<br />Environment (JRE). Java menggunakan model pengamanan 3 lapis untuk melindungi<br />sistem dari untrusted Java Code.<br />1. Pertama, class-loader menangani pemuatan kelas Java ke runtime<br />interpreter. Proses ini menyediakan pengamanan dengan memisahkan kelas–<br />kelas yang berasal dari local disk dengan kelas–kelas yang diambil dari<br />jaringan. Hal ini membatasi aplikasi Trojan karena kelas–kelas yang berasal<br />dari local disk yang dimuat terlebih dahulu.<br />2. Kedua, bytecode verifier membaca bytecode sebelum dijalankan dan<br />menjamin bytecode memenuhi aturan–aturan dasar bahasa Java.<br />3. Ketiga, manajemen keamanan menangani keamanan tingkat aplikasi dengan<br />mengendalikan apakah program berhak mengakses sumber daya seperti<br />sistem file, port jaringan, proses eksternal dan sistem windowing.<br />Setelah seluruh proses tersebut selesai dijalankan, barulah kode program di<br />eksekusi.<br />Java juga menyediakan beragam teknik pengamanan lain :<br />1. Bahasa dirancang untuk mempersulit eksekusi kode perusak. Peniadaan<br />pointer merupakan langkah besar pengamanan. Java tidak mengenal operasi<br />pointer. Di tangan programmer handal, operasi pointer merupakan hal yang<br />luar biasa untuk optimasi dan pembuatan program yang efisien serta<br />mengagumkan. Namun mode ini dapat menjadi petaka di hadapan<br />programmer jahat. Pointer merupakan sarana luar biasa untuk pengaksesan<br />tak diotorisasi. Dengan peniadaan operasi pointer, Java dapat menjadi bahasa<br />yang lebih aman.<br />2. Java memiliki beberapa pengaman terhadap applet. Untuk mencegah<br />program bertindak mengganggu media penyimpanan, maka applet tidak<br />diperbolehkan melakukan open, read ataupun write terhadap berkas secara<br />sembarangan. Karena Java applet dapat membuka jendela browser yang<br />baru, maka jendela mempunyai logo Java dan teks identifikasi terhadap<br />jendela yang dibuka. Hal ini mencegah jendela pop-up menipu sebagai<br />permintaan keterangan username dan password.ikbal achmad fahreza 26http://www.blogger.com/profile/18159349729659542082noreply@blogger.com0tag:blogger.com,1999:blog-5523624169352417795.post-77050225635893560742012-11-08T04:36:00.004-08:002012-11-08T04:36:52.164-08:00Arrayint number1;<br />int number2;<br />int number3;<br />number1 = 1;<br />number2 = 2;<br />number3 = 3;<br />Seperti yang dapat Anda perhatikan pada contoh diatas, kode tersebut akan sia-sia<br />karena harus menginisialisasi dan menggunakan setiap variabel padahal sebenarnya<br />variabel-variabel tersebut digunakan untuk tujuan yang sama. Pada bahasa<br />pemrograman Java maupun di bahasa pemrograman yang lain, terdapat sebuah<br />kemampuan untuk menggunakan satu variabel yang dapat menyimpan beberapa data<br />dan memanipulasinya dengan lebih efektif. Tipe variabel inilah yang disebut sebagai<br />array.<br />
Sebuah array akan menyimpan beberapa item data yang memiliki tipe data<br />sama didalam sebuah blok memori yang berdekatan yang kemudian dibagai menjadi<br />beberapa ruang. Array adalah sebuah variabel/sebuah lokasi tertentu yang memiliki<br />satu nama sebagai identifier, namun identifier ini dapat menyimpan lebih dari sebuah<br />nilai.<br />
<b>Pendeklarasian Array</b><br />Array harus dideklarasikan seperti layaknya sebuah variabel. Pada saat<br />mendeklarasikan array, anda harus membuat sebuah daftar dari tipe data, yang diikuti<br />oleh sepasang tanda kurung [], lalu diikuti oleh nama identifier-nya. Sebagai contoh,<br />int []ages;<br />atau Anda dapat menempatkan sepasangtandakurung [] sesudah nama identifier. Sebagai<br />contoh,<br />int ages[];<br /><br />Setelah pendeklarasian array , kita harus membuat array dan menentukan berapa<br />panjangnya dengan sebuah konstruktor. Proses ini di Java disebut sebagai<br />instantiation (istilah dalam Java yang berarti membuat). Untuk meng-instantiate<br />sebuah obyek, kita membutuhkan sebuah konstruktor. Kita akan membicarakan<br />lagi mengenai instantiate obyek dan pembuatan konstruktor pada bagian selanjutnya.<br />Sebagai catatan bahwa ukuran dari array tidak dapat diubah setelah anda<br />menginisialisasinya.<br />
<b>Panjang Array</b><br />Untuk mengetahui berapa banyak elemen didalam sebuah array, Anda dapat<br />menggunakan atribut length dari array. Atribut ini akan mengembalikan ukuran dari<br />array itu sendiri. Sebagai contoh,<br />arrayName.length<br />Pada contoh sebelumnya, kita dapat menuliskannya kembali seperti berikut ini,<br />public class ArraySample<br />{<br />public static void main( String[] args ){<br />int[] ages = new int[100];<br />for( int i=0; i<ages.length; i++ ){<br />System.out.print( ages[i] );<br />}<br />}<br />}<br />
<b><br />Petunjuk penulisan program:</b><br />1. Pada saat pembuatan for loop untuk memproses elemen-elemen dalam array,<br />gunakanlah at r i but length yang di l etakkan di dalam bag ian pengkondisian<br />dar i fo r loop. Hal ini akan menyebabkan loop secara otomatis menyesuaikan<br />diri terhada ukuran array yang berbeda-beda.<br />2. Pendeklarasian ukuran array di program Java, biasanya menggunakan sebuah<br />konstanta untuk mempermudah. Sebagai contoh,<br />final int ARRAY_SIZE = 1000; //pendeklarasian constant<br />. . .<br />int[] ages = new int[ARRAY_SIZE];<br />
<br />
*disini saya tidak meyertakan link download , biar anda tidak malas
mengetik dan mencoba supaya tahu jika dalam program yang anda buat
terjadi kesalahan atau error.<br />Terima kasih semoga bermanfaat postingan dari saya .<br />
<div style="background-color: transparent; border: medium none; color: black; overflow: hidden; text-align: left; text-decoration: none;">
Read more at <a href="http://ikbalfahreza.blogspot.com/2012/11/menggunakan-struktur-pemilihan-switch.html#RLhL1SL2eskwEfpd.99" style="color: #003399;">http://ikbalfahreza.blogspot.com/2012/11/menggunakan-struktur-pemilihan-switch.html#RLhL1SL2eskwEfpd.99</a> </div>
ikbal achmad fahreza 26http://www.blogger.com/profile/18159349729659542082noreply@blogger.com0tag:blogger.com,1999:blog-5523624169352417795.post-43627327358172221762012-11-08T04:31:00.003-08:002012-11-08T04:31:44.395-08:00 Teknik Pemrograman Lanjut<br />3.1 Tujuan<br />Modul ini mengenalkan suatu teknik pemrograman yang lebih tinggi. Dalam bagian ini<br />Anda akan mempelajari rekursif dan tipe data abstrak.<br />Pada akhir pembahasan, diharapkan pembaca dapat :<br />1. Memahami dan menggunakan rekursif<br />2. Mengetahui perbedaan antara stacks dan queues<br />2. Mengimplementasikan suatu implementasi sequensial dari stacks dan queues<br />3. Mengimplementasikan suatu implementasi linked dari stacks and queues<br />4. Menggunakan class-class Collection yang ada<br />3.2 Rekursif<br />3.2.1 Apa yang dimaksud dengan Rekursif?<br />Rekursif adalah teknik pemecahan masalah yang powerful dan dapat digunakan ketika<br />inti dari masalah terjadi berulang kali. Tentu saja, tipe dari masalah ini dapat dipecahkan<br />mengunakan perkataan berulang-ulang (yaitu, menggunakan konstruksi looping seperti<br />for, while dan do-while).<br />Sesungguhnya, iterasi atau perkataan berulang-ulang merupakan peralatan yang lebih<br />efisien jika dibandingkan dengan rekursif tetapi rekursif menyediakan solusi yang lebih<br />baik untuk suatu masalah. Pada rekursif, method dapat memanggil dirinya sendiri. Data<br />yang berada dalam method tersebut seperti argument disimpan sementara ke dalam<br />stack sampai method pemanggilnya diselesaikan.<br />3.2.2 Rekursif Vs. Iterasi<br />Untuk pengertian yang lebih baik dari rekursif, mari kita lihat pada bagaimana macammacam<br />dari teknik iterasi. Dalam teknik-teknik tersebut juga dapat kita lihat<br />penyelesaian sebuah loop yang lebih baik menggunakan rekursif daripada iterasi.<br />Penyelesaian masalah dengan perulangan menggunakan iterasi secara tegas juga<br />digunakan pada struktur kontrol pengulangan. Sementara itu, untuk rekursif, task<br />diulangi dengan memanggil sebuah method perulangan. Maksud dari hal tersebut<br />adalah untuk menggambarkan sebuah masalah ke dalam lingkup yang lebih kecil dari<br />perulangan itu sendiri. Pertimbangkan penghitungan faktorial dalam penentuan bilangan<br />bulat. Definisi rekursif dari hal tersebut dapat diuraikan sebagai berikut: factorial(n) =<br />factorial(n-1) * n; factorial(1) = 1. Sebagai contohnya, nilai faktorial dari 2 sama dengan<br />fatorial (1)*2, dimana hasilnya adalah 2. Faktorial dari 3 adalah 6, dimana sama dengan<br />faktorial dari (2)*3.<br />J.E.N.I.<br />Pengenalan Pemrograman 2 2<br />Gambar 1: Contoh Factorial<br />Dengan iterasi, proses diakhiri ketika kondisi loop gagal atau salah. Dalam kasus dari<br />penggunaan rekursif, proses yang berakhir dengan kondisi tertentu disebut<br />permasalahan dasar yang telah tercukupi oleh suatu pembatasan kondisi. Permasalahan<br />yang mendasar merupakan kejadian yang paling kecil dari sebuah masalah. Sebagai<br />contoh, dapat dilihat pada kondisi rekursif pada faktorial, kasus yang mudah adalah<br />ketika masukannya adalah 1. 1 dalam kasus ini merupakan dasar dari masalah.<br />Penggunaan dari iterasi dan rekursif dapat bersama-sama memandu loops jika hal ini<br />tidak digunakan dengan benar.<br />Keuntungan iterasi dibandingkan rekursif adalah performance yang lebih baik. Hal<br />tersebut lebih cepat untuk rekursif sejak terbentuknya sebuah parameter pada sebuah<br />method yang menyebabkan adanya suatu CPU time. Bagaimanapun juga, rekursif<br />mendorong pelatihan perancangan software yang lebih baik, sebab teknik ini biasanya<br />dihasilkan dalam kode yang singkat yang lebih mudah untuk dimengerti dan juga<br />mempromosikan reusability pada suatu solusi yang sebelumnya telah diterapkan.<br />Memilih antara iterasi dan rekursif merupakan permasalahan dari menjaga<br />keseimbangan antara baiknya sebuah performance dan baiknya perancangan software.<br />3.2.3 Faktorial: Contoh<br />Listing program berikut ini menunjukkan bagaimana menghitung faktorial menggunakan<br />teknik iterasi.<br />class FactorialIter {<br />static int factorial(int n) {<br />int result = 1;<br />for (int i = n; i > 1; i--) {<br />result *= i;<br />}<br />J.E.N.I.<br />Pengenalan Pemrograman 2 3<br />return result;<br />}<br />public static void main(String args[]) {<br />int n = Integer.parseInt(args[0]);<br />System.out.println(factorial(n));<br />}<br />}<br />Dibawah ini merupakan listing program yang sama tetapi menggunakan rekursif.<br />class FactorialRecur {<br />static int factorial(int n) {<br />if (n == 1) { /* The base case */<br />return 1;<br />}<br />/* Recursive definition; Self-invocation */<br />return factorial(n-1)*n;<br />}<br />public static void main(String args[]) {<br />int n = Integer.parseInt(args[0]);<br />System.out.println(factorial(n));<br />}<br />}<br />3.2.4 Print n in any Base: Contoh yang lain<br />Sekarang, mempertimbangkan dari masalah dalam pencetakkan suatu angka desimal<br />yang nilai basenya telah ditetapkan oleh pengguna. Ingat bahwa solusi dalam hal ini<br />untuk menggunakan repetitive division dan untuk menulis sisa perhitungannya. Proses<br />akan berakhir ketika sisa hasil pembagian kurang dari base yang ditetapkan. Dapat<br />diasumsikan jika nilai input desimal adalah 10 dan kita akan mengkonversinya menjadi<br />base 8. Inilah solusinya dengan perhitungan menggunakan pensil dan kertas.<br />Dari solusi diatas, 10 adalah sama dengan 12 base 8.<br />Contoh berikutnya. Nilai input desimalnya adalah 165 dan akan dikonversi ke base 16.<br />J.E.N.I.<br />Pengenalan Pemrograman 2 4<br />165 adalah sama dengan A5 base 16. Catatan: A=10.<br />Berikut ini merupakan solusi iterative untuk masalah diatas.<br />class DecToOthers {<br />public static void main(String args[]) {<br />int num = Integer.parseInt(args[0]);<br />int base = Integer.parseInt(args[1]);<br />printBase(num, base);<br />}<br />static void printBase(int num, int base) {<br />int rem = 1;<br />String digits = "0123456789abcdef";<br />String result = "";<br />/* langkah interasi */<br />while (num!=0) {<br />rem = num%base;<br />num = num/base;<br />result = result.concat(digits.charAt(rem)+"");<br />}<br />/* mencetak reverse dari result */<br />for(int i = result.length()-1; i >= 0; i--) {<br />System.out.print(result.charAt(i));<br />}<br />}<br />}<br />Berikut ini merupakan rekursif untuk masalah yang sama dengan solusi sebelumnya.<br />class DecToOthersRecur {<br />static void printBase(int num, int base) {<br />String digits = "0123456789abcdef";<br />/* Langkah Rekursif*/<br />if (num >= base) {<br />printBase(num/base, base);<br />}<br />/* Base case: num < base */<br />System.out.print(digits.charAt(num%base));<br />}<br />public static void main(String args[]) {<br />int num = Integer.parseInt(args[0]);<br />int base = Integer.parseInt(args[1]);<br />printBase(num, base);<br />}<br />}<br />J.E.N.I.<br />Pengenalan Pemrograman 2 5<br />3.3 Tipe Data Abstract<br />3.3.1 Apa yang Dimaksud dengan Tipe Data Abstract?<br />Abstract Data Type (ADT) adalah kumpulan dari elemen-elemen data yang disajikan<br />dengan satu set operasi yang digambarkan pada elemen-elemen data tersebut. Stacks,<br />queues dan pohon biner adalah tiga contoh dari ADT. Dalam bab ini, Anda akan<br />mempelajari tentang stacks dan queues.<br />3.3.2 Stacks<br />Stack adalah satu set atau urutan elemen data dimana manipulasi data dari elemenelemen<br />hanya diperbolehkan pada tumpukan teratas dari stack. Hal ini merupakan<br />perintah pengumpulan data secara linier yang disebut “last in, first out” (LIFO). Stacks<br />berguna untuk bermacam-macam aplikasi seperti pattern recognition dan<br />pengkonversian antar notasi infix, postfix dan prefix.<br />Dua operasi yang dihubungkan dengan stacks adalah operasi push dan pop. Push berarti<br />memasukkan data ke dalam stacks yang paling atas dimana pop sebagai<br />penunjuk/pointer untuk memindahkan elemen ke atas stacks. Untuk memahami<br />bagaimana cara kerja stacks, pikirkan bagaimana Anda dapat menambah atau<br />memindakan sebuah data dari tumpukan data. Pikiran Anda akan memberitahu Anda<br />untuk menambah atau memindahkan data hanya pada stack yang paling atas karena<br />jika menggunakan cara lain, dapat menyebabkan tumpukan stack akan terjatuh.<br />Dibawah ini merupakan ilustrasi bagaimana tampilan dari stacks.<br />n-1<br />...<br />6<br />5 Jayz top<br />4 KC<br />3 Jojo<br />2 Toto<br />1 Kyla<br />0 DMX bottom<br />Tabel 1.2.2: Ilustrasi Stack<br />Stack akan berarti penuh jika jangkauan sel teratas disimbolkan dengan n-1. Jika nilai<br />teratas / top sama dengan -1, stack berarti kosong.<br />J.E.N.I.<br />Pengenalan Pemrograman 2 6<br />3.3.3 Queues<br />Queues adalah contoh lain dari ADT. Hal ini merupakan perintah pengumpulan data yang<br />disebut “first-in, first-out”. Aplikasi ini meliputi tugas penjadwalan dalam sistem operasi,<br />topological sorting dan graph traversal.<br />Enqueue dan dequeue merupakan operasi yang berhubungan dengan queues. Enqueue<br />menunjuk pada memasukkan data pada akhir queue sedangkan dequeue berarti<br />memindahkan elemen dari queue tersebut. Untuk mengingat bagaimana queue bekerja,<br />ingatlah arti khusus dari queue yaitu baris. Berikut ini bagaimana cara kerja queue.<br />Siapa yang akan mendapatkan kesempatan pertama untuk bertemu bintang idolanya<br />dari mereka yang sedang menunggu dalam sebuah barisan? Seharusnya orang pertama<br />yang berada pada barisan tersebut. Orang ini mendapat kesempatan pertama untuk<br />meninggalkan barisan. Hubungkan hal tersebut dengan bagaimana queue bekerja.<br />Berikut ini merupakan ilustrasi dari bagaimana tampilan dari queue.<br />0 1 2 3 4 5 6 7 8 9 ... n-1<br />Eve Jayz KC Jojo Toto Kyla DMX<br />front end Insert<br /> Delete<br />Tabel 1.2.3: Ilustrasi Queue<br />Queue akan kosong jika nilai end kurang dari front. Sementara itu, akan penuh jika end<br />sama dengan n-1.<br />3.3.4 Sequential and Linked Representation<br />ADTs biasanya dapat diwakilkan menggunakan sequential dan linked representation. Hal<br />ini memudahkan untuk membuat sequential representation dengan menggunakan array.<br />Bagaimanapun juga, masalah dengan menggunakan array adalah pembatasan size,<br />yang membuatnya tidak fleksibel. Dengan menggunakan array, sering terjadi<br />kekurangan atau kelebihan space memori. Mempertimbangkan hal tersebut, Anda harus<br />membuat sebuah array dan mendeklarasikannya agar mampu menyimpan 50 elemen.<br />Jika user hanya memasukkan 5 elemen, maka 45 space pada memori akan sia-sia. Disisi<br />lain, jika user ingin memasukkan 51 elemen, space yang telah disediakan didalam array<br />tidak akan cukup.<br />Dibandingkan dengan sequential representation, linked representation lebih sedikit rumit<br />tetapi lebih fleksibel. Linked representation menyesuaikan memori yang dibutuhkan oleh<br />user. Penjelasan lebih lanjut pada linked representation akan didiskusikan pada bab<br />berikutnya.<br />3.3.5 Sequential Representation dari Integer Stack<br />class SeqStack {<br />int top = -1; /* pada permulaan, stack kosong*/<br />int memSpace[]; /* penyimpanan untuk integer */<br />int limit; /* ukuran dari memSpace */<br />J.E.N.I.<br />Pengenalan Pemrograman 2 7<br />SeqStack() {<br />memSpace = new int[10];<br />limit = 10;<br />}<br />SeqStack(int size) {<br />memSpace = new int[size];<br />limit = size;<br />}<br />boolean push(int value) {<br />top++;<br />/* memeriksa apakah stack penuh */<br />if (top < limit) {<br />memSpace[top] = value;<br />} else {<br />top--;<br />return false;<br />}<br />return true;<br />}<br />int pop() {<br />int temp = -1;<br />/* memeriksa apakah stack kosong */<br />if (top >= 0) {<br />temp = memSpace[top];<br />top--;<br />} else {<br />return -1;<br />}<br />return temp;<br />}<br />public static void main(String args[]) {<br />SeqStack myStack = new SeqStack(3);<br />myStack.push(1);<br />myStack.push(2);<br />myStack.push(3);<br />myStack.push(4);<br />System.out.println(myStack.pop());<br />System.out.println(myStack.pop());<br />System.out.println(myStack.pop());<br />System.out.println(myStack.pop());<br />}<br />}<br />3.3.6 Linked Lists<br />Sebelum mengimplementasikan linked representation dari stacks, pertama mari kita<br />pelajari bagaimana membuat linked representation. Dalam hal ini, kita akan<br />menggunakan linked list.<br />Linked list merupakan struktur dinamis yang berlawanan dengan array, dimana<br />merupakan struktur statis. Hal ini berarti linked list dapat tumbuh dan berkurang dalam<br />ukuran yang bergantung pada kebutuhan user. Linked list digambarkan sebagai<br />kumpulan dari nodes, Yang masing-masing berisi data dan link atau pointer ke node<br />berikutnya di dalam list.<br />J.E.N.I.<br />Pengenalan Pemrograman 2 8<br />Gambar dibawah ini menunjukkan tampilan dari node.<br />Gambar 2.6a: Sebuah node<br />Berikut ini merupakan contoh dari non-empty linked list dengan 3 node.<br />Gambar 3.6b: Non-empty linked list dengan tiga node<br />Berikut ini bagaimana class node diimplementasikan. Class ini dapat digunakan untuk<br />membuat linked list.<br />class Node {<br />int data; /* integer data diisikan dalam node */<br />Node nextNode; /* node selanjutnya dalam list */<br />}<br />class TestNode {<br />public static void main(String args[]) {<br />Node emptyList = null; /* membuat list kosong */<br />/* head points untuk node pertama dalam list */<br />Node head = new Node();<br />/* inisialisasi node pertama dalam list */<br />head.data = 5;<br />head.nextNode = new Node();<br />head.nextNode.data = 10;<br />/* null menandai akhir dari list */<br />head.nextNode.nextNode = null;<br />/* mencetak elemen list */<br />Node currNode = head;<br />while (currNode != null) {<br />System.out.println(currNode.data);<br />currNode = currNode.nextNode;<br />}<br />}<br />}<br />J.E.N.I.<br />Pengenalan Pemrograman 2 9<br />3.3.7 Linked Representation dari Integer Stack<br />Sekarang Anda telah mempelajari tentang linked list. Maka Anda telah siap untuk<br />menerapkan apa yang telah Anda pelajari untuk implementasi linked representation dari<br />stack.<br />class DynamicIntStack{<br />private IntStackNode top; /* head atau puncak dari stack */<br />class IntStackNode { /* class node */<br />int data;<br />IntStackNode next;<br />IntStackNode(int n) {<br />data = n;<br />next = null;<br />}<br />}<br />void push(int n){<br />/* no need to check for overflow */<br />IntStackNode node = new IntStackNode(n);<br />node.next = top;<br />top = node;<br />}<br />int pop() {<br />if (isEmpty()) {<br />return -1;<br />/* may throw a user-defined exception */<br />} else {<br />int n = top.data;<br />top = top.next;<br />return n;<br />}<br />}<br />boolean isEmpty(){<br />return top == null;<br />}<br />public static void main(String args[]) {<br />DynamicIntStack myStack = new DynamicIntStack();<br />myStack.push(5);<br />myStack.push(10);<br />/* mencetak elemen dari stack */<br />IntStackNode currNode = myStack.top;<br />while (currNode!=null) {<br />System.out.println(currNode.data);<br />currNode = currNode.next;<br />}<br />System.out.println(myStack.pop());<br />System.out.println(myStack.pop());<br />}<br />}<br />J.E.N.I.<br />Pengenalan Pemrograman 2 10<br />Gambar 1.2.7: Implementasi linked dari stack<br />3.3.8 Java Collections<br />Saat ini Anda telah diperkenalkan kepada dasar tipe data abstract. Pada intinya, Anda<br />telah mempelajari tentang dasar dari linked lists, stacks dan queue. Berita baik bahwa<br />tipe data abstract telah siap untuk diimplementasikan dan dimasukkan dalam Java. Class<br />Stack dan LinkedList diperbolehkan digunakan tanpa perlu pengertian yang lengkap dari<br />konsep ini. Bagaimanapun juga, sebagai ilmuwan komputer, sangat penting untuk<br />mengerti konsep dari tipe data abstract. Oleh karena itu, penjelasan terperinci masih<br />disampaikan dalam bagian yang terdahulu. Dengan peluncuran dari J2SE 5.0, queue<br />interface telah tersedia. Untuk detail pada class dan interface ini, dapat dilihat pada<br />dokumentasi Java API.<br />Kepada kita, Java telah menyajikan classes dan interfaces Collection yang lain, dimana<br />semuanya dapat ditemukan di java.util package. Contoh dari classes Collection termasuk<br />LinkedList, ArrayList, HashSet dan TreeSet. Class tersebut benar-benar implementasi<br />dari collection interfaces yang berbeda. Induk hirarki dari collection interfaces adalah<br />interfaces Collection itu sendiri. Sebuah collection hanyalah sebuah grup dari object yang<br />diketahui sebagai elemennya sendiri. Collection memperbolehkan penggandaan/salinan<br />dan tidak membutuhkan pemesanan elemen secara spesifik.<br />SDK tidak menyediakan implementasi built-in yang lain dari interface ini tetapi<br />mengarahkan subinterfaces, interfaces Set dan interfaces List diperbolehkan. Sekarang,<br />apa perbedaan dari kedua interface tersebut. Set merupakan collection yang tidak<br />dipesan dan tidak ada penggandaan di dalamnya. Sementara itu, list merupakan<br />collection yang dipesan dari elemen-elemen dimana juga diperbolehkannya<br />penggandaan. HashSet, LinkedHashSet dan TreeSet suatu implementasi class dari<br />interfaces Set. ArrayList, LinkedList dan Vector suatu implementasi class dari List<br />interfaces.<br /><root interface><br />Collection<br /><interface><br />Set<br /><interface><br />List<br /><implementing classes> <implementing classes><br />HashSet LinkedHashSet TreeSet ArrayList LinkedList Vector<br />Tabel 1.2.8a: Java collections<br />Berikut ini adalah daftar dari beberapa methods Collections yang disediakan dalam<br />Collection API dari Java 2 Platform SE v1.4.1. Dalam Java 2 Platform SE v.1.5.0,<br />methods ini telah dimodifikasi untuk menampung generic types. Karena generic types<br />masih belum selesai dibahas, sebaiknya mempertimbangkan method ini terlebih dahulu.<br />J.E.N.I.<br />Pengenalan Pemrograman 2 11<br />Disarankan bahwa Anda mengacu pada Collection methods yang terbaru dimana Anda<br />lebih mudah mengerti generic types, yang akan didiskusikan pada chapter berikutnya.<br />Collection Methods<br />public boolean add(Object o)<br />Memasukkan Object o ke dalam collection ini. Mengembalikan nilai true jika o telah<br />sukses ditambahkan ke dalam collection.<br />public void clear()<br />Menghapus semua elemen dari collection ini.<br />public boolean remove(Object o)<br />Menghapus single instance dari Object o pada collection ini, jika hal tersebut telah<br />diinputkan. Mengembalikan nilai true jika o telah ditemukan dan dihapus dari<br />collection.<br />public boolean contains(Object o)<br />Mengembalikan nilai true jika collection ini berisi Object o.<br />public boolean isEmpty()<br />Mengembalikan nilai true jika collection ini tidak berisi object atau elemen apapun.<br />public int size()<br />Mengembalikan jumlah dari elemen pada collection ini.<br />public Iterator iterator()<br />Mengembalikan sebuah iterator yang menunjukkan kita pada isi collection ini.<br />public boolean equals(Object o)<br />Mengembalikan nilai true jika Object o sama dengan yang ada pada collection ini.<br />public int hashCode()<br />Mengembalikan nilai hash code (yaitu ID) untuk collection ini. Objects atau collections<br />yang sama memiliki nilai hash code atau ID yang sama.<br />Tabel 1.2.8b: Methods dari class Collection<br />Anda diharapkan mengacu pada dokumentasi API untuk mengetahui daftar lengkap dari<br />methods dalam interface Collection, List dan Set.<br />Saat ini kita akan melihat beberapa classes collection. Harap mengacu pada API untuk<br />daftar dari methods yang dimasukkan ke dalam class ini.<br />Pada bagian sebelumnya, Anda telah melihat bagaimana mengimplementasikan linked<br />list dengan cara Anda sendiri. Java SDK juga telah menyediakan built-implementation<br />dari linked list untuk kita. Class LinkedList berisi methods yang memperbolehkan linked<br />list digunakan seperti stacks, queue atau ADT yang lain. Listing program berikut ini<br />menunjukan bagaimana menggunakan class LinkedList.<br />J.E.N.I.<br />Pengenalan Pemrograman 2 12<br />import java.util.*;<br />class LinkedListDemo {<br />public static void main(String args[]) {<br />LinkedList list = new LinkedList();<br />list.add(new Integer(1));<br />list.add(new Integer(2));<br />list.add(new Integer(3));<br />list.add(new Integer(1));<br />System.out.println(list + ", size = " + list.size());<br />list.addFirst(new Integer(0));<br />list.addLast(new Integer(4));<br />System.out.println(list);<br />System.out.println(list.getFirst() + ", " +<br />list.getLast());<br />System.out.println(list.get(2) + ", " + list.get(3));<br />list.removeFirst();<br />list.removeLast();<br />System.out.println(list);<br />list.remove(new Integer(1));<br />System.out.println(list);<br />list.remove(3);<br />System.out.println(list);<br />list.set(2, "one");<br />System.out.println(list);<br />}<br />}<br />ArrayList merupakan versi fleksibel dari array biasa. Yang mengimplementasikan List<br />interface. Telitilah kode berikut ini.<br />import java.util.*;<br />class ArrayListDemo {<br />public static void main(String args[]) {<br />ArrayList al = new ArrayList(2);<br />System.out.println(al + ", size = " + al.size());<br />al.add("R");<br />al.add("U");<br />al.add("O");<br />System.out.println(al + ", size = " + al.size());<br />al.remove("U");<br />System.out.println(al + ", size = " + al.size());<br />ListIterator li = al.listIterator();<br />while (li.hasNext())<br />System.out.println(li.next());<br />Object a[] = al.toArray();<br />for (int i=0; i<a.length; i++)<br />System.out.println(a[i]);<br />}<br />}<br />J.E.N.I.<br />Pengenalan Pemrograman 2 13<br />HashSet merupakan sebuah implementasi dari interface Set yang mempergunakan hash<br />table. Penggunaan suatu hash table lebih mudah dan cepat untuk melihat lebih detail<br />elemen-elemen yang ada. Tabel tersebut menggunakan suatu rumusan untuk<br />menentukan dimana suatu objek disimpan. Teliti program ini, yang menggunakan class<br />HashSet.<br />import java.util.*;<br />class HashSetDemo {<br />public static void main(String args[]) {<br />HashSet hs = new HashSet(5, 0.5f);<br />System.out.println(hs.add("one"));<br />System.out.println(hs.add("two"));<br />System.out.println(hs.add("one"));<br />System.out.println(hs.add("three"));<br />System.out.println(hs.add("four"));<br />System.out.println(hs.add("five"));<br />System.out.println(hs);<br />}<br />}<br />TreeSet merupakan sebuah implementasi dari interface Set yang menggunakan tree.<br />Class ini memastikan bahwa yang disortir akan diurutkan secara ascending. Perhatikan,<br />bagaimana class TreeSet telah digunakan dalam listing program berikut ini.<br />import java.util.*;<br />class TreeSetDemo {<br />public static void main(String args[]) {<br />TreeSet ts = new TreeSet();<br />ts.add("one");<br />ts.add("two");<br />ts.add("three");<br />ts.add("four");<br />System.out.println(ts);<br />}<br />}<br />Gambar 1.2.8: Contoh TreeSet<br />J.E.N.I.<br />Pengenalan Pemrograman 2 14<br />3.4 Latihan<br />3.4.1 Faktor Persekutuan Terbesar<br />Faktor persekutuan terbesar (FPB) dari dua angka adalah angka yang terbesar selalu<br />dibagi oleh angka yang satunya, kemudian modulus atau sisa pembagian membagi<br />angka kedua dan seterusnya hingga sisa pembagian dari kedua angka tersebut sama<br />dengan nol. Menggunakan metode Euclid, buatlah dua kode untuk penghitungan dua<br />angka. Gunakan iterasi untuk kode program yang pertama dan rekursif untuk kode<br />program berikutnya.<br />Catatan pada algoritma Euclid :<br />1. Sebagai masukkan integers x dan y.<br />2. Ulangi step dibawah ini while y != 0<br />a. y = x % y;<br />b. x = Nilai lama y;<br />3. Return x.<br />Contoh, x = 14 dan y = 6.<br />y = x % y = 14 % 6 = 2<br />x = 6<br />y = x % y = 6 % 2 = 0<br />x = 2 (FPB)<br />3.4.2 Sequential Representation dari Integer Queue<br />Dengan menggunakan array, implementasikan sebuah integer queue seperti contoh<br />pada sequential stack.<br />3.4.3 Linked Representation dari Integer Queue<br />Dengan menggunakan ide dari linked list, implementasikan sebuah integer queue<br />dinamis seperti integer stack dinamis yang diperkenalkan seperti contoh berikut.<br />3.4.4 Address Book<br />Dengan menggunakan Collection Java, buatlah sebuah program yang memperbolehkan<br />user untuk insert, delete dan view address. Setiap address berisi nama, alamat dan<br />nomor telepon dari orang yang mengisinya. Pengisian data dimasukkan dengan cara<br />queue tetapi penghapusan dilakukan dengan cara stack.<br />Dalam contoh ini, kita akan menggunakan text editor untuk mengedit program Java.<br />Juga membuka terminal window untuk meng-compile dan mengeksekusi program Java<br />Anda.ikbal achmad fahreza 26http://www.blogger.com/profile/18159349729659542082noreply@blogger.com0tag:blogger.com,1999:blog-5523624169352417795.post-28873285172511497802012-11-08T04:29:00.002-08:002012-11-08T04:30:02.554-08:00ThreadsSebuah thread merupakan sebuah pengontrol aliran program. Untuk lebih mudahnya,<br />bayangkanlah thread sebagai sebuah proses yang akan dieksekusi didalam sebuah<br />program tertentu. Penggunaan sistem operasi modern saat ini telah mendukung<br />kemampuan untuk menjalankan beberapa program. Misalnya, pada saat Anda mengetik<br />sebuah dokumen di komputer Anda dengan menggunakan text editor, dalam waktu yang<br />bersamaan Anda juga dapat mendengarkan musik, dan surfing lewat internet di PC<br />Anda. Sistem operasi yang telah terinstal dalam computer Anda itulah yang<br />memperbolehkan Anda untuk menjalankan multitaskting. Seperti itu juga sebuah<br />program (ibaratkan di PC Anda), ia juga dapat mengeksekusi beberapa proses secara<br />bersama-sama(ibaratkan beberapa aplikasi berbeda yang bekerja pada PC Anda).<br />Sebuah contoh aplikasi adalah HotJava browser yang memperbolehkan Anda untuk<br />browsing terhadap suatu page, bersamaan dengan mendownload object yang lain,<br />misalnya gambar, memainkan animasi, dan juga file audio pada saat yang bersamaan.<br />
<br />
State dari Thread<br />Sebuah thread memungkinkan untuk memiliki beberapa state:<br />1. Running<br />Sebuah thread yang pada saat ini sedang dieksekusi dan didalam control dari CPU.<br />2. Ready to run<br />Thread yang sudah siap untuk dieksekusi, tetapi masih belum ada kesempatan untuk<br />melakukannya.<br />3. Resumed<br />Setelah sebelumnya di block atau diberhentikan sementara, state ini kemudian siap<br />untuk dijalankan.<br />4. Suspended<br />Sebuah thread yang berhenti sementara, dan kemudian memperbolehkan CPU untuk<br />menjalankan thread lain bekerja.<br />5. Blocked<br />Sebuah thread yang di-block merupakan sebuah thread yang tidak mampu berjalan,<br />karena ia akan menunggu sebuah resource tersedia atau sebuah event terjadi.<br />
<br />
Class dari threads :<br />
1. constructor<br />
2. constants<br />
3. methods<br />
<br />
contoh program dari threads :<br />
import javax.swing.*;<br />import java.awt.*;<br />class CountDownGUI extends JFrame {<br />JLabel label;<br />CountDownGUI(String title) {<br />super(title);<br />label = new JLabel("Start count!");<br />setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);<br />getContentPane().add(new Panel(), BorderLayout.WEST);<br />getContentPane().add(label);<br />setSize(300,300);<br />setVisible(true);<br />}<br />void startCount() {<br />try {<br />for (int i = 10; i > 0; i--) {<br />Thread.sleep(1000);<br />label.setText(i + "");<br />}<br />Thread.sleep(1000);<br />label.setText("Count down complete.");<br />Thread.sleep(1000);<br />} catch (InterruptedException ie) {<br />}<br />label.setText(Thread.currentThread().toString());<br />}<br />public static void main(String args[]) {<br />CountDownGUI cdg = new CountDownGUI("Count down GUI");<br />cdg.startCount();<br />}<br />}<br />
<br />
*disini saya tidak meyertakan link download , biar anda tidak malas
mengetik dan mencoba supaya tahu jika dalam program yang anda buat
terjadi kesalahan atau error.<br />Terima kasih semoga bermanfaat postingan dari saya .<br />
<div style="background-color: transparent; border: medium none; color: black; overflow: hidden; text-align: left; text-decoration: none;">
Read more at <a href="http://ikbalfahreza.blogspot.com/2012/11/menggunakan-struktur-pemilihan-switch.html#RLhL1SL2eskwEfpd.99" style="color: #003399;">http://ikbalfahreza.blogspot.com/2012/11/menggunakan-struktur-pemilihan-switch.html#RLhL1SL2eskwEfpd.99</a> </div>
ikbal achmad fahreza 26http://www.blogger.com/profile/18159349729659542082noreply@blogger.com0tag:blogger.com,1999:blog-5523624169352417795.post-52207080063007815112012-11-03T20:55:00.004-07:002012-11-03T20:56:01.592-07:00MENGGUNAKAN STRUKTUR PEMILIHAN SWITCH CASEKetika pernyataan switch ditemukan pada potongan kode program, java pertamakali akan<br />memeriksa switch_expression, dan menuju ke case yang akan menyamakan nilai yang<br />dimiliki oleh switch_expression. Selanjutnya program akan mengeksekusi pernyataan<br />pada dari kode setelah case yang ditemukan sampai menemui pernyataan break,<br />selanjutnya akan mengabaikan pernyataan yang lainnya hingga akhir dari struktur dari<br />pernyataan switch.<br />Jika tidak ditemui case yang cocok, maka program akan mengeksekusi blok default.<br />Sebagai catatan, bahwa bagian blok default adalah opsional. Sebuah pernyataan switch<br />bisa jadi tidak memiliki blok kode default.<br />CATATAN:<br />• Tidak seperti padapernyataan if, beberapa pernyataan pada struktur pernyataan switch<br />akan dieksekusi tanpa memerlukan tanda kurung kurawal ({}).<br />• Ketika sebuah case pada pernyataan switch menemui kecocokan, semua pernyataan<br />pada case tersebut akan dieksekusi. Tidak hanya demikian, pernyataan lain<br />yang berada pada case yang sesuai juga akan dieksekusi.<br />• Untuk menghindari program mengeksekusi pernyataan pada case berikutnya,<br />kita menggunakan pernyataan break sebagai pernyataan akhir pada setiap blok case.<br />Bentuk umum : <br />switch( switch_expression ){<br />case case_selector1:<br />statement1; //<br />statement2; //block 1<br />. . . //<br />break;<br />case case_selector2:<br />statement1; //<br />statement2; //block 2<br />. . . //<br />break;<br />. . . <br />default:<br />}<br /><br />Dan inilah contoh yang saya buat :<br />package day4;<br /><br />import java.util.Scanner;<br /><br />/**<br /> *<br /> * @author PERSONAL<br /> */<br />public class latihan {<br /> int nilai1 ;<br /> public void selek() {<br /> System.out.println("menu yang ada :");<br /> System.out.println("1. mie kotok");<br /> System.out.println("2. bakar ayam");<br /> System.out.println("3. impun goreng");<br /> Scanner asup = new Scanner(System.in);<br /> nilai1=asup.nextInt();<br /> selek();<br /> }<br /> <br /> <br /> public int selek(int nilai1){<br /> switch(nilai1){<br /> case 1:<br /> System.out.println("anda memilih menu mie kotok");break;<br /> case 2:<br /> System.out.println("anda memilh bakar ayam");break;<br /> case 3 :<br /> System.out.println("anda memilih impun goreng");break;<br /> default :<br /> System.out.println("sia mah tolol nya milih teh");break;<br /> }<br /> return nilai1;<br /> <br /> } <br /> <br /> public static void main(String[] args) {<br /> latihan ibay = new latihan(); <br /> ibay.selek();<br /> <br /> }<br /> <br />}<br />*disini saya tidak meyertakan link download , biar anda tidak malas mengetik dan mencoba supaya tahu jika dalam program yang anda buat terjadi kesalahan atau error.<br />Terima kasih semoga bermanfaat postingan dari saya .<br /><br />ikbal achmad fahreza 26http://www.blogger.com/profile/18159349729659542082noreply@blogger.com0tag:blogger.com,1999:blog-5523624169352417795.post-6374516695121188532012-11-03T20:38:00.001-07:002012-11-03T20:38:10.211-07:00BEKERJA DENGAN FORPernyataan for loop memiliki kondisi hampir mirip seperti struktur pengulangan<br />sebelumnya yaitu melakukan pengulangan untuk mengeksekusi kode yang sama<br />sebanyak jumlah yang telah ditentukan.<br />Ada pun bentuk umum dari penulisan for :<br />for (InitializationExpression; LoopCondition; StepExpression){<br />statement1;<br />statement2;<br />. . .<br />}<br />Dan inilah contoh program dengan for yang sudah saya buat :<br />package day4;<br /><br />import java.util.Scanner;<br /><br />/**<br /> *<br /> * @author PERSONAL<br /> */<br />public class mencobaFor {<br /><br /> public mencobaFor() {<br /> Scanner scan = new Scanner(System.in);<br /> int input;<br /> input = scan.nextInt();<br /><br /> for (int i = input; i >= 1; i--) {<br /> for (int j = 1; j <= input; j++) {<br /> if (j <= i) {<br /> System.out.print("j");<br /> } else {<br /> System.out.println(" ");<br /> }<br /> }<br /><br /><br /><br /> for (int j = input; j >= 1; j--) {<br /> if (j <= i) {<br /> System.out.print(j);<br /> } else {<br /> System.out.println("");<br /> }<br /> }<br /> System.out.println(" ");<br /> }<br /> }<br /><br /> public static void main(String[] args) {<br /> mencobaFor MU = new mencobaFor();<br /> }<br />}<br />
<br />
*disini saya tidak meyertakan link download , biar anda tidak malas mengetik dan mencoba supaya tahu jika dalam program yang anda buat terjadi kesalahan atau error.<br />Terima kasih semoga bermanfaat postingan dari saya .<br /><br />ikbal achmad fahreza 26http://www.blogger.com/profile/18159349729659542082noreply@blogger.com0