Selasa, 14 Agustus 2012

Demo Text Field


import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

class DemoTextField implements ActionListener {   
  public JLabel label1, label2, label3;
  public JTextField textField1, textField2, textField3;
  public JButton button1, button2, button3, button4;
       
  public DemoTextField() {   
       
    label1 = new JLabel("Nilai A");
    label1.setLocation(10, 10);
    label1.setSize(label1.getPreferredSize());   
       
    textField1 = new JTextField(20);
    textField1.setLocation(10, 25);
    textField1.setSize(textField1.getPreferredSize());   
       
    label2 = new JLabel("Nilai B");
    label2.setLocation(10, 45);
    label2.setSize(label2.getPreferredSize());   
               
    textField2 = new JTextField(20);
    textField2.setLocation(10, 60);
    textField2.setSize(textField2.getPreferredSize());   
       
    label3 = new JLabel("Hasil perhitungan antara A dan B");
    label3.setLocation(10, 90);
    label3.setSize(label3.getPreferredSize());
       
    textField3 = new JTextField(20);
    textField3.setLocation(10, 105);
    textField3.setSize(textField3.getPreferredSize());   
    textField3.setEditable(false);
       
    button1 = new JButton("Tambah");
    button1.setLocation(245, 10);
    button1.setSize(button1.getPreferredSize());
    button1.addActionListener(this);
    button1.setMnemonic('T');
     
    button2 = new JButton("Kurang");
    button2.setLocation(245, 40);
    button2.setSize(button1.getPreferredSize());
    button2.addActionListener(this);
    button2.setMnemonic('u');
       
    button3 = new JButton("Kali");
    button3.setLocation(245, 70);
    button3.setSize(button1.getPreferredSize());
    button3.addActionListener(this);
    button3.setMnemonic('K');
       
    button4 = new JButton("Bagi");
    button4.setLocation(245, 100);
    button4.setSize(button1.getPreferredSize()); 
    button4.addActionListener(this);
    button4.setMnemonic('B');   
  }
   
  public void createAndShowGUI() {
    JFrame.setDefaultLookAndFeelDecorated(true);
    JFrame frame = new JFrame("Demo JTextField");
    frame.setLayout(null);
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

    frame.getContentPane().add(label1);
    frame.getContentPane().add(textField1);
    frame.getContentPane().add(label2);
    frame.getContentPane().add(textField2);
    frame.getContentPane().add(label3);
    frame.getContentPane().add(textField3);
    frame.getContentPane().add(button1);
    frame.getContentPane().add(button2);
    frame.getContentPane().add(button3);
    frame.getContentPane().add(button4);
       
    frame.setBounds(0, 0, 350, 200);
    frame.setLocationRelativeTo(null);

    frame.setVisible(true);
  }
   
  public void actionPerformed(ActionEvent event) {
    double a=0.0, b=0.0, c=0.0;
       
    try {
      a = Double.parseDouble(textField1.getText());
      b = Double.parseDouble(textField2.getText());
    } catch (NumberFormatException nfe) {
      nfe.printStackTrace();
    }
       
    JButton btn = (JButton) event.getSource();
    if (btn == button1) {
      c = a + b;
    } else if (btn == button2) {
      c = a - b;
    } else if (btn == button3) {
      c = a * b;
    } else {
      c = a / b;
    }
       
    textField3.setText(new String().valueOf(c));     
  }
   
  public static void main(String[] args) {       
    javax.swing.SwingUtilities.invokeLater(new Runnable() {
      public void run() {
        DemoTextField app = new DemoTextField();
        app.createAndShowGUI();
      }
    });       
  }   
}

Demo Text Area


import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

class DemoTextArea {   
  public JTextArea textArea;
  public JScrollPane scroller;
               
  public DemoTextArea() {               
    textArea = new JTextArea(345,190);
    textArea.setText(
     "Ini adalah contoh string panjang " +
     "(lebih dari satu baris) " +
     "yang dimasukkan ke dalam komponen JTextArea.");
    textArea.setLineWrap(true);  //di-wrap atau dipotong
              
    scroller = new JScrollPane(textArea,
      ScrollPaneConstants.VERTICAL_SCROLLBAR_AS_NEEDED,
      ScrollPaneConstants.HORIZONTAL_SCROLLBAR_AS_NEEDED);
    scroller.setLocation(0,0);
    scroller.setSize(new Dimension(345, 190));           
  }
       
  public void createAndShowGUI() {
    JFrame.setDefaultLookAndFeelDecorated(true);
    JFrame frame = new JFrame("Demo JTextArea");
    frame.setLayout(null);
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
       
    frame.getContentPane().add(scroller);
               
    frame.setBounds(0, 0, 355, 200);
    frame.setLocationRelativeTo(null);

    frame.setVisible(true);
  }
   
  public static void main(String[] args) {       
    javax.swing.SwingUtilities.invokeLater(new Runnable() {
      public void run() {
        DemoTextArea app = new DemoTextArea();
        app.createAndShowGUI();
      }
    });       
  }   
}

Demo Throws


class Barang {
  private String kode;
  private String nama;
  private double harga;
   
  public void setKode(String vKode) {
    try {
      kode = vKode;
      if (kode == null) {
        throw new NullPointerException();
      }
    } catch (NullPointerException npe) {
      System.out.println("KESALAHAN: " +
        "Kode barang tidak boleh null");
    }
  }
   
  public String getKode() {
    return kode;
  }
   
  public void setNama(String vNama) {
    try {
      nama = vNama;
      if (nama == null) {
        throw new NullPointerException();
      }
    } catch (NullPointerException npe) {
      System.out.println("KESALAHAN: " +
        "Nama barang tidak boleh null");
    }
  }
   
  public String getNama() {
    return nama;
  }
   
  public void setHarga(int vHarga) {
    harga = vHarga;
  }
   
  public double getHarga() {
    return harga;
  }   
}

class DemoThrow {   
  public static void main(String[] args) {   
   
    Barang obj = new Barang();
       
    obj.setKode(null);
    obj.setNama("Buku tulis");
    obj.setHarga(2500);
       
    System.out.println("\nKode : " + obj.getKode());
    System.out.println("Nama   : " + obj.getNama());
    System.out.println("Harga  : " + obj.getHarga());   
  }       
}

Demo Interface Turunan


interface IInduk {
  double tambah(double a, double b);
  double kurang(double a, double b);
}

interface ITurunan extends IInduk {
  double kali(double a, double b);
  double bagi(double a, double b);
}

class Aritmetika implements ITurunan {   
  private double x;
  private double y;
 
  Aritmetika(double x, double y) {
    this.x = x;
    this.y = y;
  }
 
  public double tambah(double a, double b) {
    return (a + b);
  }
 
  public double kurang(double a, double b) {
    return (a - b);
  }
 
  public double kali(double a, double b) {
    return (a * b);
  }
 
  public double bagi(double a, double b) {
    return (a / b);
  }
 
  public void cetakHasil() {
    System.out.println("x = " + x);
    System.out.println("y = " + y);
    System.out.println();
    System.out.println("x + y = " + tambah(x, y));
    System.out.println("x - y = " + kurang(x, y));
    System.out.println("x * y = " + kali(x, y));
    System.out.println("x / y = " + bagi(x, y));
  }
}

class DemoInterfaceTurunan { 
  public static void main(String[] args) {
    // membuat objek Aritmetika dengan x=10.0 dan y=2.5
    Aritmetika obj = new Aritmetika(10.0, 2.5);     
    obj.cetakHasil();     
  }   
}

Demo Interface


interface AlatMusik {
  void mainkan();
  void setelNada();
  String ambilNama();
}

class AlatMusikPetik implements AlatMusik {   
  protected String nama;
   
  public void mainkan() {
    System.out.println(ambilNama() +
          " dimainkan dengan cara petik");
  }
   
  public void setelNada() {
    System.out.println("Setel nada pada " + ambilNama());   
  }
   
  public String ambilNama() {
    return nama;
  }
}

class AlatMusikTiup implements AlatMusik {   
  protected String nama;
   
  public void mainkan() {
    System.out.println(ambilNama() +
          " dimainkan dengan cara tiup");
  }
   
  public void setelNada() {
    System.out.println("Setel nada pada " + ambilNama());   
  }
   
  public String ambilNama() {
    return nama;
  }
}

class AlatMusikPukul implements AlatMusik {   
  protected String nama;
   
  public void mainkan() {
    System.out.println(ambilNama() +
          " dimainkan dengan cara pukul");
  }
   
  public void setelNada() {
    System.out.println("Setel nada pada " + ambilNama());   
  }
   
  public String ambilNama() {
    return nama;
  }
}

class Gitar extends AlatMusikPetik {
  Gitar(String nama) {
    this.nama = nama;
  }
}

class Bass extends AlatMusikPetik {
  Bass(String nama) {
    this.nama = nama;
  }
}

class DemoInterface {   
  public static void main(String[] args) {     
    AlatMusikPetik gitar, bass;
     
    gitar = new Gitar("Gitar");
    bass = new Bass("Bass");

    gitar.mainkan();
    gitar.setelNada();
     
    System.out.println();
     
    bass.mainkan();
    bass.setelNada();     
  }   
}

Demo Kelas Abstrak


// Mendefinisikan kelas abstract
abstract class Bentuk {
  // method abstrak, tidak memiliki kode implementasi
  abstract public double luas();   
}

class PersegiPanjang extends Bentuk {
  private double panjang;
  private double lebar;
   
  PersegiPanjang(int p, int l) {
    panjang = p;
    lebar = l;
  }
   
  public double luas() {
    System.out.println("Dalam objek persegi panjang:");
    return (panjang * lebar);
  }   
}

class BujurSangkar extends Bentuk {
  private double sisi;
   
  BujurSangkar(int s) {
    sisi = s;
  }
   
  public double luas() {
    System.out.println("Dalam objek bujursangkar:");
    return (sisi * sisi);
  }   
}

class Segitiga extends Bentuk {
  private double alas;
  private double tinggi;
   
  Segitiga(int a, int t) {
    alas = a;
    tinggi = t;
  }
   
  public double luas() {
    System.out.println("Dalam objek segitiga:");
    return ((alas * tinggi)/2);
  }   
}

class Lingkaran extends Bentuk {
  private double jarijari;
   
  private final double PI = 3.1416;
   
  Lingkaran(int r) {
    jarijari = r;
  }
   
  public double luas() {
    System.out.println("Dalam objek lingkaran:");
    return (PI * jarijari * jarijari);
  }   
}

class DemoKelasAbstrak2 {
  public static void main(String[] args) {   
   
    Bentuk obj;
   
    // Baris kode di bawah ini SALAH,
    // karena kelas abstrak tidak dapat diinstansiasi
   
    //obj = new Bentuk();  // SALAH
   
    PersegiPanjang pp = new PersegiPanjang(5, 3);
    BujurSangkar bs = new BujurSangkar(4);
    Segitiga st = new Segitiga(4, 3);
    Lingkaran lk = new Lingkaran(2);
   
    // obj mengacu pada objek PersegiPanjang
    obj = pp;
    // akan memanggil method yang terdapat pada PersegiPanjang
    System.out.println("Luas : " + obj.luas());
    System.out.println();
   
    // obj mengacu pada objek BujurSangkar
    obj = bs;
    // akan memanggil method yang terdapat pada BujurSangkar
    System.out.println("Luas : " + obj.luas());
    System.out.println();
   
    // obj mengacu pada objek Segitiga
    obj = st;
    // akan memanggil method yang terdapat pada Segitiga
    System.out.println("Luas : " + obj.luas());
    System.out.println();
   
    // obj mengacu pada objek Lingkaran
    obj = lk;
    // akan memanggil method yang terdapat pada Lingkaran
    System.out.println("Luas : " + obj.luas());
    System.out.println();
   
   
  }       
}

Program Turunan Bertingkat


class A {
  private int a;
   
  public void setA(int nilai) {
    a = nilai;
  }
   
  public int getA() {
    return a;
  }
}

class B extends A {
  private int b;
   
  public void setB(int nilai) {
    b = nilai;
  }
   
  public int getB() {
    return b;
  }
}

class C extends B {
  private int c;
   
  public void setC(int nilai) {
    c = nilai;
  }
   
  public int getC() {
    return c;
  }
}

class D extends C {
  private int d;
   
  public void setD(int nilai) {
    d = nilai;
  }
   
  public int getD() {
    return d;
  }
}

class DemoTurunanBertingkat {   
  public static void main(String[] args) {           
   
    // membentuk objek dari kelas D
    D obj = new D();
   
    // mengisi nilai
    obj.setA(10);
    obj.setB(20);
    obj.setC(30);
    obj.setD(40);
   
    // menampilkan nilai
    System.out.println("Nilai a : " + obj.getA());
    System.out.println("Nilai b : " + obj.getB());
    System.out.println("Nilai c : " + obj.getC());
    System.out.println("Nilai d : " + obj.getD());   
  }       
}

Program Public Dan Private (Tingkat Akses)


class TingkatAkses {   
  int a;
  public int b;
  private int c;
 
  public void setC(int nilai) {
    c = nilai;
  }
 
  public int getC() {
    return c;
  }   
}

class DemoPublicDanPrivate {   
  public static void main(String[] args) {       
      
    TingkatAkses obj = new TingkatAkses();
   
    obj.a = 10; // BENAR, karena a secara default bersifat public
    obj.b = 20; // BENAR, karena b bersifat public
   
    //obj.c = 30; // SALAH, karena c bersifat private
   
    obj.setC(30); // BENAR, karena method setC() bersifat public
   
    System.out.println("Nilai obj.a : " + obj.a);
    System.out.println("Nilai obj.b : " + obj.b);
    System.out.println("Nilai obj.c : " + obj.getC());  
  }       
}

Program Overload Constructor


class Kotak {   
  double panjang;
  double lebar;
  double tinggi;
   
  // Mendefinisikan constructor tanpa parameter
  Kotak() {
    panjang = 0;
    lebar = 0;
    tinggi = 0;
  }
   
  // Mendefinisikan constructor dengan satu parameter
  Kotak(double sisi) {
    panjang = lebar = tinggi = sisi;
  }
   
  // Mendefinisikan constructor dengan tiga parameter
  Kotak(double p, double l, double t) {
    panjang = p;
    lebar = l;
    tinggi = t;       
  }
       
  double hitungVolume() {
    return (panjang * lebar * tinggi);
  }   
}

class DemoOverloadConstructor {   
  public static void main(String[] args) {       
   
    Kotak k1, k2, k3;
   
    k1 = new Kotak();
    k2 = new Kotak(10);
    k3 = new Kotak(4, 3, 2);
   
    //Menampilkan volume dari masing-masing objek Kotak
    System.out.println("Volume k1 = " + k1.hitungVolume());
    System.out.println("Volume k2 = " + k2.hitungVolume());
    System.out.println("Volume k3 = " + k3.hitungVolume());   
  }       
}

Program Overload


class Pembagian {
  // Mendefinisikan method dengan dua parameter bertipe int
  int bagi(int a, int b) {
    return a/b;
  }
   
  // Mendefinisikan method dengan dua parameter
  // bertipe double
  double bagi(double a, double b) {
    return a/b;
  }
}

class DemoOverload {   
  public static void main(String[] args) {
   
    Pembagian b = new Pembagian();
   
    int x = b.bagi(10, 4);
    double y = b.bagi(10.0, 4.0);
   
    System.out.println("Hasil bagi tipe int    = " + x);
    System.out.println("Hasil bagi tipe double = " + y);
  }       
}

Program Inner Class


class Luar {  
  private int a;
  
  public void setA(int nilai) {
    a = nilai;
  }
  
  public int getA() {
    return a;
  }
  
  // Mendefinisikan inner class
  class Dalam {
    private int x = 10;  // hanya dikenali oleh kelas Dalam
      
    public void showData() {
      System.out.println("Nilai a dari kelas Luar  : " + a);
      System.out.println("Nilai x dari kelas Dalam : " + x);
    }
  }
  
  public void showData() {
  // Baris di bawah ini SALAH, karena x tidak dikenal di sini
  //System.out.println("Nilai x dari kelas Dalam : " + x);
           
    Dalam obj = new Dalam();
    obj.showData();
  }   
}

class DemoInnerClass {       
  public static void main(String[] args) {
   
    Luar obj1  = new Luar();
    //Dalam obj2 = new Dalam();  // SALAH
   
    obj1.setA(5);
    obj1.showData();   
  }       
}

Program For


class DemoFor {   
  public static void main(String[] args) {           
    for (int i=0; i<10; i++) {
      System.out.println("Java");
    }       
  }
}

Program While


class DemoWhile {   
  public static void main(String[] args) {
       
    int i=6;
    while (i < 5) {
      System.out.println("Saya menyukai bahasa java");
      i++;
    }       
  }
}

Program Matriks

import javax.swing.*;
public class matriks3
{
    public static void main (String [] args)
    {
        int ordo = 3;
        int A[][] = new int [ordo][ordo];
        int B[][] = new int [ordo][ordo];
        int C[][] = new int [ordo][ordo];
        for (int baris=0; baris<ordo; baris++)
        {
            for (int kolom=0; kolom<ordo; kolom++ )
            {
                A[baris][kolom] = Integer.parseInt(JOptionPane.showInputDialog("Masukkan Matriks A ["+(baris)+"]["+(kolom)+"]"));
                B[baris][kolom] = Integer.parseInt(JOptionPane.showInputDialog("Masukkan Matriks B ["+(baris)+"]["+(kolom)+"]"));
                C[baris][kolom] = Integer.parseInt(JOptionPane.showInputDialog("Masukkan Matriks C ["+(baris)+"]["+(kolom)+"]"));
            }
        }
        System.out.println("\n"+"Matriks A");
        for (int baris=0; baris<ordo ;baris++ )
        {
            for (int kolom=0;kolom<ordo ;kolom++ )
            {
                System.out.print ("| "+A[baris][kolom]+" ");
            }
            System.out.println ("| ");
        }
        System.out.println("\n"+"Matriks B");
        for (int baris=0 ;baris<ordo ;baris++ )
       
       
        {
            for (int kolom=0; kolom<ordo; kolom++ )
            {
                System.out.print ("| "+B[baris][kolom]+" ");
            }
            System.out.println ("| ");
        }
        System.out.println("\n"+"Matriks C");
        for (int baris=0 ;baris<ordo ;baris++ )
       
       
        {
            for (int kolom=0; kolom<ordo; kolom++ )
            {
                System.out.print ("| "+C[baris][kolom]+" ");
            }
            System.out.println ("| ");
        }
}}



Program sederhana perhitungan

import java.io.*;
class EkoShift25
{
public static void main(String[] args) throws Exception
{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));


String firstnumber="";
String secondnumber="";
String type= "";
System.out.println("please input first number :");
firstnumber = br.readLine();
System.out.println("please input second number :");
secondnumber = br.readLine();
System.out.println("please select type of operation :");
System.out.println("1 untuk penjumlahan ");
System.out.println("2 untuk pengurangan ");
System.out.println("3 untuk perkalian ");
System.out.println("4 untuk pembagian ");
System.out.println("please input options :");
type = br.readLine();

int k,l,m,o,p,q;
double r;

k = Integer.parseInt(firstnumber);
l = Integer.parseInt(secondnumber);
m = Integer.parseInt(type);
o = k+l;
p = k-l;
q = k*l;
r = k/l;


switch (m)
{
case 1: System.out.println("Hasilnya pertambahannya adalah "+o);
break;
case 2: System.out.println("Hasilnya pengurangannya adalah "+p);
break;
case 3: System.out.println("Hasilnya perkaliannya adalah "+q);
break;
case 4: System.out.println("Hasilnya pembagiannya adalah "+r);
break;
}}}
     

Program Tree


import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.tree.*;
import javax.swing.event.*;

class DemoTree implements TreeSelectionListener {   
  public JTree tree;
  public JScrollPane scroller;
  public JTextField tfInfo;
           
  public DemoTree() {   
    DefaultMutableTreeNode root = null;
    DefaultMutableTreeNode nodeLevel1 = null;
    DefaultMutableTreeNode nodeLevel2 = null;
       
    root = new DefaultMutableTreeNode("SDDN");
               
    nodeLevel1 = new DefaultMutableTreeNode("Betha Sidik");
    root.add(nodeLevel1);       
    nodeLevel2 = new DefaultMutableTreeNode("Pemrograman HTML");
    nodeLevel1.add(nodeLevel2);
    nodeLevel2 = new DefaultMutableTreeNode("Pemrograman PHP");
    nodeLevel1.add(nodeLevel2);
    nodeLevel2 = new DefaultMutableTreeNode("Linux/Unix");
    nodeLevel1.add(nodeLevel2);
       
    nodeLevel1 = new DefaultMutableTreeNode("KS Bahri");
    root.add(nodeLevel1);       
    nodeLevel2 = new
      DefaultMutableTreeNode("Pemrograman Delphi");
    nodeLevel1.add(nodeLevel2);

    nodeLevel1 = new DefaultMutableTreeNode("Ruslan Nuryadin");
    root.add(nodeLevel1);       
    nodeLevel2 = new DefaultMutableTreeNode("Co-Linux");
    nodeLevel1.add(nodeLevel2);
    nodeLevel2 = new DefaultMutableTreeNode("MapServer");
    nodeLevel1.add(nodeLevel2);

    nodeLevel1 = new DefaultMutableTreeNode("Budi Raharjo");
    root.add(nodeLevel1);       
    nodeLevel2 = new DefaultMutableTreeNode("Oracle");
    nodeLevel1.add(nodeLevel2);
    nodeLevel2 = new DefaultMutableTreeNode("C++");
    nodeLevel1.add(nodeLevel2);
    nodeLevel2 = new DefaultMutableTreeNode("Pascal");
    nodeLevel1.add(nodeLevel2);       
    nodeLevel2 = new DefaultMutableTreeNode("Java");
    nodeLevel1.add(nodeLevel2);       
       
    tree = new JTree(root);
    tree.getSelectionModel().setSelectionMode
        (TreeSelectionModel.SINGLE_TREE_SELECTION);
    tree.addTreeSelectionListener(this);
       
    scroller = new JScrollPane(tree,
      ScrollPaneConstants.VERTICAL_SCROLLBAR_AS_NEEDED,
      ScrollPaneConstants.HORIZONTAL_SCROLLBAR_AS_NEEDED);
    scroller.setLocation(0,0);
    scroller.setSize(new Dimension(440, 300));
       
    tfInfo = new JTextField(100);
    tfInfo.setLocation(0, 300);
    tfInfo.setSize(tfInfo.getPreferredSize());       
  }
       
  public void createAndShowGUI() {
    JFrame.setDefaultLookAndFeelDecorated(true);
    JFrame frame = new JFrame("Demo JTree");
    frame.setLayout(null);
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
       
    frame.getContentPane().add(scroller);
    frame.getContentPane().add(tfInfo);
               
    frame.setBounds(0, 0, 450, 350);
    frame.setLocationRelativeTo(null);

    frame.setVisible(true);
  }
   
  public void valueChanged(TreeSelectionEvent event) {
    DefaultMutableTreeNode node = (DefaultMutableTreeNode)
      tree.getLastSelectedPathComponent();
    if (node == null) {
      return;
    }
       
    //if (node.isLeaf()) { // memeriksa node level akhir
    tfInfo.setText(node.toString());
    //}
  }
           
  public static void main(String[] args) {       
    javax.swing.SwingUtilities.invokeLater(new Runnable() {
      public void run() {
        DemoTree app = new DemoTree();
        app.createAndShowGUI();
      }
    });       
  }   
}

Program Table


import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

class DemoTable {   
  public JTable table;
  public JScrollPane scroller;
           
  public DemoTable() {       
       
    final String[] judulKolom =
       {"No.", "Nama", "Alamat", "Kota"};
   
    final Object[][] data = {
        {"1", "Totok Triwibowo", "Jl. Melati 12", "Cimahi"},
        {"2", "Desi Mekarsari", "Jl. Bunga 333", "Bandung"},
        {"3", "Malik Hendrawan","Jl. Sukamiskin 444", "Bandung"},
        {"4", "Wahyu Suhendi", "Jl. Badak 1", "Sumedang"},
        {"5", "Darmanto", "Jl. Bawang 23", "Brebes"},
        {"6", "Hendarto", "Jl. Pemali 32", "Brebes"},
        {"7", "Kiki Sumantro", "Jl. Cipakoma 1", "Tegal"},
        {"8", "Herman Wijanarko", "Jl. Macanucul 34", "Tegal"},
        {"9", "Slamet", "Jl. Pakulaut 99", "Tegal"},
        {"10", "Dewi Susanti", "Jl. Tukul 88", "Semarang"},
        {"11", "Noni Sumantri", "Jl. A Yani 222", "Solo"},
        {"12", "Tedjo Hermanto", "Jl. Duren 6", "Yogyakarta"},
        {"13", "Sri Sumarsih","Jl. Melati 5", "Surabaya"},
        {"14", "Eko Waluyo", "Jl. Batu 4", "Malang"},
        {"15", "Doni Sandi", "Jl. Jeruk 56", "Malang"}
    };
       
    table = new JTable(data, judulKolom);
               
    scroller = new JScrollPane(table,
       ScrollPaneConstants.VERTICAL_SCROLLBAR_AS_NEEDED,
       ScrollPaneConstants.HORIZONTAL_SCROLLBAR_AS_NEEDED);
    scroller.setLocation(0,0);
    scroller.setSize(new Dimension(440, 300));       
  }
       
  public void createAndShowGUI() {
    JFrame.setDefaultLookAndFeelDecorated(true);
    JFrame frame = new JFrame("Demo JTable");
    frame.setLayout(null);
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
       
    frame.getContentPane().add(scroller);
               
    frame.setBounds(0, 0, 450, 350);
    frame.setLocationRelativeTo(null);

    frame.setVisible(true);
  }
   
  public static void main(String[] args) {       
    javax.swing.SwingUtilities.invokeLater(new Runnable() {
      public void run() {
        DemoTable app = new DemoTable();
        app.createAndShowGUI();
      }
    });       
  }   
}

Demo Radio Button


import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

class DemoRadioButton implements ItemListener {
  public JLabel label1, label2;
  public JRadioButton radioButton1, radioButton2, radioButton3;
  public ButtonGroup bg;
   
  public DemoRadioButton() {           
    label1 = new JLabel("IDE Java yang Anda sukai:");
    label1.setLocation(10, 10);
    label1.setSize(label1.getPreferredSize());   
       
    label2 = new JLabel("Pilihan Anda: (belum ada pilihan)");
    label2.setLocation(10, 115);
    label2.setSize(label2.getPreferredSize());   
           
    radioButton1 = new JRadioButton("Eclipse");
    radioButton1.setLocation(10, 25);
    radioButton1.addItemListener(this);
    radioButton1.setSize(radioButton1.getPreferredSize());
   
    radioButton2 = new JRadioButton("Netbeans");
    radioButton2.setLocation(10, 50);
    radioButton2.addItemListener(this);
    radioButton2.setSize(radioButton2.getPreferredSize());
   
    radioButton3 = new JRadioButton("JBuilder");
    radioButton3.setLocation(10, 75);
    radioButton3.addItemListener(this);       
    radioButton3.setSize(radioButton3.getPreferredSize());   
   
    // menentukan group dari semua item
    bg = new ButtonGroup();
    bg.add(radioButton1);
    bg.add(radioButton2);
    bg.add(radioButton3); 
  }   
   
  public void createAndShowGUI() {
    JFrame.setDefaultLookAndFeelDecorated(true);
    JFrame frame = new JFrame("Demo JRadioButton");
    frame.setLayout(null);
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    frame.getContentPane().add(label1);
    frame.getContentPane().add(radioButton1);
    frame.getContentPane().add(radioButton2);
    frame.getContentPane().add(radioButton3);
    frame.getContentPane().add(label2);
       
    frame.setBounds(0, 0, 300, 200);
    frame.setLocationRelativeTo(null);

    frame.setVisible(true);
  }
   
  public void itemStateChanged(ItemEvent event) {
    JRadioButton rb = (JRadioButton) event.getSource();
    label2.setText("Pilihan Anda: " + rb.getText());     
  }
   
  public static void main(String[] args) {       
    javax.swing.SwingUtilities.invokeLater(new Runnable() {
      public void run() {
        DemoRadioButton app = new DemoRadioButton();
        app.createAndShowGUI();
      }
    });       
  }   
}

Demo Menu


import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

class DemoMenu implements ActionListener {   
  public JMenuBar menuBar;
  public JMenu menu;
  public JMenuItem menuItem;
  public JCheckBoxMenuItem cbMenuItem;
  public JRadioButtonMenuItem rbMenuItem;
           
  public DemoMenu() {       
    menuBar = new JMenuBar();   
    menuBar.setLocation(0,0);
    menuBar.setSize(new Dimension(440, 20));
          
    menu = new JMenu("Menu Ke-1");
    menu.setMnemonic('1');
    menuBar.add(menu);
   
    menuItem = new JMenuItem("Item menu berupa teks");
    menu.add(menuItem);
   
    menuItem = new JMenuItem(
      "Item menu berupa gambar dan teks",
      new ImageIcon("gambar.jpg"));
    menu.add(menuItem);
   
    menuItem = new JMenuItem(new ImageIcon("gambar.jpg"));
    menu.add(menuItem);
   
    menu.addSeparator();
   
    cbMenuItem = new JCheckBoxMenuItem(
      "Item menu berupa checkbox");
    menu.add(cbMenuItem);
   
    cbMenuItem = new JCheckBoxMenuItem(
      "Item menu berupa checkbox dan gambar",
      new ImageIcon("gambar.jpg"));
    menu.add(cbMenuItem);
   
    menu.addSeparator();
   
    rbMenuItem = new JRadioButtonMenuItem(
      "Item menu berupa radiobutton");
    menu.add(rbMenuItem);
   
    rbMenuItem = new JRadioButtonMenuItem(
      "Item menu berupa radiobutton dan gambar",
      new ImageIcon("gambar.jpg"));
    menu.add(rbMenuItem);
   
    menu.addSeparator();
   
    menuItem = new JMenuItem("Keluar");
    // membuat shortcut dengan ALT-K
    menuItem.setAccelerator(KeyStroke.getKeyStroke(
        KeyEvent.VK_K, ActionEvent.ALT_MASK));
    menuItem.addActionListener(this);
    menu.add(menuItem);
   
    menu = new JMenu("Menu Ke-2");
    menu.setMnemonic('2');
    menuBar.add(menu);
    // tambahkan item menu untuk Menu ke-2 pada bagian ini   
   
  }
   
  public void actionPerformed(ActionEvent event) {
    JMenuItem item = (JMenuItem) event.getSource();
    if (item.getText().equals("Keluar")) {
      System.exit(0);  // keluar program
    }
  }   
       
  public void createAndShowGUI() {
    JFrame.setDefaultLookAndFeelDecorated(true);
    JFrame frame = new JFrame("Demo Menu");
    frame.setLayout(null);
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
       
    frame.getContentPane().add(menuBar);
               
    frame.setBounds(0, 0, 450, 350);
    frame.setLocationRelativeTo(null);

    frame.setVisible(true);
  }
   
  public static void main(String[] args) {       
    javax.swing.SwingUtilities.invokeLater(new Runnable() {
      public void run() {
        DemoMenu app = new DemoMenu();
        app.createAndShowGUI();
      }
    });       
  }   
}

Demo List


import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

class DemoList implements ActionListener {       
  public JFrame frame;
   
  public JList list;   
  public JButton btnTambah, btnHapus;
  public JTextField tfItem;
  public JScrollPane scroller;
       
  public DemoList() {           
    tfItem = new JTextField(12);
    tfItem.setLocation(10,20);
    tfItem.setSize(tfItem.getPreferredSize());       
       
    DefaultListModel lm;       
    lm = new DefaultListModel();
    lm.addElement("Java");
    lm.addElement("C");
    lm.addElement("C++");
       
    list = new JList(lm);       
    list.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
       
    scroller = new JScrollPane(list);
    scroller.setLocation(10, 43);
    scroller.setSize(new Dimension(135, 170));
               
    btnTambah = new JButton("Tambah");
    btnTambah.setLocation(150, 20);
    btnTambah.setSize(btnTambah.getPreferredSize()); 
    btnTambah.addActionListener(this);
    btnTambah.setMnemonic('T');
       
    btnHapus = new JButton("Hapus");
    btnHapus.setLocation(150, 50);
    btnHapus.setSize(btnTambah.getPreferredSize()); 
    btnHapus.addActionListener(this);
    btnHapus.setMnemonic('H');                       
  }
       
  public void createAndShowGUI() {
    JFrame.setDefaultLookAndFeelDecorated(true);
    frame = new JFrame("Demo JList");
    frame.setLayout(null);
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
       
    frame.getContentPane().add(tfItem);
    frame.getContentPane().add(scroller);
    frame.getContentPane().add(btnTambah);
    frame.getContentPane().add(btnHapus);
       
    frame.setBounds(0, 0, 430, 350);
    frame.setLocationRelativeTo(null);

    frame.setVisible(true);
  }
   
  public void actionPerformed(ActionEvent event) {
    if (event.getSource() == btnTambah) {
      String s = tfItem.getText().trim();
      if (!s.equals("")) {
        ((DefaultListModel) list.getModel()).addElement(s);
      }
      if (list.getModel().getSize() == 1) {
        btnHapus.setEnabled(true);
      }
    }    else {
      int index = list.getSelectedIndex();
      if (index == -1) {
        JOptionPane.showMessageDialog(frame,
        "Anda harus memilih salah satu item " +
          "terlebih dahulu");
        return;
      }
           
      ((DefaultListModel)list.getModel()).remove(index);
   
      int size = list.getModel().getSize();
   
      if (size == 0) {
        btnHapus.setEnabled(false);   
      } else {
        if (index == list.getModel().getSize()) {
          index--;
        }   
        list.setSelectedIndex(index);
        list.ensureIndexIsVisible(index);
      }           
    }
  }
   
  public static void main(String[] args) {       
    javax.swing.SwingUtilities.invokeLater(new Runnable() {
      public void run() {
        DemoList app = new DemoList();
        app.createAndShowGUI();
      }
    });       
  }   
}

Demo Frame


import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

class DemoFrame {
  private JLabel label;
   
  public DemoFrame() {   
    label = new JLabel("Hallo Dunia...");
  }   
   
  public void createAndShowGUI() {
    JFrame.setDefaultLookAndFeelDecorated(true);
    JFrame frame = new JFrame("Demo Frame");
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    frame.getContentPane().add(label, BorderLayout.CENTER);
    //frame.pack();
    frame.setBounds(0, 0, 300, 200); //ukuran frame
    frame.setLocationRelativeTo(null); //frame di tengah layar
    frame.setVisible(true);
  }
   
  public static void main(String[] args) {       
    javax.swing.SwingUtilities.invokeLater(new Runnable() {
      public void run() {
        DemoFrame app = new DemoFrame();
        app.createAndShowGUI();
      }
    });       
  }   
}

Demo Combo Box


import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

class DemoComboBox implements ActionListener {   
  public JLabel labelNama, labelLahir,
                labelTanggal, labelBulan, labelTahun;
  public JTextField tfNama, tfInfo;
  public JComboBox comboTanggal, comboBulan, comboTahun;
  public JButton btnProses;
       
  public DemoComboBox() {           
    String s1 = "<html><font color=red>Nama:</font></html>";
    labelNama = new JLabel(s1);
    labelNama.setLocation(10, 10);
    labelNama.setSize(labelNama.getPreferredSize());   
       
    tfNama = new JTextField(25);
    tfNama.setLocation(10, 30);
    tfNama.setSize(tfNama.getPreferredSize());   
       
    String s2 =
      "<html><font color=red>Tanggal Lahir:</font></html>";
    labelLahir = new JLabel(s2);
    labelLahir.setLocation(10, 55);
    labelLahir.setSize(labelLahir.getPreferredSize());   
       
    labelTanggal = new JLabel("Hari ke-");
    labelTanggal.setLocation(35, 75);
    labelTanggal.setSize(labelTanggal.getPreferredSize());
       
    comboTanggal = new JComboBox();
    comboTanggal.setLocation(35, 93);
    comboTanggal.setSize(labelTanggal.getPreferredSize());
    for (int i=0; i<31; i++) {
      comboTanggal.addItem(new String().valueOf(i+1));
    }
       
    labelBulan = new JLabel("Bulan");
    labelBulan.setLocation(95, 75);
    labelBulan.setSize(labelBulan.getPreferredSize());
       
    comboBulan = new JComboBox();
    comboBulan.setLocation(95, 93);
    comboBulan.setSize(labelLahir.getPreferredSize());
    String[] bulan = {"Januari","Februari","Maret","April",
               "Mei","Juni","Juli","Agustus",
               "September","Oktober","November","Desember"};
    for (int i=0; i<bulan.length; i++) {
      comboBulan.addItem(bulan[i]);
    }
       
    labelTahun = new JLabel("Tahun");
    labelTahun.setLocation(190, 75);
    labelTahun.setSize(labelTahun.getPreferredSize());
       
    comboTahun = new JComboBox();
    comboTahun.setLocation(190, 93);
    comboTahun.setSize(labelLahir.getPreferredSize());
    for (int i=1960; i<=2007; i++) {
      comboTahun.addItem(new String().valueOf(i));
    }   
                   
    btnProses = new JButton("Proses Data");
    btnProses.setLocation(305, 25);
    btnProses.setSize(btnProses.getPreferredSize()); 
    btnProses.addActionListener(this);
    btnProses.setMnemonic('P');   
       
    tfInfo = new JTextField(50);
    tfInfo.setLocation(10, 290);
    tfInfo.setSize(400, 20);
    tfInfo.setEditable(false);
  }   
   
  public void createAndShowGUI() {
    JFrame.setDefaultLookAndFeelDecorated(true);
    JFrame frame = new JFrame("Demo JComboBox");
    frame.setLayout(null);
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    frame.getContentPane().add(labelNama);
    frame.getContentPane().add(tfNama);
    frame.getContentPane().add(labelLahir);
    frame.getContentPane().add(labelTanggal);
    frame.getContentPane().add(comboTanggal);
    frame.getContentPane().add(labelBulan);
    frame.getContentPane().add(comboBulan);
    frame.getContentPane().add(labelTahun);
    frame.getContentPane().add(comboTahun);
    frame.getContentPane().add(btnProses);
    frame.getContentPane().add(tfInfo);
       
    frame.setBounds(0, 0, 430, 350);
    frame.setLocationRelativeTo(null);

    frame.setVisible(true);
  }
   
  public void actionPerformed(ActionEvent event) {
    if (event.getSource() == btnProses) {
      String s = tfNama.getText() + ", lahir pada " +
                 comboTanggal.getSelectedItem() + " " +
              comboBulan.getSelectedItem() + " " +
              comboTahun.getSelectedItem();           
     tfInfo.setText(s);           
    }   
  }
   
  public static void main(String[] args) {       
    javax.swing.SwingUtilities.invokeLater(new Runnable() {
      public void run() {
        DemoComboBox app = new DemoComboBox();
        app.createAndShowGUI();
      }
    });       
  }   
}

Demo Check Box


import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

class DemoCheckBox implements ItemListener {
  public JLabel label1;
  public JCheckBox checkBox1, checkBox2, checkBox3;
  private JFrame frame;
   
  public DemoCheckBox() {           
    label1 = new JLabel("Pilihan:");
    label1.setLocation(10, 10);
    label1.setSize(label1.getPreferredSize());   
       
    checkBox1 = new JCheckBox("C", true);
    checkBox1.setLocation(10, 25);
    checkBox1.addItemListener(this);
    checkBox1.setSize(checkBox1.getPreferredSize());
   
    checkBox2 = new JCheckBox("C++", true);
    checkBox2.setLocation(10, 50);
    checkBox2.addItemListener(this);
    checkBox2.setSize(checkBox2.getPreferredSize());
   
    checkBox3 = new JCheckBox("Java", true);
    checkBox3.setLocation(10, 75);
    checkBox3.addItemListener(this);       
    checkBox3.setSize(checkBox3.getPreferredSize());   
  }

  public void createAndShowGUI() {
    JFrame.setDefaultLookAndFeelDecorated(true);
    frame = new JFrame("Demo JCheckBox");
    frame.setLayout(null);
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    frame.getContentPane().add(label1);
    frame.getContentPane().add(checkBox1);
    frame.getContentPane().add(checkBox2);
    frame.getContentPane().add(checkBox3);

    frame.setBounds(0, 0, 300, 200);
    frame.setLocationRelativeTo(null);

    frame.setVisible(true);
  }
   
  public void itemStateChanged(ItemEvent event) {
    JCheckBox cb = (JCheckBox) event.getSource();
     
    if (event.getStateChange() == ItemEvent.SELECTED) {
      JOptionPane.showMessageDialog(frame,
        "Anda telah memilih: " + cb.getText());
    } else {
      JOptionPane.showMessageDialog(frame,
      "Anda telah telah melepas pilihan: " + cb.getText());
    }     
  }
   
  public static void main(String[] args) {       
    javax.swing.SwingUtilities.invokeLater(new Runnable() {
      public void run() {
        DemoCheckBox app = new DemoCheckBox();
        app.createAndShowGUI();
      }
    });       
  }   
}

Program Button


import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

class DemoButton implements ActionListener {   
  public JLabel label;
  public JButton btn1, btn2;
   
  public DemoButton() {   
    ImageIcon icon = new ImageIcon("images/tunjuk.jpg");
       
    label = new JLabel("Belum ada button yang diklik");
    label.setLocation(60, 40);
    label.setSize(label.getPreferredSize());
       
    btn1 = new JButton("Button #1");       
    btn1.setLocation(40, 70);
    btn1.setSize(btn1.getPreferredSize());
    btn1.addActionListener(this);
       
    btn2 = new JButton("Button #2", icon);
    btn2.setLocation(135, 70);
    btn2.setSize(btn2.getPreferredSize());
    btn2.addActionListener(this);
  }   
   
  public void createAndShowGUI() {
    JFrame.setDefaultLookAndFeelDecorated(true);
    JFrame frame = new JFrame("Demo JButton");
    frame.setLayout(null);
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    frame.getContentPane().add(label, BorderLayout.CENTER);
    frame.getContentPane().add(btn1);
    frame.getContentPane().add(btn2);
    frame.setBounds(0, 0, 300, 200);
    frame.setLocationRelativeTo(null);
    frame.setVisible(true);
  }
   
  public void actionPerformed(ActionEvent event) {
    if (event.getSource() == btn1) {
      label.setText("Button #1 telah diklik");
    }    else if (event.getSource() == btn2) {
      label.setText("Button #2 telah diklik");
    }
  }
   
  public static void main(String[] args) {       
    javax.swing.SwingUtilities.invokeLater(new Runnable() {
      public void run() {
        DemoFrame app = new DemoFrame();
        app.createAndShowGUI();
      }
    });       
  }   
}

Program Applet Swing


import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

public class DemoAppletSwing extends JApplet
  implements ActionListener {   
   
  public JTextField textField;
  public JButton button;
               
  public void init() {          
   
    // mendapatkan container
    Container cont = getContentPane();
    cont.setLayout(new FlowLayout());

    // menambahkan komponen JTextField   
    textField = new JTextField(25);
    cont.add(textField, BorderLayout.CENTER);

    // menambahkan komponen JButton  
    button = new JButton("Tombol Applet");
    button.addActionListener(this);
    cont.add(button, BorderLayout.CENTER);   
  } 

  // menangani event klik pada komponen JButton   
  public void actionPerformed(ActionEvent event) {
    if (event.getSource() == button) {
      textField.setText("Anda telah melakukan klik " +
        "pada tombol Applet");
    }
  }
}

Demo Super

//PROGRAM 7-6
class Kotak {
  protected double panjang;
  protected double lebar;
  protected double tinggi;
 
  Kotak() {
    panjang = lebar = tinggi = 0;
  }
   
  Kotak(Kotak k) {
    this.panjang = k.panjang;
    this.lebar = k.lebar;
    this.tinggi = k.tinggi;
  }
   
  Kotak(int p, int l, int t) {
    panjang = p;
    lebar = l;
    tinggi = t;
  }
   
  public double hitungVolume() {
    return (panjang * lebar * tinggi);
  }   
}

class KotakPejal extends Kotak {   
  private double berat;
   
  KotakPejal(KotakPejal kp) {
       
    super(kp);  // melewatkan objek ke dalam super()
       
    this.berat = kp.berat;
  }
   
  KotakPejal(int p, int l, int t, int b) {       
    super(p, l, t);       
    berat = b;
  }   
   
  public double getBerat() {
    return berat;
  }
}

class DemoSuper2 {
  public static void main(String[] args) {           
   
    KotakPejal k1, k2, k3;
   
    k1 = new KotakPejal(4, 3, 2, 1);
    k2 = new KotakPejal(6, 5, 4, 2);
    k3 = new KotakPejal(k1);    // melewatkan objek k1
   
    System.out.println("Volume k1\t : " + k1.hitungVolume());
    System.out.println("Berat k1\t  : " + k1.getBerat());
   
    System.out.println("\nVolume k2\t : " + k2.hitungVolume());
    System.out.println("Berat k2\t    : " + k2.getBerat());
   
    System.out.println("\nVolume k3\t : " + k3.hitungVolume());
    System.out.println("Berat k3\t    : " + k3.getBerat());
  }       
}

Demo Protected


class A {
  private int a;        // hanya dikenali oleh kelas A
   
  // hanya dapat dikenali oleh kelas A dan turunan-turunannya
  protected void setA(int nilai) {
    a = nilai;
  }
   
  // hanya dapat dikenali oleh kelas A dan turunan-turunannya
  protected int getA() {
    return a;
  }
}

class B extends A {
  private int b;
   
  // constructor kelas B
  B(int nilaiA, int nilaiB) {       
    //a = nilaiA;  // SALAH, karena a tidak dikenali di sini
    setA(nilaiA);  // menggunakan method setA()
    b = nilaiB;
  }
   
  public void showData() {
    // menggunakan method getA()
    System.out.println("Nilai a : " + getA());
    System.out.println("Nilai b : " + b);
  }
}

class C {
  private int c;
   
  public void setC(int nilai) {
    //setA(10);     // SALAH, setA() tidak dikenal di sini
    c = nilai;
  }
   
  public int getC() {
    return c;
  }
   
  public void showC() {
    //System.out.println("Nilai a : " + getA());    // SALAH
    System.out.println("Nilai c : " + c);
  }   
}

class DemoProtected1 {       
  public static void main(String[] args) {       
   
    // melakukan instansiasi terhadap kelas B
    B obj = new B(40, 50);
   
    obj.showData();
   
    obj.setA(100);
    System.out.println("Nilai a : " + obj.getA());
  }       
}

Demo Polimorfisme

// Mendefinisikan kelas induk
class Penyanyi {
  public void bernyanyi() {
    System.out.println("Karakteristik nadanya " +
    "belum didefinisikan");
  }   
}

// Mendefinisikan kelas-kelas turunan dari kelas Penyanyi
class PenyanyiJazz extends Penyanyi {
       
  // melakukan override terhadap method bernyanyi()
  public void bernyanyi() {
    System.out.println("Bernyanyi dengan irama Jazz");
  }   
}

class PenyanyiPop extends Penyanyi {       
  // melakukan override terhadap method bernyanyi()
  public void bernyanyi() {
    System.out.println("Bernyanyi dengan irama Pop");
  }   
}

class PenyanyiDangdut extends Penyanyi {
  // melakukan override terhadap method bernyanyi()
  public void bernyanyi() {
    System.out.println("Bernyanyi dengan irama Dangdut");
  }   
}

class DemoPolimorfisme1 {           
  public static void main(String[] args) {   
   
    Penyanyi p;
   
    PenyanyiJazz musmujiono = new PenyanyiJazz();
    PenyanyiPop audi = new PenyanyiPop();
    PenyanyiDangdut inul = new PenyanyiDangdut();
   
    p = musmujiono;  // p mengacu pada objek PenyanyiJazz
    // akan memanggil method pada kelas PenyanyiJazz
    p.bernyanyi();
   
    p = audi;  // p mengacu pada objek PenyanyiPop
    // akan memanggil method pada kelas PenyanyiPop
    p.bernyanyi();
   
    p = inul;  // p mengacu pada objek PenyanyiDangdut
    // akan memanggil method pada kelas PenyanyiDangdut
    p.bernyanyi();
  }       
}

Demo Constructor Penurunan


class A {
  A() {
    System.out.println("Constructor dari kelas A");
  }
}

class B extends A {
  B() {
    System.out.println("Constructor dari kelas B");
  }
}

class C extends B {
  C() {
    System.out.println("Constructor dari kelas C");
  }
}

class DemoConstructorPenurunan {   
  public static void main(String[] args) {

    System.out.println(
      "Pada saat membentuk objek dari kelas A:");
    A obj1 = new A();
   
    System.out.println(
      "\nPada saat membentuk objek dari kelas B:");
    B obj2 = new B();
       
    System.out.println(
      "\nPada saat membentuk objek dari kelas C:");
    C obj3 = new C();
  }       
}

Program Rekursi


class Rekursi {
  int faktorial(int n) {
    if (n == 0) {
      return 1;
    } else {
      return (n * faktorial(n-1));
    }
  }
   
  void cetakFaktorial(int n) {
    System.out.print(n + "! = ");
    for (int i=n; i>=1; i--) {
        if (i != 1) {
       System.out.print(i + " x ");
        } else {
       System.out.print(i + " = ");
        }
    }
    System.out.println(faktorial(n));
  }   
}

class DemoRekursi1 {   
  public static void main(String[] args) {
 
    Rekursi obj = new Rekursi();
       
    obj.cetakFaktorial(5);
    obj.cetakFaktorial(4);
    obj.cetakFaktorial(3);
  }       
}

Demo Method

//PROGRAM 5-5
class Kotak {
  double panjang;
  double lebar;
  double tinggi;
       
  // Mendefinisikan method void (tidak mengembalikan nilai)
  void cetakVolume() {
    System.out.println("Volume kotak = " +
      (panjang * lebar * tinggi));
  }   
}

class DemoMethod1 {   
  public static void main(String[] args) {
    Kotak k1, k2, k3;
   
    // instansiasi objek
    k1 = new Kotak();
    k2 = new Kotak();
    k3 = new Kotak();
   
    // mengisi data untuk objek k1
    k1.panjang = 4;
    k1.lebar = 3;
    k1.tinggi = 2;
   
    // mengisi data untuk objek k2
    k2.panjang = 6;
    k2.lebar = 5;
    k2.tinggi = 4;
   
    // mengisi data untuk objek k3
    k3.panjang = 8;
    k3.lebar = 7;
    k3.tinggi = 6;

    // memanggil method cetakVolume() untuk masing-masing objek       
    k1.cetakVolume();
    k2.cetakVolume();
    k3.cetakVolume();
  }       
}

Demo Constructor


class Kotak {
  double panjang;
  double lebar;
  double tinggi;
   
  // Mendefinisikan constructor untuk kelas Kotak
  Kotak() {
    panjang = 4;
    lebar = 3;
    tinggi = 2;
  }
       
  double hitungVolume() {
    return (panjang * lebar * tinggi);
  }   
}

class DemoConstructor1 {   
  public static void main(String[] args) {   
   
    Kotak k1, k2;
   
    k1 = new Kotak();
    k2 = new Kotak();
   
    System.out.println("Volume k1 = " + k1.hitungVolume());
    System.out.println("Volume k2 = " + k2.hitungVolume());
  }       
}

Demo Switch


class DemoSwitch2 {   
  public static void main(String[] args) {       
       
    String bulan = null;
    String triwulan = null;
    int noBulan = 3;
       
    switch(noBulan) {
      case 1: bulan = "Januari"; break;
      case 2: bulan = "Februari"; break;
      case 3: bulan = "Maret"; break;
      case 4: bulan = "April"; break;
      case 5: bulan = "Mei"; break;
      case 6: bulan = "Juni"; break;
      case 7: bulan = "Juli"; break;
      case 8: bulan = "Agustus"; break;
      case 9: bulan = "September"; break;
      case 10: bulan = "Oktober"; break;
      case 11: bulan = "November"; break;
      case 12: bulan = "Desember"; break;
      default: {
        System.out.println("Tidak ada bulan ke-" + noBulan);
        System.exit(1);
      }           
    }

    switch (noBulan) {
      case 1:
      case 2:
      case 3:
      case 4: {
        triwulan = "I";
        break;
      }
      case 5:
      case 6:
      case 7:
      case 8: {
        triwulan = "II";
        break;
      }
      case 9:
      case 10:
      case 11:
      case 12: {
        triwulan = "III";
        break;
      }   
      default: {
        System.out.println("Tidak ada bulan ke-" + noBulan);
        System.exit(1);
      }               
    }
       
    System.out.println("Bulan ke-" + noBulan + " (" + bulan +
      ") masuk ke dalam triwulan " + triwulan);       
  }
}

Demo Return


class DemoReturn {   
  public static void main(String[] args) {   

    int banyak = 0;
      
    tulis(banyak);
      
  }
   
  // Mendefinisikan method tulis()
  private static void tulis(int n) {
    if (n < 1) {
      System.out.println("Nilai i tidak boleh lebih kecil " +
        "dari 1");
      return;  // keluar dari method tulis()
    }

    // statemen ini tidak akan dilakukan bila n < 1
    for (int i=0; i<n; i++) {
      System.out.println("Baris ke-" + i);
    }
  }   
}

Program If 3 Kondisi


class DemoIfTigaKondisi1 {   
  public static void main(String[] args) {       
       
    int bilangan = 4;
       
    if (bilangan < 0) {
      System.out.println(bilangan +
        " merupakan bilangan NEGATIF.");
    } else if (bilangan == 0) {       
      System.out.println("Nilai yang dimasukkan adalah NOL");
    } else {    // (bilangan > 0)
      System.out.println(bilangan +
        " merupakan bilangan POSITIF.");   
    }                           
  }
}

Program If 1 Kondisi


class DemoIfSatuKondisi1 {
  public static void main(String[] args) {       
           
    int a=1, b=10;
       
    if (a < 5) {
      System.out.println("Nilai a lebih kecil dari 5");
    }
       
    if (b < 5) {
      System.out.println("Nilai b lebih kecil dari 5");
    }                       
  }
}

Program IF 2 Kondisi


class DemoIfDuaKondisi1 {
  public static void main(String[] args) {       
       
    int a=1, b=10;   
       
    if (a < 5) {
      System.out.println(a + " lebih kecil dari 5");
    } else {  // (a >= 5)
         System.out.println(a + " lebih besar dari 5");
    }
       
    if (b < 5) {
      System.out.println(b + " lebih kecil dari 5");
    } else {  // (b >= 5)
      System.out.println(b + " lebih besar dari 5");
    }                               
  }
}

Program For Bersarang


class DemoForBersarang {   
  public static void main(String[] args) {   
   
    for (int i=1; i<=5; i++) {
      for (int j=1; j<=i; j++) {
        System.out.print(i*j + " ");
      }
      System.out.println();
    }
  }
}

Program Do While Bersarang


class DemoDoWhileBersarang {   
  public static void main(String[] args) {       
   
    int i=1, j;
    do {
        j=1;
        do {
       System.out.print(i*j + " ");
       j++;
        } while (j<=i);      
        System.out.println();
        i++;
    } while (i<=5);
  }
}

Program Break


class DemoBreak {   
  public static void main(String[] args) {
 
    for (int i=0; i<10; i++) {
      System.out.print("Pada saat i=" + i + ": ");
      for (int j=0; j<10; j++) {
        if (j==5) {
          break;      //keluar dari blok pengulangan bagian dalam
        }
        System.out.print(j + " ");
      }
      System.out.println();
    }   
  }
}

Program Do While


class ContohDoWhile {   
  public static void main(String[] args) {                   
       
    int i=6;
    do {
      System.out.println("Saya Mahasiswa Teknik Informatika");
      i++;
    } while (i < 5);
  }
}

Demo Ternary


class DemoTernary {
  public static void main(String[] args) {           
    int hasil, nilai;
       
    // untuk nilai negatif
    nilai = -2;       
    hasil = nilai < 0 ? -nilai : nilai;       
    System.out.println("| " + nilai + " | = " + hasil);
               
    // untuk nilai positif
    nilai = 2;       
    hasil = nilai < 0 ? -nilai : nilai;       
    System.out.println("| " + nilai + " | = " + hasil);   
  }
}

Demo Relasional


class DemoRelasional {
  public static void main(String[] args) {               

    int a=5, b=10;       

    System.out.println("a == b bernilai " + (a == b));
    System.out.println("a != b bernilai " + (a != b));
    System.out.println("a > b bernilai " + (a > b));
    System.out.println("a < b bernilai " + (a < b));
    System.out.println("a >= b bernilai " + (a >= b));
    System.out.println("a <= b bernilai " + (a <= b));       
  }
}

Demo Operator Logika


class DemoOperatorLogika {   
  public static void main(String[] args) {
               
    System.out.println("Operasi AND");
    System.out.println("true && true   = " + (true && true));
    System.out.println("true && false  = " + (true && false));
    System.out.println("false && true  = " + (false && true));
    System.out.println("false && false = " + (false && false));
       
    System.out.println("\nOperasi OR");
    System.out.println("true || true   = " + (true || true));
    System.out.println("true || false  = " + (true || false));
    System.out.println("false || true  = " + (false || true));
    System.out.println("false || false = " + (false || false));
       
    System.out.println("\nOperasi XOR");
    System.out.println("true ^ true    = " + (true ^ true));
    System.out.println("true ^ false   = " + (true ^ false));
    System.out.println("false ^ true   = " + (false ^ true));
    System.out.println("false ^ false  = " + (false ^ false));
       
    System.out.println("\nOperasi NOT");
    System.out.println("!true          = " + (!true));
    System.out.println("!false         = " + (!false));
  }   
}