02 Juli 2009

TUGAS BESAR JAVA

import java.util.Hashtable; import java.util.Enumeration;


import javax.microedition.lcdui.Item; import javax.microedition.lcdui.List; import javax.microedition.lcdui.Form; import javax.microedition.midlet.MIDlet; import javax.microedition.lcdui.Display; import javax.microedition.lcdui.Command; import javax.microedition.lcdui.Displayable; import javax.microedition.lcdui.CommandListener?;

import javax.microedition.media.Player; import javax.microedition.media.Control; import javax.microedition.media.Manager; import javax.microedition.media.PlayerListener?; import javax.microedition.media.control.VideoControl?;

public class PlayVideo? extends MIDlet

implements CommandListener?, PlayerListener? {

private Display display; private List itemList; private Form form;

private Command stopCommand; private Command pauseCommand; private Command startCommand;

private Hashtable items; private Hashtable itemsInfo;

private Player player;

public PlayVideo?() {

display = Display.getDisplay(this);

itemList = new List("Video", List.IMPLICIT);

stopCommand = new Command("Stop", Command.STOP, 1); pauseCommand = new Command("Pause", Command.ITEM, 1); startCommand = new Command("Mulai", Command.ITEM, 1);

form = new Form("Play Video");

form.addCommand(stopCommand); form.addCommand(pauseCommand); form.setCommandListener(this);

items = new Hashtable();

itemsInfo = new Hashtable();

items.put("video.mpeg", "file://video.mpg"); itemsInfo.put("video.mpeg", "video/mpeg");

}

public void startApp() {

for(Enumeration en = items.keys(); en.hasMoreElements();) {

itemList.append((String)en.nextElement(), null);

}

itemList.setCommandListener(this);

display.setCurrent(itemList);

}

public void pauseApp() {

try {

if(player != null) player.stop();

} catch(Exception e) {}

}

public void destroyApp(boolean unconditional) {

if(player != null) player.close();

}

public void commandAction(Command command, Displayable disp) {

if(disp instanceof List) {

List list = ((List)disp);

String key = list.getString(list.getSelectedIndex());

try {

playMedia((String)items.get(key), key);

} catch (Exception e) { }

} else if(disp instanceof Form) {

try {

if(command == stopCommand) {

player.close(); display.setCurrent(itemList); form.removeCommand(startCommand); form.addCommand(pauseCommand);

} else if(command == pauseCommand) {

player.stop(); form.removeCommand(pauseCommand); form.addCommand(startCommand);

} else if(command == startCommand) {

player.start(); form.removeCommand(startCommand); form.addCommand(pauseCommand);

}

} catch(Exception e) { }

}

}

private void playMedia(String locator, String key) throws Exception {

String file = locator.substring(

locator.indexOf("file://") + 6, locator.length());

player =

Manager.createPlayer(

getClass().getResourceAsStream(file), (String)itemsInfo.get(key));

player.addPlayerListener(this);

player.setLoopCount(-1); player.prefetch(); player.realize();

player.start();

}

public void playerUpdate(Player player, String event, Object eventData) {

if(event.equals(PlayerListener?.STARTED) &&

new Long(0L).equals((Long)eventData)) {

VideoControl? vc = null; if((vc = (VideoControl?)player.getControl("VideoControl?")) != null) {

Item videoDisp =

(Item)vc.initDisplayMode(vc.USE_GUI_PRIMITIVE, null);

form.append(videoDisp);

}

display.setCurrent(form);

} else if(event.equals(PlayerListener?.CLOSED)) {

form.deleteAll();

}

}

}
class Lingkaran
{
private double jari_jari;

public Lingkaran()
{
setJariJari(1);
}

public void Lingkaran(double r)
{
if(r>0)
jari_jari=r;
else 
jari_jari=1.0;
}
public void setJariJari(double r)
{
if(r>0)
jari_jari=r;
}

public double getJariJari()
{
return(jari_jari);
}

public double hitungLuas()
{
return(Math.PI* jari_jari*jari_jari);
}

public double hitungKeliling()
{
return(Math.PI*2.0*jari_jari);
}
}

public class CobaLingkaran_2
{
public static void main(String args[])
{
Lingkaran abc=new Lingkaran();
Lingkaran pqr=new Lingkaran();
Lingkaran xyz=new Lingkaran();

pqr.setJariJari(5);
xyz.setJariJari(3.2);

System.out.println("Data Default");
System.out.println("=====================");
System.out.println("Jari-jari abc: " +abc.getJariJari());
System.out.println("Jari-jari pqr: " +pqr.getJariJari());
System.out.println("Jari-jari xyz: " +xyz.getJariJari());
System.out.println();

abc.setJariJari(5);
pqr.setJariJari(3.2);
xyz.setJariJari(1.8);

System.out.println("Data Sekarang: ");
System.out.println("=====================");
System.out.println("Jari-jari abc: " +abc.getJariJari());
System.out.println("Jari-jari pqr: " +pqr.getJariJari());
System.out.println("Jari-jari xyz: " +xyz.getJariJari());
System.out.println();
}
}
//RetrieveText.java
import java.awt.*;
import java.applet.*;

public class RetrieveText extends Applet
{
Label label;
TextField textField;

public void init()
{
//Membuat label;
label = new Label ("Masukkan teks kemudian tekan Enter...!");
textField = new TextField(20);
add(label);
add(textField);
}
public void paint (Graphics g)
{
g.drawString ("Anda menuliskan : ", 30, 80);

//Mengambil input String
String s = textField.getText();
g.drawString(s, 30, 100);
}

public boolean action(Event event,Object arg)
{
repaint();
return true;
}
}
//Text.java
import java.applet.*;
import java.awt.*;
import java.awt.event.*;

public class Text extends Applet{

//Inisialisasi
TextField textField = new TextField();
TextArea textArea = new TextArea();
Button insert = new Button ("Insert");
Button clear = new Button ("Clear");

public void init(){
setLayout (null);

//MEmbuat ukkura textField serta textarea
textField.setBounds(10,10,200,25);
textArea.setBounds(10,50,200,75);

//Memasukkan serta menghapus input
insert.setBounds(10,140,75,25);
clear.setBounds(100,140,75,25);
insert.addActionListener(new ButtonHandler());
clear.addActionListener(new ButtonHandler());

add(textField);
add(textArea);
add(insert);
add(clear);}

//Mendeteksi dan menerapkan perintah
class ButtonHandler implements ActionListener {
public void actionPerformed(ActionEvent ev){
String s=ev.getActionCommand();
if(s.equals("Insert")){
String text =textArea.getText()+textField.getText();
textArea.setText(text);
}
else if(s.equals ("Clear")) textArea.setText("");
}
}
}

05 April 2009

java menu

/**
 * Title : DemoJMenu
 * Deskripsi: Membuat aplikasi Menu sederhana.
 * @author : Benny Hermawan
 * @versi : 1.0
 */

import java.awt.*;
import java.awt.event.*;
import javax.swing.JMenu;
import javax.swing.JMenuItem;
import javax.swing.JCheckBoxMenuItem;
import javax.swing.JRadioButtonMenuItem;
import javax.swing.ButtonGroup;
import javax.swing.JMenuBar;
import javax.swing.KeyStroke;
import javax.swing.ImageIcon;

import javax.swing.JTextArea;
import javax.swing.JScrollPane;
import javax.swing.JFrame;


public class DemoJMenu extends JFrame 
  implements ActionListener, ItemListener {
  JTextArea output;
  JScrollPane scrollPane;
  String newline = "\n";

  // Konstruktor Default
  public DemoJMenu() {
  JMenuBar menuBar;
  JMenu menu, submenu;
  JMenuItem menuItem;
  JRadioButtonMenuItem rbMenuItem;
  JCheckBoxMenuItem cbMenuItem;

  addWindowListener(new WindowAdapter() {
  public void windowClosing(WindowEvent e) {
  System.exit(0);
  }
  });

  // Menambahkan komponen-komponen ke window 
  // menggunakan default BorderLayout.
  Container contentPane = getContentPane();
  output = new JTextArea(5, 30);
  output.setEditable(false);
  scrollPane = new JScrollPane(output);
  contentPane.add(scrollPane, BorderLayout.CENTER);

  // Membuat menu bar.
  menuBar = new JMenuBar();
  setJMenuBar(menuBar);

  // Membuat menu pertama.
  menu = new JMenu("Menu");
  menu.setMnemonic(KeyEvent.VK_M);
  menu.getAccessibleContext().setAccessibleDescription(
  "Hanya menu ini yang memiliki item menu");
  menuBar.add(menu);

  // Membuat kelompok JMenuItems
  menuItem = new JMenuItem("New",
  KeyEvent.VK_T);

  menuItem.setAccelerator(KeyStroke.getKeyStroke(
  KeyEvent.VK_1, ActionEvent.ALT_MASK));
  menuItem.getAccessibleContext().setAccessibleDescription(
  "Item ini tidak mengerjakan apapun");
  menuItem.addActionListener(this);
  menu.add(menuItem);

  menuItem = new JMenuItem("Open", 
  new ImageIcon("new.gif"));
  menuItem.addActionListener(this);
  menu.add(menuItem);

  menuItem = new JMenuItem(new ImageIcon("open.gif"));
  menuItem.addActionListener(this);
  menu.add(menuItem);

  // Membuat kelompok item menu berupa radio button 
  menu.addSeparator();
  ButtonGroup group = new ButtonGroup();
  rbMenuItem = new JRadioButtonMenuItem
  ("Save");
  rbMenuItem.setSelected(true);
  rbMenuItem.setMnemonic(KeyEvent.VK_R);
  group.add(rbMenuItem);
  rbMenuItem.addActionListener(this);
  menu.add(rbMenuItem);
  rbMenuItem = new JRadioButtonMenuItem
  ("Save As");
  rbMenuItem.setMnemonic(KeyEvent.VK_L);
  group.add(rbMenuItem);
  rbMenuItem.addActionListener(this);
  menu.add(rbMenuItem);

  // Membuat kelompok item menu berupa check box 
  menu.addSeparator();
  cbMenuItem = new JCheckBoxMenuItem
  ("Import File");
  cbMenuItem.setMnemonic(KeyEvent.VK_C);
  cbMenuItem.addItemListener(this);
  menu.add(cbMenuItem);
  cbMenuItem = new JCheckBoxMenuItem
  ("Export File");
  cbMenuItem.addItemListener(this);
  menu.add(cbMenuItem);

  //Mengeset submenu
  menu.addSeparator();
  submenu = new JMenu("Exit");
  submenu.setMnemonic(KeyEvent.VK_S);

  menuItem = new JMenuItem("Exit with Save");
  menuItem.setAccelerator(KeyStroke.getKeyStroke(
  KeyEvent.VK_2, ActionEvent.ALT_MASK));
  menuItem.addActionListener(this);
  submenu.add(menuItem);

  menuItem = new JMenuItem("Exit without Save");
  menuItem.addActionListener(this);
  submenu.add(menuItem);
  menu.add(submenu);

  // Membuat menu kedua dalam menu bar.
  menu = new JMenu("Menu lainnya");
  menu.getAccessibleContext().setAccessibleDescription(
  "Menu ini hanya menampilkan deteksi event");
  menuBar.add(menu);
  }

  // Membuat handler yang akan mendeteksi event
  public void actionPerformed(ActionEvent e) {
  JMenuItem source = (JMenuItem)(e.getSource());
  String s = "Action event terdeteksi."
  + newline
  + " Event source: " + source.getText()
  + " (merupakan instans dari" + 
  getClassName(source) + ")";
  output.append(s + newline);
  }

  public void itemStateChanged(ItemEvent e) {
  JMenuItem source = (JMenuItem)(e.getSource());
  String s = "Item event terdeteksi."
  + newline
  + " Event source: " + source.getText()
  + " (merupakan instans dari " + 
  getClassName(source) + ")"
  + newline
  + " State baru: " 
  + ((e.getStateChange() == ItemEvent.SELECTED) ?
  "selected":"unselected");
  output.append(s + newline);
  }

  // Mengembalikan nama kelas 
  protected String getClassName(Object o) {
  String classString = o.getClass().getName();
  int dotIndex = classString.lastIndexOf(".");
  return classString.substring(dotIndex+1);
  }

  // Main Method
  public static void main(String[] args) {
  DemoJMenu window = new DemoJMenu();

  window.setTitle("Mendemonstrasikan Menu");
  window.setSize(450, 260);
  window.setVisible(true);
  }
}

17 Maret 2009

APLIKASI JAVA

Perkembangan Java

Bahasa pemrograman Java pertama lahir dari The Green Project, yang berjalan selama 18 bulan, dari awal tahun 1991 hingga musim panas 1992. Pada 1992 terciptalah sebuah program Java Oak pertama, yang ditujukan sebagai pengendali sebuah peralatan dengan teknologi layar sentuh (touch screen), seperti pada PDA sekarang ini. Teknologi baru ini dinamai "*7" (Star Seven). Setelah era Star Seven selesai, sebuah anak perusahaan TV kabel tertarik ditambah beberapa orang dari proyek The Green Project. Mereka memusatkan kegiatannya pada sebuah ruangan kantor di 100 Hamilton Avenue, Palo Alto.
Perusahaan it uterus berkembang menjadi perambah (browser) Mosaic sebagai landasan awal untuk membuat perambah Java pertama yang dinamai Web Runner, terinsipirasi dari film 1980-an, Blade Runner. Pada perkembangan rilis pertama, Web Runner berganti nama menjadi Hot Java.
Java merupakan suatu teknologi perangkat lunak yang di dalamnya mencakup bahasa pemrograman. Selain itu Java juga merupakan suatu platform yang memiliki virtual machine dan library yang diperlukan untuk menulis dan menjalankan suatu program.
Java sendiri pada awalnya dikembangkan pada lingkungan komputer oleh Sun Microsystem Inc. dengan tujuan untuk menghasilkan suatu bahasa komputer sederhana tanpa harus terikat pada arsitektur tertentu. Maka tak heran, dalam perkembangannya Java dapat dijalankan pada berbagai platform sistem operasi seperti Linux, Windows maupun Unix.
Karena keunikan dan keandalannya, Java pun semakin banyak dikenal. Pada tahun 1995 Sun meluncurkan sebuah browser berbasis Java dengan julukan Hot Java, kemudian diikuti Netscape yang memutuskan untuk membuat browser dengan dilengkapi bahasa Java di dalamnya. Setelahnya, ikut bergabung pula berbagai pengembang ternama diantaranya IBM dan Microsoft.

Pada tahun berikutnya, Sun Microsystem Inc. merilis Java Software Development Kit (JDK) pertamanya, JDK 1.1. Kemudian terus berkembang dari pemrograman applet yang berjalan di browser menjadi pemrograman kelas dunia yang banyak digunakan untuk pengembangan aneka ragam aplikasi. Tidak hanya pada komputer, Java juga dapat berjalan pada bermacam-macam perangkat, mulai telepon genggam sampai aplikasi berskala enterprise pada komputer server.

Aplikasi pada Java

J2SE digunakan untuk mengembangkan aplikasi-aplikasi desktop dan applet, J2EE dipergunakan untuk mengembangkan aplikasi-aplikasi berbasis client/server berskala enterprise, sedangkan J2ME diaplikasikan pada berbagai perangkat kecil dengan jumlah memori, kapasitas penyimpan dan user interface terbatas, seperti ponsel dan PDA.
J2ME
Seperti paket-paket Java lainnya yang menggunakan Java Virtual Machine (JVM) sebagai interpreter, dalam J2ME digunakan pula virtual machine yang disebut K Virtual Machine (KVM) yang memiliki keunggulan tersendiri, hanya memerlukan memori kecil. Huruf K pada K Virtual Machine sendiri merupakan singkatan dari kilobyte, untuk menggambarkan betapa virtual machine ini bekerja pada memori yang demikian kecilnya.
KVM memungkinkan para pengembang software independen untuk bermain-main pada berbagai platform handset menjadi terbuka tanpa perlu melakukan perubahan berarti dalam hal programnya. Dengan J2ME yang berbasis C++, sebuah aplikasi akan memiliki portabilitas untuk dijalankan pada berbagai jenis telepon genggam.
MIDIlet

MIDIlet adalah aplikasi yang dibuat menggunakan J2ME dengan profile Mobile Information Device Profile (MIDP) yang dikhususkan untuk digunakan pada handset dengan kemampuan prosesor, memori dan layar yang terbatas, misalnya ponsel, pager, PDA, Pocket PC dan sebagainya.


Penerapan-Penerapan dari Java

Penerapan java ini telah banyak diberbagai bidang, antara lain sbb:
  • Internet, Web, Game Online
  • Applet yang Dinamis (Yahoo Games)
  • Data yang Realtime
  • Desktop Application
  • Penerapan pada Komputer dan Mesin Mesin Elektronik
  • Mobile Electronic
  • Smart Card (Java Card)

Contoh penerapan-penerapan aplikasi java

CLDC (Connected Limited Device Configuration) adalah spesifikasi yang ditujukan pada perangkat elektronik yang memiliki sumber daya terbatas yang dikembangkan untuk keperluan teknologi wireless Java, memungkinkan pengguna ponsel untuk menginstallkan aplikasi Java (MIDIlet) ke telepon genggam mereka. MIDP (Mobile Information Device Profile) merupakan suatu spesifikasi untuk memerkaya fitur pada CLDC dengan menyediakan tambahan kelas yang lebih spesifik pada tipe perangkat.
MMAPI (Mobile Media API) merupakan suatu spesifikasi yang ditujukan untuk menangani kemampuan multimedia pada telepon bergerak yang berbasis Java. 
WMA (Wireless Messaging API) yaitu spesifikasi yang ditujukan untuk menangani pengiriman dan penerimaan pesan singkat pada platform Java.