Buat agan-agan yang lagi praktikum...mudah2an bisa membantu dengan postingan ini:
Di Bawah ini Adalah semua tugas dari praktikum Pemrograman Berbasis Objek dari tugas pendahuluan, laporan modul, laporan dosen, dan Demo Multimedia.
TUGAS PENDAHULUAN
KELAS
Kelas A tidak lain cetak
biru atau template untuk membuat objek yang berbeda yang mendefinisikan sifat
dan perilaku. objek class Java menunjukkan sifat dan perilaku yang
didefinisikan oleh kelas tersebut. kelas A dapat berisi bagian-bagian dan
metode untuk menggambarkan perilaku objek.
Metode tak lain adalah
anggota dari sebuah kelas yang menyediakan layanan untuk objek atau menjalankan
beberapa logika bisnis. Jawa dan anggota bidang fungsi nama adalah case
sensitive. negara kini yang sesuai kelas obyek disimpan dalam Teman-contoh
variabel obyek. Metode menentukan operasi yang dapat dilakukan dalam
pemrograman java.
Kelas A memiliki sintaks
umum berikut:
Di bawah ini adalah contoh
yang menunjukkan Objek dan Kelas kelas Cube yang menetapkan 3 bidang yaitu
panjang, lebar dan tinggi. Juga kelas berisi getVolume fungsi anggota ().
public class Cube {
int panjang;
int luas;
int tinggi;
public int getVolume () {
return (panjang * lebar * tinggi);
}
}
|
Bagaimana Anda referensi anggota data / fungsi?
Ini dilakukan dengan
mencantumkan nama referensi obyek, diikuti oleh suatu periode (dot), diikuti
dengan nama anggota dalam obyek.
(ObjectReference.member). Anda memanggil metode untuk suatu benda dengan menamai objek diikuti oleh suatu periode (dot), diikuti dengan nama metode dan daftar argumen, seperti ini: objectName.methodName (arg1, arg2, arg3).
(ObjectReference.member). Anda memanggil metode untuk suatu benda dengan menamai objek diikuti oleh suatu periode (dot), diikuti dengan nama metode dan daftar argumen, seperti ini: objectName.methodName (arg1, arg2, arg3).
Sebagai contoh:
cubeObject.length = 4;
cubeObject.breadth = 4;
cubeObject.height = 4;
cubeObject.getvolume ()
cubeObject.breadth = 4;
cubeObject.height = 4;
cubeObject.getvolume ()
Variabel Class - Bidang Statis
Kami menggunakan variabel
kelas juga tahu sebagai bidang statis ketika kita ingin berbagi karakteristik
di semua objek dalam kelas. Ketika Anda mendeklarasikan field yang harus
statis, hanya satu contoh dari variabel yang terkait dibuat umum untuk semua
objek dari kelas itu. Oleh karena itu ketika satu objek mengubah nilai dari
variabel kelas, hal itu mempengaruhi semua benda kelas. Kita dapat mengakses
variabel kelas dengan menggunakan nama kelas, dan tidak harus menggunakan
referensi ke obyek individu dalam kelas. Variabel statis dapat diakses walaupun
tidak ada objek dari kelas yang ada. Hal ini dideklarasikan menggunakan kata
kunci statis.
Kelas Metode - Metode Statis
Metode Kelas, mirip dengan
variabel Kelas dapat diakses tanpa memiliki instance dari kelas. Kelas metode
sering digunakan untuk menyediakan fungsi global untuk program Java. Sebagai
contoh, metode dalam paket java.lang.Math adalah metode kelas. Anda tidak dapat
memanggil metode non-statis dari dalam metode statis.
Variabel Instance
Instance variabel
menyimpan status objek. Setiap kelas akan memiliki salinan sendiri dari
variabel. Setiap benda memiliki sebuah negara yang ditentukan oleh nilai-nilai
yang disimpan dalam objek. Sebuah objek dikatakan telah berubah keadaan bila
satu atau lebih data nilai yang disimpan dalam objek telah dimodifikasi. Ketika
objek menanggapi pesan, biasanya akan melakukan suatu tindakan, mengubah dll
negaranya Sebuah objek yang memiliki kemampuan untuk menyimpan nilai-nilai
sering dikatakan memiliki ketekunan.
Pertimbangkan ini program Java sederhana yang menunjukkan penggunaan bidang
statis dan metode statis
/ / Kelas dan Obyek inisialisasi menunjukkan
Berorientasi Objek konsep di Jawa
class Cube {
int panjang = 10;
int lebar = 10;
int tinggi = 10;
public static int numOfCubes = 0; / /
variabel statis
public static int getNoOfCubes () {/ /
metode statis
kembali numOfCubes;
}
publik Cube () {
numOfCubes + +; / /
}
}
public class CubeStaticTest {
public static void main (String args []) {
System.out.println ("Jumlah objek Cube
=" + Cube.numOfCubes);
System.out.println ("Jumlah objek Cube
="
+ Cube.getNoOfCubes ());
}
}
|
Output
Jumlah Cube benda = 0
Jumlah Cube benda = 0
Jumlah Cube benda = 0
Variabel Akhir, Metode dan Kelas
Di Jawa kita dapat
menandai bidang, metode dan kelas sebagai akhir. Setelah ditandai sebagai
akhir, barang-barang ini tidak dapat diubah.
Variabel didefinisikan
dalam interface secara implisit final. Anda tidak dapat mengubah nilai dari
variabel akhir (adalah konstan). Sebuah kelas akhir tidak dapat diperpanjang
yakni, kelas terakhir mungkin tidak subclassed. Hal ini dilakukan untuk alasan
keamanan dengan kelas dasar seperti String dan Integer. Hal ini juga
memungkinkan compiler untuk membuat beberapa optimasi, dan membuat keselamatan
thread sedikit lebih mudah untuk dicapai. Sebuah metode akhir tidak dapat
diganti bila kelasnya diwariskan. Setiap usaha untuk mengesampingkan atau
menyembunyikan sebuah metode akhir akan menghasilkan kesalahan kompiler.
OBJEK
Kelas Objek adalah kelas super untuk semua kelas di
Jawa. Beberapa kelas adalah metode objek:
sama
toString ()
tunggu ()
notify ()
notifyAll ()
hashCode ()
clone ()
sama
toString ()
tunggu ()
notify ()
notifyAll ()
hashCode ()
clone ()
Sebuah objek
merupakan instance dari kelas yang dibuat menggunakan operator baru. Operator
baru kembali referensi ke instance baru dari class. Referensi ini dapat
diberikan ke variabel referensi kelas. Proses membuat objek dari kelas disebut
instansiasi. Sebuah objek mengenkapsulasi negara dan perilaku.
Sebuah referensi obyek
memberikan pegangan untuk sebuah objek yang dibuat dan disimpan dalam memori.
Di Jawa, benda-benda hanya dapat dimanipulasi melalui referensi, yang dapat
disimpan dalam variabel.
Membuat variabel jenis
kelas Anda adalah sama dengan menciptakan variabel tipe data primitif, seperti
integer atau float. Setiap kali Anda membuat sebuah objek, suatu set baru
variabel instan datang ke dalam keberadaan yang mendefinisikan karakteristik
dari objek tersebut. Jika Anda ingin menciptakan sebuah objek dari kelas dan
memiliki variabel referensi yang berhubungan dengan objek ini, Anda juga harus
mengalokasikan memori untuk objek dengan menggunakan operator baru. Proses
ini disebut instantiate objek atau menciptakan sebuah contoh objek.
Bila Anda membuat objek
baru, Anda menggunakan operator baru untuk instantiate objek. Mengembalikan
operator baru lokasi objek yang Anda menetapkan jenis oa referensi.
Di bawah ini adalah contoh
yang menunjukkan penciptaan objek Cube dengan menggunakan operator baru.
public class Cube {
int panjang = 10;
int lebar = 10;
int tinggi = 10;
public int getVolume () {
return (panjang * lebar * tinggi);
}
public static void main (String [] args) {
Cube cubeObj; / / Membuat Referensi Cube
cubeObj = Cube baru (); / / Membuat sebuah
Obyek Cube
System.out.println ("Volume Cube
adalah:" + cubeObj.getVolume ());
}
}
Metode Overloading
Metode overloading hasil
ketika dua atau lebih metode di kelas yang sama memiliki nama yang sama tetapi
parameter yang berbeda. Metode dengan nama yang sama harus berbeda dalam jenis
atau jumlah parameter. Hal ini memungkinkan compiler untuk mencocokkan
parameter dan memilih metode yang benar ketika sejumlah pilihan yang ada.
Mengubah hanya jenis yang kembali tidak cukup untuk overload metode, dan akan
menjadi kesalahan saat kompilasi. Mereka harus memiliki tanda tangan yang
berbeda. Bila tidak ada metode yang cocok dengan parameter masukan ditemukan,
compiler upaya untuk mengubah parameter masukan untuk jenis lebih presisi.
pertandingan A kemudian dapat ditemukan tanpa kesalahan. Pada waktu kompilasi,
pelaksanaan hak dipilih berdasarkan tanda tangan dari pemanggilan metode
Berikut adalah contoh dari suatu kelas menunjukkan Metode overloading
public class MethodOverloadDemo {
void sumOfParams () {/ / Pertama Versi
System.out.println ("Tidak ada
parameter");
}
void sumOfParams (int a) {/ / Kedua Versi
System.out.println ("Satu
parameter:" + a);
}
sumOfParams int (int a, int b) {/ / Versi
Ketiga
System.out.println ("Dua
parameter:" + a + "," + b);
return a + b;
}
sumOfParams ganda (double a, double b) {/ /
Versi Keempat
System.out.println ("Dua parameter
double:" + a + "," + b);
return a + b;
}
public static void main (String args []) {
MethodOverloadDemo moDemo baru =
MethodOverloadDemo ();
int intResult;
doubleResult ganda;
moDemo.sumOfParams ();
System.out.println ();
moDemo.sumOfParams (2);
System.out.println ();
intResult = moDemo.sumOfParams (10, 20);
System.out.println ("Sum adalah"
+ intResult);
System.out.println ();
doubleResult = moDemo.sumOfParams (1.1,
2.2);
System.out.println ("Sum adalah"
+ doubleResult);
System.out.println ();
}
}
Output
Tidak ada parameter
Satu parameter: 2
Dua parameter: 10, 20
Sum adalah 30
Sum adalah 30
Dua ganda parameter: 1.1, 2.2
Sum adalah 3,3000000000000003
Sum adalah 3,3000000000000003
Di bawah ini adalah
potongan kode untuk menunjukkan antarmuka bahwa Implements Kelas:
Class cls = java.lang.String.class;
Kelas [] intfs = cls.getInterfaces ();
/ / [Java.lang.Comparable,
java.lang.CharSequence, java.io.Serializable]
/ / Interface untuk tipe primitif adalah
array kosong
cls = int.class;
intfs = cls.getInterfaces (); / / []
|
Di bawah ini adalah
potongan kode untuk menunjukkan apakah Kelas Obyek Merupakan Class atau
Interface:
Class cls = java.lang.String.class;
boolean isClass =;! cls.isInterface () / /
true
cls = java.lang.Cloneable.class;
isClass =;! cls.isInterface () / / false
|
KONSTRUKTOR
Sebuah konstruktor java
memiliki nama sama dengan nama kelas mana ia berasal. Pembuat's sintaks tidak
termasuk tipe kembali, karena constructor tidak mengembalikan nilai.
Konstruktor dapat meliputi
parameter dari berbagai jenis. Ketika konstruktor dipanggil dengan menggunakan
operator new, tipe harus cocok dengan yang ditentukan dalam definisi
constructor.
Java menyediakan
konstruktor default yang tidak membutuhkan argumen dan tidak melakukan tindakan
khusus atau inisialisasi, saat tidak ada konstruktor eksplisit disediakan.
Satu-satunya tindakan yang
diambil oleh default constructor implisit adalah untuk memanggil konstruktor
superclass menggunakan (super) panggilan. Pembuat argumen memberi Anda cara
untuk menyediakan parameter untuk inisialisasi objek.
Berikut adalah contoh
kelas kubus mengandung 2 konstruktor. (Satu standar dan satu konstruktor
parameter).
public class Cube1 {
int panjang;
int luas;
int tinggi;
public int getVolume () {
return (panjang * lebar * tinggi);
}
Cube1 () {
panjang = 10;
luasnya = 10;
tinggi = 10;
}
Cube1 (int l, int b, int h) {
panjang = l;
luas = b;
tinggi = h;
}
public static void main (String [] args) {
Cube1 cubeObj1, cubeObj2;
cubeObj1 = baru Cube1 ();
cubeObj2 = baru Cube1 (10, 20, 30);
System.out.println ("Volume Cube1
adalah:" + cubeObj1.getVolume ());
System.out.println ("Volume Cube1
adalah:" + cubeObj2.getVolume ());
}
}
Catatan: Jika sebuah kelas
mendefinisikan konstruktor eksplisit, itu tidak lagi memiliki default
constructor untuk mengatur negara objek.
Jika seperti kelas memerlukan default constructor, pelaksanaannya harus disediakan. Setiap upaya untuk memanggil default constructor akan menjadi kompilasi time error jika eksplisit default constructor tidak disediakan dalam kasus seperti itu.
Jika seperti kelas memerlukan default constructor, pelaksanaannya harus disediakan. Setiap upaya untuk memanggil default constructor akan menjadi kompilasi time error jika eksplisit default constructor tidak disediakan dalam kasus seperti itu.
Overload Konstruktor
Seperti metode,
konstruktor juga bisa kelebihan beban. Karena konstruktor dalam kelas semua
memiliki nama yang sama dengan kelas, /> tanda tangan mereka dibedakan
dengan daftar parameter mereka. Contoh di atas menunjukkan bahwa konstruktor
Cube1 kelebihan beban yang satu konstruktor default dan yang lain menjadi
parameter konstruktor.
Hal ini dimungkinkan untuk
menggunakan ini () membangun, untuk melaksanakan chaining lokal konstruktor
dalam kelas. Panggilan ini () dalam constructorinvokes konstruktor sebuah
lainnya dengan daftar parameter yang sesuai dalam kelas yang sama. Memanggil konstruktor
default untuk membuat hasil objek Cube di konstruktor parameter kedua dan
ketiga disebut juga. Java mengharuskan semua ini () call harus terjadi sebagai
pernyataan pertama dalam konstruktor.
Berikut adalah contoh
kelas kubus mengandung 3 konstruktor yang demostrates metode ini () dalam
konteks Konstruktor
public class Cube2 {
int panjang;
int luas;
int tinggi;
public int getVolume () {
return (panjang * lebar * tinggi);
}
Cube2 () {
ini (10, 10);
System.out.println ("Selesai dengan
Default Pembuat");
}
Cube2 (int l, int b) {
ini (l, b, 10);
System.out.println ("Selesai dengan
parameter Pembuat memiliki 2 params");
}
Cube2 (int l, int b, int h) {
panjang = l;
luas = b;
tinggi = h;
System.out.println ("Selesai dengan
parameter Pembuat memiliki 3 params");
}
public static void main (String [] args) {
Cube2 cubeObj1, cubeObj2;
cubeObj1 Cube2 = new ();
cubeObj2 = baru Cube2 (10, 20, 30);
System.out.println ("Volume Cube1
adalah:" + cubeObj1.getVolume ());
System.out.println ("Volume Cube2
adalah:" + cubeObj2.getVolume ());
}
}
public class Cube2 {
int panjang;
int luas;
int tinggi;
public int getVolume () {
return (panjang * lebar * tinggi);
}
Cube2 () {
ini (10, 10);
System.out.println ("Selesai dengan
Default Pembuat");
}
Cube2 (int l, int b) {
ini (l, b, 10);
System.out.println ("Selesai dengan
parameter Pembuat memiliki 2 params");
}
Cube2 (int l, int b, int h) {
panjang = l;
luas = b;
tinggi = h;
System.out.println ("Selesai dengan
parameter Pembuat memiliki 3 params");
}
public static void main (String [] args) {
Cube2 cubeObj1, cubeObj2;
cubeObj1 Cube2 = new ();
cubeObj2 = baru Cube2 (10, 20, 30);
System.out.println ("Volume Cube1
adalah:" + cubeObj1.getVolume ());
System.out.println ("Volume Cube2
adalah:" + cubeObj2.getVolume ());
}
}
Output
Selesai dengan parameter Pembuat memiliki 3 params
Selesai dengan parameter Pembuat memiliki 2 params
Selesai dengan Default Pembuat
Selesai dengan parameter Pembuat memiliki 3 params
Volume Cube1 adalah: 1000
Volume Cube2 adalah: 6000
Selesai dengan parameter Pembuat memiliki 2 params
Selesai dengan Default Pembuat
Selesai dengan parameter Pembuat memiliki 3 params
Volume Cube1 adalah: 1000
Volume Cube2 adalah: 6000
Pembuat Chaining
Setiap konstruktor panggilan konstruktor superclass. Sebuah super tersirat
() Oleh karena itu termasuk dalam masing-masing konstruktor yang tidak termasuk
baik ini () fungsi atau panggilan super eksplisit () sebagai pernyataan
pertama. The super () pernyataan memanggil sebuah konstruktor dari class super.
The implisit super () bisa diganti oleh super eksplisit (). Pernyataan super harus pernyataan pertama constructor.
Super eksplisit memungkinkan nilai parameter yang akan dilewatkan ke konstruktor dari superclass dan harus memiliki parameter yang cocok jenis Panggilan () super dalam constructor dari subclass akan menghasilkan panggilan dari konstruktor yang relevan dari superclass, berdasarkan tanda tangan panggilan. Ini disebut chaining konstruktor.
The implisit super () bisa diganti oleh super eksplisit (). Pernyataan super harus pernyataan pertama constructor.
Super eksplisit memungkinkan nilai parameter yang akan dilewatkan ke konstruktor dari superclass dan harus memiliki parameter yang cocok jenis Panggilan () super dalam constructor dari subclass akan menghasilkan panggilan dari konstruktor yang relevan dari superclass, berdasarkan tanda tangan panggilan. Ini disebut chaining konstruktor.
Di bawah ini adalah contoh konstruktor kelas menunjukkan chaining
menggunakan super () method.
class Cube {
int panjang;
int luas;
int tinggi;
public int getVolume () {
return (panjang * lebar * tinggi);
}
Cube () {
ini (10, 10);
System.out.println ("Selesai dengan
Default Pembuat dari Cube");
}
Cube (int l, int b) {
ini (l, b, 10);
System.out.println ("Selesai dengan
parameter Pembuat memiliki
2 parameter dari Cube ");
}
Cube (int l, int b, int h) {
panjang = l;
luas = b;
tinggi = h;
System.out.println ("Selesai dengan
parameter Pembuat memiliki
3 parameter dari Cube ");
}
}
SpecialCube public class extends Cube {
int berat;
SpecialCube () {
super ();
berat = 10;
}
SpecialCube (int l, int b) {
ini (l, b, 10);
System.out.println ("Selesai dengan
parameter Pembuat memiliki
2 parameter dari SpecialCube ");
}
SpecialCube (int l, int b, int h) {
super (l, b, h);
berat = 20;
System.out.println ("Selesai dengan
parameter Pembuat memiliki
3 parameter dari SpecialCube ");
}
public static void main (String [] args) {
SpecialCube specialObj1 SpecialCube = new
();
SpecialCube specialObj2 SpecialCube = baru
(10, 20);
System.out.println ("Volume
SpecialCube1 adalah:"
+ SpecialObj1.getVolume ());
System.out.println ("Berat SpecialCube1
adalah:"
+ SpecialObj1.weight);
System.out.println ("Volume
SpecialCube2 adalah:"
+ SpecialObj2.getVolume ());
System.out.println ("Berat SpecialCube2
adalah:"
+ SpecialObj2.weight);
}
}
Output
Selesai dengan parameter Pembuat memiliki 3 params dari SpecialCube
Selesai dengan parameter Pembuat memiliki 2 params dari SpecialCube
Volume SpecialCube1 adalah: 1000
Berat SpecialCube1 adalah: 10
Volume SpecialCube2 adalah: 2000
Berat SpecialCube2 adalah: 20
Selesai dengan parameter Pembuat memiliki 2 params dari SpecialCube
Volume SpecialCube1 adalah: 1000
Berat SpecialCube1 adalah: 10
Volume SpecialCube2 adalah: 2000
Berat SpecialCube2 adalah: 20
The super () membangun seperti ini () mengkonstruksikan: jika digunakan,
harus terjadi sebagai pernyataan pertama dalam konstruktor, dan hanya dapat
digunakan dalam sebuah deklarasi konstruktor. Ini berarti bahwa ini () dan
super () panggilan tidak dapat baik terjadi dalam constructor yang sama. Sama
seperti ini () membangun menyebabkan chaining dari konstruktor di kelas yang
sama, super () membangun menyebabkan chaining dari konstruktor subclass ke
superclass konstruktor.
jika konstruktor tidak memiliki sebuah ini () atau super () membangun sebagai pernyataan pertama, maka super () panggilan ke default constructor di superclass dimasukkan.
jika konstruktor tidak memiliki sebuah ini () atau super () membangun sebagai pernyataan pertama, maka super () panggilan ke default constructor di superclass dimasukkan.
Catatan: Jika kelas hanya mendefinisikan konstruktor non-default, maka
subclass tersebut tidak akan mencakup implisit super () call. Ini akan ditandai
sebagai kesalahan saat kompilasi. Subkelas harus kemudian secara eksplisit
panggilan constructor superclass, dengan menggunakan super () membangun dengan
argumen yang tepat untuk mencocokkan konstruktor superclass yang tepat.
Di bawah ini adalah contoh kelas konstruktor eksplisit menunjukkan chaining
menggunakan super () call.
class Cube {
int panjang;
int luas;
int tinggi;
public int getVolume () {
return (panjang * lebar * tinggi);
}
Cube (int l, int b, int h) {
panjang = l;
luas = b;
tinggi = h;
System.out.println ("Selesai dengan
parameter Pembuat memiliki
3 parameter dari Cube ");
}
}
public class extends SpecialCube1 Cube {
int berat;
SpecialCube1 () {
super (10, 20, 30); / / Akan Berikan Error
Penyusunan tanpa baris ini
berat = 10;
}
public static void main (String [] args) {
SpecialCube1 specialObj1 = SpecialCube1 baru
();
System.out.println ("Volume
SpecialCube1 adalah:" + specialObj1.getVolume ());
}
}
Output
Selesai dengan parameter Pembuat memiliki 3 params dari Cube
Volume SpecialCube1 adalah: 6000
Volume SpecialCube1 adalah: 6000
MODUL 1
Laporan Dosen
Program Bilangan Genap:
import java.io.*;
import javax.swing.*;
//class awal
class awal
{
protected int x;
protected int i;
public String judul()
{
return "Bilangan";
}
}
//class baru merupakan penurunan dari class awal
class baru extends awal
{
//constructor
public baru(int x)
{
this.x=x;
}
public baru()
{
}
//constructor
public String judul()
{
return "Bilangan Genap";
}
//proses seleksi bilangan genap
public void genap(int x)
{
for(int i=1;i<=x;i++)
{
if(i%2==0)
{
System.out.print(i+" ");
}
}
}
}
//main program
class demo
{
public static void cetakjudul(awal as)
{
System.out.println(as.judul()+"");
}
public static void main(String[] args)
{
//menampilkan tabel inputan
String Input = "";
Input=JOptionPane.showInputDialog("Masukkan Angka = ");
int x=Integer.parseInt(Input);
//objek
awal a = new baru();
baru b = new baru();
cetakjudul(a);
b.genap(x);
}
}
Hasil Eksekusi:
Laporan Aslab
Program Segitiga:
import java.io.*;
//class segitiga untuk perhitungan
class segitiga
{
double alas;
double tinggi;
//constructor
segitiga()
{
alas=3;
tinggi=4;
}
double tampilalas()
{
return alas;
}
double tampiltinggi()
{
return tinggi;
}
double hitungluas()
{
return(0.5*alas*tinggi);
}
double hitungkeliling()
{
return(0.5*alas*tinggi*tinggi);
}
}
//class hasil dari penghitungan
class hasil
{
public static void main(String[] args)
{
//objek segitiga
segitiga s1,s2,s3,s4;
s1 = new segitiga();
s2 = new segitiga();
s3 = new segitiga();
s4 = new segitiga();
//menampilkan kedalam layar
System.out.println("Alas = "+s1.tampilalas());
System.out.println("Tinggi = "+s2.tampiltinggi());
System.out.println("Luas Segitiga = "+s3.hitungluas());
System.out.println("Keliling Segitiga = "+s4.hitungkeliling());
}
}
Hasil Eksekusi:
MODUL 2
Laporan Dosen
Program Pangkat Akar kali 5:
import java.io.*;
class awal
{
//atribut yang di hide
private double bilangan;
public awal(double bilangan)
{
bilangan=0;
}
public awal()
{
}
public void pangkat(double bilangan)
{
System.out.println("Pangkat Bilangan Adalah "+bilangan*bilangan);
}
public void akar(double bilangan)
{
System.out.println("Akar Bilangan Adalah "+Math.sqrt(bilangan));
}
public void kali(double bilangan)
{
System.out.println("Kali 5 Bilangan Adalah "+5*bilangan);
}
}
class baru
{
public static void main(String[] args)
{
DataInputStream dis=new DataInputStream(System.in);
try
{
System.out.print("Masukkan Bilangan = ");
double bilangan=Double.parseDouble(dis.readLine());
awal a=new awal();
awal b=new awal();
awal c=new awal();
a.pangkat(bilangan);
b.akar(bilangan);
c.kali(bilangan);
}
catch(Exception e)
{
System.out.println("Inputan Bukan Bilangan");
}
}
}
Hasil Eksekusi:
Laporan Aslab
Program Pangkat 2:
import java.io.*;
class awal
{
//atribut yang di hide
private int angka;
public awal(int angka)
{
angka=0;
}
public awal()
{
}
public void pangkat(int angka)
{
System.out.println("Hasil Pangkat 2 = "+angka*angka);
}
}
class baru
{
public static void main(String[] args) throws Exception
{
DataInputStream dis=new DataInputStream(System.in);
String pil="y";
while(pil.equals("y"))
{
try
{
System.out.print("Masukkan Angka = ");
int angka=Integer.parseInt(dis.readLine());
awal a=new awal();
a.pangkat(angka);
}
catch(Exception e)
{
System.out.println("Inputan Bukan Angka");
}
System.out.print("Apakah Anda Ingin Mengulang y/t =");
pil=dis.readLine();
}
}
}
Hasil Eksekusi:
MODUL 3
Laporan Dosen
Program Membuat Panel Nama:
import java.awt.*;
import javax.swing.*;
class Panelbiru extends JFrame
{
JLabel label1,label2,label3;
JPanel panel1,panel2,panel3;
public Panelbiru()
{
setTitle("Hai...");
label1 = new JLabel("Ayu");
label2 = new JLabel("Rara");
label3 = new JLabel("Larasati");
panel1 = new JPanel();
panel2 = new JPanel();
panel3 = new JPanel();
panel1.setBackground(Color.blue);
panel2.setBackground(Color.blue);
panel3.setBackground(Color.blue);
panel1.add(label1);
panel2.add(label2);
panel3.add(label3);
getContentPane().add("West",panel1);
getContentPane().add("East",panel2);
getContentPane().add("South",panel3);
getContentPane().setBackground(Color.blue);
pack();
}
public static void main (String[] args)
{
Panelbiru baru = new Panelbiru();
baru.setSize(450,100);
baru.setVisible(true);
}
}
Hasil Eksekusi:
Laporan Aslab
Program Menghitung Jumlah Huruf dan Sorting Angka
import java.io.*;
import java.util.*;
import javax.swing.*;
//class awal untuk penghitungan karakter
class awal
{
private String input;
public awal(String input)
{
this.input=input;
}
public awal()
{
}
public void pilihan1(String input)
{
HashMap map = new HashMap();
String unik = new String();
try
{
for (int i=0;i
{
if(map.containsKey(input.charAt(i)))
{
map.put (input.charAt(i), map.get(input.charAt(i)) + 1 );
}
else
{
map.put (input.charAt(i), 1);
unik += input.charAt (i);
}
}
for(Map.Entry item:map.entrySet())
{
JOptionPane.showMessageDialog(null,"Hasil\n Huruf "+item.getKey() + " berjumlah " + item.getValue()+".","Hasil",JOptionPane.PLAIN_MESSAGE);
}
}
catch (Exception e)
{
e.printStackTrace();
}
}
}
//class sort untuk pengurutan angka
class sort
{
String str;
int size,sortArr[];
public void getdata()
{
BufferedReader obj=new BufferedReader(new InputStreamReader(System.in));
String Input="";
str=JOptionPane.showInputDialog("Masukkan Jumlah Angka yang Diinginkan = ");
size=Integer.parseInt(str);
sortArr=new int[size];
try
{
for(int i=0;i
{
String Masukkan="";
str=JOptionPane.showInputDialog("Inputkan Angka Ke-"+(i+1)+"= ");
sortArr[i]=Integer.parseInt(str);
}
}
catch(Exception e)
{
}
}
public void BubSort()
{
getdata();
for(int i=0;i
{
for(int j=0;j
{
if(sortArr[j]
{
int temp=sortArr[j];
sortArr[j]=sortArr[j+1];
sortArr[j+1]=temp;
}
}
}
display();
}
public void display()
{
//JOptionPane.showMessageDialog(null,"Sebelum Disorting\n"+sortArr[]+".","Hasil",JOptionPane.OK_CANCEL_OPTION);
for(int i=0;i
{
JOptionPane.showMessageDialog(null,"Setelah Di Sorting\nAngka ke-"+(i+1)+" = "+sortArr[i]+".","Hasil",JOptionPane.OK_CANCEL_OPTION);
}
}
}
class akhir
{
public static void main(String[] args)
{
JOptionPane optionPane;
String Input="";
Input=JOptionPane.showInputDialog("Pilih Salah Satu :\n1.Jumlah Huruf\n2.Sorting\n3.Keluar");
int pilih=Integer.parseInt(Input);
sort ob1=new sort();
if(pilih==1)
{
String dialog = "Masukkan Sembarang Kalimat = ";
String input = JOptionPane.showInputDialog(dialog);
//System.out.println(input);
if (input != null) // cek apakah input tidak kosong
{
new awal().pilihan1(input);
}
else // jika tidak ada input, maka program akan langsung keluar
{
System.exit(0);
}
}
else if(pilih==2)
{
ob1.BubSort();
}
else if(pilih==3)
{
JOptionPane.showMessageDialog(null,"Terima Kasih Atas Perhatian Anda!!!","Hasil",JOptionPane.OK_CANCEL_OPTION);
}
else
{
JOptionPane.showMessageDialog(null,"Pilihan hanya 1-3","Kesalahan Inputan",JOptionPane.OK_CANCEL_OPTION);
}
}
}
String unik = new String();
try
{
for (int i=0;i
{
if(map.containsKey(input.charAt(i)))
{
map.put (input.charAt(i), map.get(input.charAt(i)) + 1 );
}
else
{
map.put (input.charAt(i), 1);
unik += input.charAt (i);
}
}
for(Map.Entry item:map.entrySet())
{
JOptionPane.showMessageDialog(null,"Hasil\n Huruf "+item.getKey() + " berjumlah " + item.getValue()+".","Hasil",JOptionPane.PLAIN_MESSAGE);
}
}
catch (Exception e)
{
e.printStackTrace();
}
}
}
//class sort untuk pengurutan angka
class sort
{
String str;
int size,sortArr[];
public void getdata()
{
BufferedReader obj=new BufferedReader(new InputStreamReader(System.in));
String Input="";
str=JOptionPane.showInputDialog("Masukkan Jumlah Angka yang Diinginkan = ");
size=Integer.parseInt(str);
sortArr=new int[size];
try
{
for(int i=0;i
{
String Masukkan="";
str=JOptionPane.showInputDialog("Inputkan Angka Ke-"+(i+1)+"= ");
sortArr[i]=Integer.parseInt(str);
}
}
catch(Exception e)
{
}
}
public void BubSort()
{
getdata();
for(int i=0;i
{
for(int j=0;j
{
if(sortArr[j]
{
int temp=sortArr[j];
sortArr[j]=sortArr[j+1];
sortArr[j+1]=temp;
}
}
}
display();
}
public void display()
{
//JOptionPane.showMessageDialog(null,"Sebelum Disorting\n"+sortArr[]+".","Hasil",JOptionPane.OK_CANCEL_OPTION);
for(int i=0;i
{
JOptionPane.showMessageDialog(null,"Setelah Di Sorting\nAngka ke-"+(i+1)+" = "+sortArr[i]+".","Hasil",JOptionPane.OK_CANCEL_OPTION);
}
}
}
class akhir
{
public static void main(String[] args)
{
JOptionPane optionPane;
String Input="";
Input=JOptionPane.showInputDialog("Pilih Salah Satu :\n1.Jumlah Huruf\n2.Sorting\n3.Keluar");
int pilih=Integer.parseInt(Input);
sort ob1=new sort();
if(pilih==1)
{
String dialog = "Masukkan Sembarang Kalimat = ";
String input = JOptionPane.showInputDialog(dialog);
//System.out.println(input);
if (input != null) // cek apakah input tidak kosong
{
new awal().pilihan1(input);
}
else // jika tidak ada input, maka program akan langsung keluar
{
System.exit(0);
}
}
else if(pilih==2)
{
ob1.BubSort();
}
else if(pilih==3)
{
JOptionPane.showMessageDialog(null,"Terima Kasih Atas Perhatian Anda!!!","Hasil",JOptionPane.OK_CANCEL_OPTION);
}
else
{
JOptionPane.showMessageDialog(null,"Pilihan hanya 1-3","Kesalahan Inputan",JOptionPane.OK_CANCEL_OPTION);
}
}
}
Hasil Eksekusi:
Untuk Opsi Pertama:
Untuk Opsi kedua
DEMO MULTIMEDIA
Program Puzzle Angka:
Program ini membuka dan mencocokkan angka
import java.awt.*;
import java.util.*;
import javax.swing.*;
import java.awt.event.*;
import javax.swing.*;
class GamesButton extends JButton
{
private static final String HIDDEN_CHAR = "?";
private Integer val;
public GamesButton()
{
hideValue();
}
public void displayValue()
{
setText(val.toString());
}
public void hideValue()
{
setText(HIDDEN_CHAR);
}
public void setVal(Integer val)
{
this.val = val;
}
public Integer getVal()
{
return val;
}
}
class GamesButtonHandler implements ActionListener,Runnable
{
private GamesButton prevButton = null;
private GamesButton currButton = null;
private boolean inAction = false;
private Games parentFrame = null;
public GamesButtonHandler(Games parentFrame)
{
this.parentFrame = parentFrame;
}
public void run()
{
currButton.displayValue();
try
{
Thread.sleep(750);
}
catch(Exception err)
{
}
if(currButton.getVal().intValue()==prevButton.getVal().intValue())
{
prevButton.setEnabled(false);
prevButton = null;
currButton.setEnabled(false);
parentFrame.updateTotalButtonsLeft();
}
else
{
prevButton.hideValue();
prevButton = null;
currButton.hideValue();
}
parentFrame.updateTotalRetries();
inAction = false;
}
public void actionPerformed(ActionEvent e)
{
if(inAction) return;
if(e.getActionCommand().equals("reset"))
{
parentFrame.resetGame();
return;
}
currButton = (GamesButton)e.getSource();
if(prevButton==null)
{
currButton.displayValue();
prevButton = currButton;
}
else if(prevButton!=currButton)
{
inAction = true;
Thread workerThread = new Thread(this);
workerThread.start();
}
}
}
class Games extends JFrame
{
private static final int TOTAL_BUTTONS = 40;
private static final int TOTAL_PAIRS = TOTAL_BUTTONS>>1;
private int buttonsLeft;
private int totalRetries;
private JPanel northPanel = new JPanel(new GridLayout(1,5,10,10));
private JLabel lblButtonsLeft = new JLabel("" + TOTAL_BUTTONS);
private JLabel lblTotalRetries = new JLabel("0");
private JButton btnReset = new JButton("New Game!");
private JPanel southPanel = new JPanel(new GridLayout(5,8,2,2));
private GamesButton[] buttons = new GamesButton[TOTAL_BUTTONS];
private Container contentPane = getContentPane();
private GamesButtonHandler eventHandler = new GamesButtonHandler(this);
public Games()
{
initDisplay();
initGame();
}
private void initDisplay()
{
setTitle("Games");
contentPane.add(northPanel,BorderLayout.NORTH);
contentPane.add(southPanel,BorderLayout.SOUTH);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
btnReset.setActionCommand("reset");
btnReset.addActionListener(eventHandler);
northPanel.add(btnReset);
northPanel.add(new JLabel("Jumlah Percobaan : "));
northPanel.add(lblTotalRetries);
northPanel.add(new JLabel("Sisa Button : "));
northPanel.add(lblButtonsLeft);
for(int i=0;i
buttons[i] = new GamesButton();
buttons[i].addActionListener(eventHandler);
southPanel.add(buttons[i]);
}
}
private void initGame()
{
buttonsLeft = TOTAL_BUTTONS;
totalRetries = 0;
lblButtonsLeft.setText("" + buttonsLeft);
lblTotalRetries.setText("" + totalRetries);
ArrayList list = new ArrayList(TOTAL_BUTTONS);
//generate angka acak sebanyak TOTAL_PAIRS buah
Random rd = new Random();
for(int i=0;i
{
list.add(new Integer(rd.nextInt(100)));
}
//copy list sebelumnya
ArrayList tmpList = (ArrayList)list.clone();
//buat pasangan nomor dari list yang sudah ada
//dan letakkan secara acak pada list
for(int i=TOTAL_PAIRS;i>0;i--)
{
int pos = rd.nextInt(i);
list.add(tmpList.get(pos));
tmpList.remove(pos);
}
//set nilai yang telah di dapat ke masing2 button
for(int i=0;i
{
buttons[i].setVal((Integer)list.get(i));
}
list=null;
tmpList=null;
pack();
setVisible(true);
}
public void updateTotalButtonsLeft()
{
buttonsLeft-=2;
if(buttonsLeft==0)
{
int result = JOptionPane.showConfirmDialog(this,"Permainan sudah selesai, Anda ingin mengulang ?","Game Over",JOptionPane.YES_NO_OPTION);
if(result==JOptionPane.YES_OPTION)
resetGame();
}
lblButtonsLeft.setText("" + buttonsLeft);
}
public void updateTotalRetries()
{
totalRetries++;
lblTotalRetries.setText("" + totalRetries);
}
public void resetGame()
{
for(int i=0;i
{
buttons[i].hideValue();
buttons[i].setEnabled(true);
}
initGame();
}
public static void main(String[] args)
{
new Games();
}
}
Hasil Eksekusi:
buttons[i] = new GamesButton();
buttons[i].addActionListener(eventHandler);
southPanel.add(buttons[i]);
}
}
private void initGame()
{
buttonsLeft = TOTAL_BUTTONS;
totalRetries = 0;
lblButtonsLeft.setText("" + buttonsLeft);
lblTotalRetries.setText("" + totalRetries);
ArrayList
//generate angka acak sebanyak TOTAL_PAIRS buah
Random rd = new Random();
for(int i=0;i
{
list.add(new Integer(rd.nextInt(100)));
}
//copy list sebelumnya
ArrayList
//buat pasangan nomor dari list yang sudah ada
//dan letakkan secara acak pada list
for(int i=TOTAL_PAIRS;i>0;i--)
{
int pos = rd.nextInt(i);
list.add(tmpList.get(pos));
tmpList.remove(pos);
}
//set nilai yang telah di dapat ke masing2 button
for(int i=0;i
{
buttons[i].setVal((Integer)list.get(i));
}
list=null;
tmpList=null;
pack();
setVisible(true);
}
public void updateTotalButtonsLeft()
{
buttonsLeft-=2;
if(buttonsLeft==0)
{
int result = JOptionPane.showConfirmDialog(this,"Permainan sudah selesai, Anda ingin mengulang ?","Game Over",JOptionPane.YES_NO_OPTION);
if(result==JOptionPane.YES_OPTION)
resetGame();
}
lblButtonsLeft.setText("" + buttonsLeft);
}
public void updateTotalRetries()
{
totalRetries++;
lblTotalRetries.setText("" + totalRetries);
}
public void resetGame()
{
for(int i=0;i
{
buttons[i].hideValue();
buttons[i].setEnabled(true);
}
initGame();
}
public static void main(String[] args)
{
new Games();
}
}
Hasil Eksekusi:
Demikian Sekian dan trimakasih...Bila ada pertanyaan Monggo sedoyo
comment...Tapi ingat...blajar memahami lebih baik daripada hanya
mengcopy-paste saja...So...Pahamilah......
Tidak ada komentar:
Posting Komentar