Anda di halaman 1dari 21

LAPORAN PRAKTIKUM KE - 7

OOP DASAR

Disusun Oleh :

Nama : ANISSA KARUNIA

NIM : M3111014

Kelas : TI A

DIPLOMA III TEKNIK INFORMATIKA

FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM

UNIVERSITAS SEBELAS MARET

2012
DASAR TEORI

1. truktur Program Java


a. Class
Menurut pengertian class adalah desain software yang
menggambarkan properties secara umum dari suatu model software.
Dalam struktur pemrograman java ini jangan banyangkan bahwa
pendefinisian class secara teori juga adalah class karena bisa jadi dia
adalah sebuah object. Pemrogramman java tidak mendefinisikan secara
eksplisit apakah dia class atau object sehingga kita mengetahuinya dari
perannya dalam sebuah analisa.
b. Method
Method adalah abstraksi sebuah mekanisme dan terdiri dari instruksi
untuk menyelesaikan beberapa tugas. Dipotongpotong pudan diberi
nama. Pemotongan memungkinkan anda untuk menangani masalah yang
sangat rumit seperti konsep tunggal.
c. Method Constructor
Contructor adalah terutama untuk inisialisasi variable-variable instan
kelas serta melakukan persiapan pada suatu object agar object itu dapat
beroperasi dengan baik, semacam melakukan start pada kendaraan
bermotor . Ketika object suatu class diciptakan, new memanggil
constructor kelas untuk melakukan inisiasi. Ketika object suatu class
diciptakan, new memanggil constructor kelas untuk melakukan inisiasi.
1) Constructor harus bernama sama dengan nama kelas (karena case
sensitive maka nama harus sama dalam huruf kecil dan kapital).
2) Constructor tidak menspesifikasikan tipe yang dikirim karena dapat
dipastikan tipe yang dikirim bertipe class itu.
3) Class dapat berisi banyak constructor overloading yang
memungkinkan object diinisiasi dengan beragam cara berbeda.
4) Constructor dapat mempunyai access modifier, biasanya public,
namun dapat berupa private seperti kita membuat pola rancangan
singleton.
d. Method Accessor
Method accessor adalah sebuah method yang memiliki nilai balikan,
sehinggal untuk memanggilnya kita hanya memanggilnya saja karena
mehod tersebut sudah memiliki nilai. Biasanya method ini digunakan
untuk mendapatkan nilai variable instance.
e. Method Mutator
Method mutator adalah method yang digunakan untuk mengubah nilai,
biasanya yang diubah variable instance.
f. Method main
Method main adalah method inti yang digunakan untuk memanggil
method-method yang lain. Method ini harus ada di salah satu class yang
memanggil class lain dan biasanya menampilkan sebuah output.
g. Access control
Pemrograman berorientasi objek akan memungkinkan hubungan antar
object atau class atau hubungan. Dengan menggunakan access control
tersebut dapat memungkinkan untuk mengatur variable, method ataupun
class yang dapat diakses oleh class lain atau hanya dapat diakses didalam
dirinya sendiri.
Jenis access control:
1) public : class satu dengan yang lain atau method dalam suatu class
dengan method yang lain dapat diakses secara bebas.
2) Private : method atau variable instance hanya dapat diakses dalam
satu class.
3) Protected : method dapat diakses selama masih dalam satu paket dan
dari subclass manapun.
extends class adalah class yang mewarisi sifat dari sifat-sifat yang dimiliki oleh superclass.
disini class ini disebut juga sub-class dari superclass

KONSEP PEWARISAN (INHERITANCE ) PADA OOP

Sebagai Informasi bahwa Ciri khas Pemrograman Berorientasi Objek ada tiga hal yaitu:

1. Enkapsulasi ( Pembungkusan )
2. Inheritance ( Pewarisan )

3. Polymorphism ( Perbedaan Bentuk )

PENGERTIAN PEWARISAN (INHERITANCE)

Konsep inheritance ini mengadopsi dunia riil dimana suatu entitas/obyek dapat
mempunyai entitas/obyek turunan. Dengan konsep inheritance, sebuah class dapat
mempunyai class turunan

Suatu class yang mempunyai class turunan dinamakan parent class atau base class.
Sedangkan class turunan itu sendiri seringkali disebut subclass atau child class. Suatu
subclass dapat mewarisi apa-apa yang dipunyai oleh parent class.

Karena suatu subclass dapat mewarisi apa apa yang dipunyai oleh parent class-nya,
maka member dari suatu subclass adalah terdiri dari apa-apa yang ia punyai dan juga
apa-apa yang ia warisi dari class parent-nya.

Kesimpulannya, boleh dikatakan bahwa suatu subclass adalah tidak lain hanya
memperluas (extend) parent class-nya.

Dari hirarki diatas dapat dilihat bahwa, semakin kebawah, class akan semakin bersifat
spesifik. Class mamalia memiliki seluruh sifat yang dimiliki oleh binatang, demikian
halnya juga macan , kucing, Paus dan Monyet memiliki seluruh sifat yang diturunkan
dari class mamalia.

Dengan konsep ini, karakteristik yang dimiliki oleh class binatang cukup didefinisikan
didefinisikan dalam class binatang saja.

Class mamalia tidak perlu mendefinisikan ulang apa yang telah dimiliki oleh class
binatang, karena sebagai class turunannya, ia akan mendapatkan karakteristik dari
class binatang secara otomatis. Demikian juga dengan class macan, kucing, Paus dan
monyet, hanya perlu mendefinisikan karakteristik yang spesifik dimiliki oleh class-nya
masing-masing.

Dengan memanfaatkan konsep pewarisan ini dalam pemrograman, maka hanya perlu
mendefinisikan karakteristik yang lebih umum akan didapatkan dari class darimana ia
diturunkan.

DEKLARASI PEWARISAN (INHERITANCE)

Deklarasi yang digunakan adalah dengan menambahkan kata kunci extends setelah
deklarasi nama class, kemudian diikuti dengan nama parent class-nya. Kata kunci
extends tersebut memberitahu kompiler Java bahwa kita ingin melakukan perluasan
class.

public class B extends A { … }

Pada saat dikompilasi, Kompiler Java akan membacanya sebagai subclass dari class
Object.

public class A extends Object { … }


LANGKAH PRAKTIKUM
1. Buka aplikasi Netbeans IDE.
2. Buat java project dengan nama package kalkulator.
3. Pilih project location dan project folder dengan klik browse
4. Centang create main class
5. Kemudian klik finish
6. Membuat new class dengan klik kanan pada project kalkulator2 kemudian
new > new class
7. Buat class bernama Kalkulator2 sebagai tempat penulisan rumus matematika
dasar. Script-nya seperti berikut ini :
package kalkulator2;

/**
*
* @author RPL 04
*/
public class Kalkulator2 {

public static float hasil;


public static double x1;
public static double x2;
public float getHasil(){
return hasil;
}
public double getx1(){
return this.x1;
}

public double getx2(){


return this.x2;
}
public void setHasil(float hasil){
this.hasil = hasil;
}
public void tambah(String a, String b){
float tempA=Float.parseFloat(a);
float tempB=Float.parseFloat(b);
this.hasil = tempA+tempB;
}
public void kurang(String a, String b){
float tempA=Float.parseFloat(a);
float tempB=Float.parseFloat(b);
this.hasil = tempA-tempB;
}
public void kali(String a, String b){
float tempA=Float.parseFloat(a);
float tempB=Float.parseFloat(b);
this.hasil = tempA*tempB;
}
public void bagi(String a, String b){
float tempA=Float.parseFloat(a);
float tempB=Float.parseFloat(b);
this.hasil = tempA/tempB;
}

}
8. Buat class bernama completeCalculator sebagai tempat penulisan rumus
statistik. Script-nya seperti berikut ini :
package kalkulator2;

/**
*
* @author RPL 04
*/
public class completeCalculator extends Kalkulator2 {
public void akar(String a){
float tempA=Float.parseFloat(a);
this.hasil = (float)Math.sqrt(tempA);
}
public void kuadrat(String a){
float tempA=Float.parseFloat(a);
tempA=tempA*tempA;
this.hasil = tempA;
}
public void pangkat(String a, String b){
this.hasil= 1;
float tempA=Float.parseFloat(a);
int tempB= Integer.parseInt(b);
for(int c=1;c<=tempB;c++){
this.hasil = this.hasil*tempA;
}
}
public void akarpangkat(String a, String b){
this.hasil= 1;
float tempA=Float.parseFloat(a);
float tempB=1/Float.parseFloat(b);
this.hasil= (float)Math.pow(tempA,tempB);
}
public void sin(String a){
float tempA=Float.parseFloat(a);
this.hasil = (float)Math.sin(Math.toRadians(tempA));
}
public void cos(String a){
float tempA=Float.parseFloat(a);
this.hasil = (float)Math.cos(Math.toRadians(tempA));
}
public void tan(String a){
float tempA=Float.parseFloat(a);
this.hasil = (float)Math.tan(Math.toRadians(tempA));
}
public void faktorial(String a){
int tempA=Integer.parseInt(a);
for(int c=tempA;c>0;c--){
this.hasil=this.hasil*c;
}
}
}
9. Buat class bernama Calculatorjadi sebagai tempat penulisan rumus
matematika dasar. Script-nya seperti berikut ini :
package kalkulator2;

/**
*
* @author Day
*/
public class Calculatorjadi extends completeCalculator {
public void segitiga(String a, String b){
float tempA = Float.parseFloat(a);
float tempB = Float.parseFloat(b);
this.hasil = tempA * tempB / 2;
}

public void persegi(String a){


float tempA = Float.parseFloat(a);
this.hasil = -tempA * tempA;
}

public void persegiPanjang(String a, String b){


float tempA = Float.parseFloat(a);
float tempB = Float.parseFloat(b);
this.hasil = tempA * tempB;
}

public void lingkaran(String a){


float tempA = Float.parseFloat(a);
this.hasil = tempA * tempA * 22 / 7;
}

public void persamaanKuadrat(String a, String b, String c){


double tempA = Double.parseDouble(a);
double tempB = Double.parseDouble(b);
double tempC = Double.parseDouble(c);
if(tempB*tempB - (4*tempA*tempC) < 0)
{
System.out.println("akar Imajiner");
}
else
{
x1 = (-tempB + Math.sqrt(tempB*tempB - 4*tempA*tempC))/(2*tempA);
x2 = (-tempB - Math.sqrt(tempB*tempB - 4*tempA*tempC))/(2*tempA);

}
}
}

10. Buat class yang dijadikan main dari program kalkulator ini, beri nama class
mainCalculator. Scriptnya adalah seperti berikut :
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package kalkulator2;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

/**
*
* @author RPL 04
*/
public class mainCalculator {
public static void main(String args[]){
int pilihan=-1;
String bil_a;
String bil_b;
Calculatorjadi cal= new Calculatorjadi();

BufferedReader reader;
reader = new BufferedReader (new InputStreamReader (System.in));
boolean a = true;
while(a==true){
System.out.println("=======================================");
System.out.println("Pilih salah satu dari vasilitas berikut");
System.out.println("1. Menambahkan bilangan bulat");
System.out.println("2. Mengurangi bilangan bulat");
System.out.println("3. Perkalian bilangan bulat");
System.out.println("4. Pembagian bilangan bulat");
System.out.println("5. akar kuadrat");
System.out.println("6. kuadrat");
System.out.println("7. pangkat");
System.out.println("8. Akar pangkat");
System.out.println("9. faktorial");
System.out.println("10. sin");
System.out.println("11. cos");
System.out.println("12. tan");
System.out.println("13. Luas Segitiga");
System.out.println("14. Luas Persegi");
System.out.println("15. Luas Persegi Panjang");
System.out.println("16. Luas Lingkaran");
System.out.println("17. Persamaan Kuadrat");
System.out.println("18. Keluar dari program");
System.out.print("Pilihan anda:");
try{
pilihan = Integer.parseInt(reader.readLine());
}catch(IOException e){
System.out.print(e);
}
System.out.println("=======================================");
switch(pilihan){
case 1:
try{
System.out.print("inputkan bilangan bulat
a=");
bil_a = reader.readLine();
System.out.print("inputkan bilangan bulat
b=");
bil_b = reader.readLine();
cal.tambah(bil_a,bil_b);
}catch(IOException e){
System.out.print(e);
}
System.out.println("hasil penjumlahan adalah
"+cal.getHasil());
System.out.println("\n\n\n\n\n\n\n");
a=true;break;
case 2:
try{
System.out.print("inputkan bilangan bulat
a=");
bil_a = reader.readLine();
System.out.print("inputkan bilangan bulat
b=");
bil_b = reader.readLine();
cal.kurang(bil_a, bil_b);
}catch(IOException e){
System.out.print(e);
}
System.out.println("hasil penjumlahan adalah
"+cal.getHasil());
System.out.println("\n\n\n\n\n\n\n");
a=true;break;
case 3:
try{
System.out.print("inputkan bilangan bulat
a=");
bil_a = reader.readLine();
System.out.print("inputkan bilangan bulat
b=");
bil_b = reader.readLine();
cal.kali(bil_a, bil_b);
}catch(IOException e){
System.out.print(e);
}
System.out.println("hasil penjumlahan adalah
"+cal.getHasil());
System.out.println("\n\n\n\n\n\n\n");
a=true;break;
case 4:
try{
System.out.print("inputkan bilangan bulat
a=");
bil_a = reader.readLine();
System.out.print("inputkan bilangan bulat
b=");
bil_b = reader.readLine();
cal.bagi(bil_a, bil_b);
}catch(IOException e){
System.out.print(e);
}
System.out.println("hasil penjumlahan adalah
"+cal.getHasil());
System.out.println("\n\n\n\n\n\n\n");
a=true;break;

case 5:
try{
System.out.print("inputkan bilangan bulat =");
bil_a = reader.readLine();
cal.akar(bil_a);
}catch(IOException e){
System.out.print(e);
}
System.out.println("hasil akar kuadrat adalah
"+cal.getHasil());
System.out.println("\n\n\n\n\n\n\n");
a=true;break;

case 6:
try{
System.out.print("inputkan bilangan bulat =");
bil_a = reader.readLine();
cal.kuadrat(bil_a);
}catch(IOException e){
System.out.print(e);
}
System.out.println("hasil kuadrat adalah
"+cal.getHasil());
System.out.println("\n\n\n\n\n\n\n");
a=true;break;

case 7:
try{
System.out.print("inputkan bilangan bulat =");
bil_a = reader.readLine();
System.out.print("inputkan pangkat =");
bil_b = reader.readLine();
cal.pangkat(bil_a, bil_b);
}catch(IOException e){
System.out.print(e);
}
System.out.println("hasil pangkat adalah
"+cal.getHasil());
System.out.println("\n\n\n\n\n\n\n");
a=true;break;

case 8:
try{
System.out.print("inputkan bilangan bulat =");
bil_a = reader.readLine();
System.out.print("inputkan akar pangkat =");
bil_b = reader.readLine();
cal.akarpangkat(bil_a, bil_b);
}catch(IOException e){
System.out.print(e);
}
System.out.println("hasil akar pangkat adalah
"+cal.getHasil());
System.out.println("\n\n\n\n\n\n\n");
a=true;break;

case 9:
try{
System.out.print("inputkan bilangan bulat =");
bil_a = reader.readLine();
cal.faktorial(bil_a);
}catch(IOException e){
System.out.print(e);
}
System.out.println("hasil faktorial adalah
"+cal.getHasil());
System.out.println("\n\n\n\n\n\n\n");
a=true;break;

case 10:
try{
System.out.print("inputkan bilangan bulat =");
bil_a = reader.readLine();
cal.sin(bil_a);
}catch(IOException e){
System.out.print(e);
}
System.out.println("hasil sin adalah "+cal.getHasil());
System.out.println("\n\n\n\n\n\n\n");
a=true;break;

case 11:
try{
System.out.print("inputkan bilangan bulat =");
bil_a = reader.readLine();
cal.cos(bil_a);
}catch(IOException e){
System.out.print(e);
}
System.out.println("hasil cos adalah "+cal.getHasil());
System.out.println("\n\n\n\n\n\n\n");
a=true;break;

case 12:

try{
System.out.print("inputkan bilangan bulat =");
bil_a = reader.readLine();
cal.tan(bil_a);
}catch(IOException e){
System.out.print(e);
}
System.out.println("hasil tan adalah "+cal.getHasil());
System.out.println("\n\n\n\n\n\n\n");
a=true;break;

case 13:
try{
System.out.print("inputkan alas =");
bil_a = reader.readLine();
System.out.print("inputkan tinggi =");
bil_b = reader.readLine();
cal.segitiga(bil_a, bil_b);
}catch(IOException e){
System.out.print(e);
}
System.out.println("hasil luas segitiga adalah
"+cal.getHasil());
System.out.println("\n\n\n\n\n\n\n");
a=true;break;

case 14:
try{
System.out.print("inputkan panjang sisi =");
bil_a = reader.readLine();
cal.persegi(bil_a);
}catch(IOException e){
System.out.print(e);
}
System.out.println("hasil luas persegi adalah
"+cal.getHasil());
System.out.println("\n\n\n\n\n\n\n");
a=true;break;

case 15:
try{
System.out.print("inputkan panjang =");
bil_a = reader.readLine();
System.out.print("inputkan lebar =");
bil_b = reader.readLine();
cal.persegiPanjang(bil_a, bil_b);
}catch(IOException e){
System.out.print(e);
}
System.out.println("hasil luas persegi panjang adalah
"+cal.getHasil());
System.out.println("\n\n\n\n\n\n\n");
a=true;break;

case 16:
try{
System.out.print("inputkan jari-jari =");
bil_a = reader.readLine();
cal.lingkaran(bil_a);
}catch(IOException e){
System.out.print(e);
}
System.out.println("hasil luas lingkaran adalah
"+cal.getHasil());
System.out.println("\n\n\n\n\n\n\n");
a=true;break;

case 17:
try{
System.out.print("inputkan bilangan bulat
a=");
bil_a = reader.readLine();
System.out.print("inputkan bilangan bulat b=");
bil_b = reader.readLine();
System.out.print("inputkan bilangan bulat c=");
String bil_c = reader.readLine();
cal.persamaanKuadrat(bil_a, bil_b, bil_c);
}catch(IOException e){
System.out.print(e);
}
System.out.println("himpunan penyelesaian adalah x1 =
"+cal.getx1());
System.out.println(" x2 = "+cal.getx2());
System.out.println("\n\n\n\n\n\n\n");
a=true;break;
case 18:
System.out.print("exit....");
a=false;break;
}
}
System.out.println("terimakasih...");
}
}
11. Lalu jalankan program.

PEMBAHASAN
 public class Calculator {
private int nilai_a;

private int nilai_b;

private float hasil;

merupakan suatu atribut dari program calculator.Float digunakn untuk mendapatkan


hasil desimal

 public int getNilai_a(){


return this.nilai_a;

public int getNilai_b(){

return this.nilai_b;

public float getNilai_hasil(){

return this.hasil;

merupakan method accesor yang berfungsi untuk mengembalikan nilai,dari script di


atas dapat kita lihat bahwa method accesor digunakan untuk mengembalikan
nilai_a,nilai_b dan juga nilai_hasil.

 public void setNilai_a(String a){


this.nilai_a = Integer.parseInt(a);

public void setNilai_b(String b){

this.nilai_b = Integer.parseInt(b);

public void setNilai_hasil(String hasil){


this.hasil = Float.parseFloat(hasil);

merupakan method mutator yang berfungsi untuk mengubah suatu nilai,

this.nilai_a = Integer.parseInt(a);

berarti nilai parameter a yang bertype string diubah bertype integer dan dimasukkan
atau disimpan dalam variable nilai_a.
Hasil dari perhitungan matematika diubah bertype float lalu disimpan dalam variable
hasil.

 public void tambah(){


this.hasil = (float)getNilai_a() + (float)getNilai_b();
}
public void kurang(){
this.hasil = (float)getNilai_a() - (float)getNilai_b();
}
public void kali(){
this.hasil = (float)getNilai_a() * (float)getNilai_b();
}
public void bagi(){
this.hasil = (float)getNilai_a() / (float)getNilai_b();}

Dalam method di atas getNilai_a dan getNilai_b diubah bertype float agar hasil
pembagian dapat benar – benar tepat. Karena hasil pembagian tidak selalu bilangan
bulat, bisa juga bilangan desimal.
 public void penambahan(){
int tem_hasil = getNilai_a()+ getNilai_b();
this.hasil = Float.parseFloat(Integer.toString(tem_hasil));
}
Script d atas merupakan deklarasi dari method mutator penambahan,getNilai_a
merupakan nilai pertama yang akan di tambahkan dengan getNilai_b.

 public void pengurangan(){


int tem_hasil = getNilai_a()- getNilai_b();
this.hasil = Float.parseFloat(Integer.toString(tem_hasil));
}
Script d atas merupakan deklarasi dari method mutator pengurangan,getNilai_a
merupakan nilai pertama yang akan di kurangi dengan getNilai_b.

 public void perkalian(){


int tem_hasil = getNilai_a()* getNilai_b();
this.hasil = Float.parseFloat(Integer.toString(tem_hasil));
}
Script d atas merupakan deklarasi dari method mutator perkalian,getNilai_a merupakan
nilai pertama yang akan di kalikan dengan getNilai_b.

 public void pembagian(){


this.hasil = (float) getNilai_a() / (float) getNilai_b();
}
Script d atas merupakan deklarasi dari method mutator pembagian,getNilai_a
merupakan nilai pertama yang akan di bagi dengan getNilai_b.

 public void akarKuadrat(){


double tem_hasil = Math.sqrt(getNilai_a());
this.hasil = Float.parseFloat(Double.toString(tem_hasil));
}
Math.sqrt(getNilai_a()) digunakan untuk menghitung akar kuadrat dari input yang
diberikan.

 public void Kuadrat(){


double tem_hasil = Math.pow(getNilai_a(),2);
this.hasil = Float.parseFloat(Double.toString(tem_hasil));
}
Math.pow(getNilai_a(),2) digunakan untuk menghitung kuadrat getNilai_a() adalah input
yang akan dikuadratkan dan 2 berarti dipangkatkan 2 (kuadrat 2). Berarti kuadrat
dalam program ini adalah nilai a pangkat 2.

 public void Pangkat(){


double tem_hasil = Math.pow(getNilai_a(),getNilai_b());
this.hasil = Float.parseFloat(Double.toString(tem_hasil));
}
Math.pow(getNilai_a(),2) digunakan untuk menghitung pangkat. getNilai_a() adalah
input yang akan dipangkatkan dan getNilai_b() berarti dipangkatkan nilai b. Jadi hasil
merupakan nilai a pangkat nilai b.

 public void sin(){


double tem_hasil = Math.sin(Math.toRadians(getNilai_a()));
this.hasil = Float.parseFloat(Double.toString(tem_hasil));
}

 public void cos(){


double tem_hasil = Math.cos(Math.toRadians(getNilai_a()));
this.hasil = Float.parseFloat(Double.toString(tem_hasil));
}

 public void tan(){


double tem_hasil = Math.tan(Math.toRadians(getNilai_a()));
this.hasil = Float.parseFloat(Double.toString(tem_hasil));
}

 Untuk menghitung sin, cos, tangen nilai input harus diubah ke radians lebih
dahulu agar hasil lebih tepat.
 public void faktorial(){
int i;
this.hasil=1;
System.out.println("n \t\t\t n!");
for (i=1; i<=(long)getNilai_a(); i++){
this.hasil=this.hasil*i;
System.out.println(i+" \t\t\t "+this.hasil);
}
}
Untuk perhitungan faktorial kita menggunakan perulangan,perulangan di lakukan
sampai memenuhi getNilai_a().
 public void segitiga(String a, String b){
float tempA = Float.parseFloat(a);
float tempB = Float.parseFloat(b);
this.hasil = tempA * tempB / 2;
}
tempA digunakan untuk menyimpan hasil dari konversi a dari string ke float
tempB digunakan untuk menyimpan hasil dari konversi b dari string ke float
hasil merupakan rumus dari luas segitiga

 public void persegi(String a){


float tempA = Float.parseFloat(a);
this.hasil = tempA * tempA;
}

 public void persegiPanjang(String a, String b){


float tempA = Float.parseFloat(a);
float tempB = Float.parseFloat(b);
this.hasil = tempA * tempB;
}
tempA digunakan untuk menyimpan hasil dari konversi a dari string ke float
tempB digunakan untuk menyimpan hasil dari konversi b dari string ke float
hasil merupakan rumus dari luas persegi panjang

 public void lingkaran(String a){


float tempA = Float.parseFloat(a);
this.hasil = tempA * tempA * 22 / 7;
}

 public void persamaanKuadrat(String a, String b, String c){


double tempA = Double.parseDouble(a);
double tempB = Double.parseDouble(b);
double tempC = Double.parseDouble(c);
if(tempB*tempB - (4*tempA*tempC) < 0)
{
System.out.println("akar Imajiner");
}
else
{
x1 = (-tempB + Math.sqrt(tempB*tempB -
4*tempA*tempC))/(2*tempA);
x2 = (-tempB - Math.sqrt(tempB*tempB -
4*tempA*tempC))/(2*tempA);

}
}
 Calculator calculator = new Calculator();
Digunakan untuk mendefinisikan class dengan nama yang baru,pemanggilan yang nanti
akan dilakukan menggunakn nma yang class yang baru.
 Dalam program ini menggunakn perulangan while
Perulangan menggunakan while dengan kondisi a=true. Jika nilai yang
diinputkan user bernilai “true” maka perulangan akan terus terjadi, tetapi jika
bernilai “false” maka perulangan akan berhenti. Dibawahnya terdapat statement
untuk memilih fasilitas kalkulator, apakah user menginginkan kalkulator
penjumlahan, pengurangan, perkalian, ataukah pembagian. Kemudian masuk ke
pemilihan switch case yang digunakan untuk melakukan sejumlah tindakan
berbeda terhadap sejumlah kemungkinan nilai yang memudahkan pembacaan
alur program bercabang yang sangat banyak. Terdapat pernyataan break yang
digunakan untuk mengakhiri eksekusi switch.
 Jika kita menginputkan menu no.1 maka yang dieksekusi antara lain:
Penginputan nilai pertama(a), penginputan nilai kedua(b).

Nilai a yang bertype data string diubah melalui methods mutator setNilai_a
menjadi this.nilai_a yang bertype integer (berlaku juga untuk nilai b).
Nilai_a dan nilai_b ditampung untuk nantinya dikembalikan oleh methods
accesor getNilai_a dan getNilai_b.
Terdapat statement “calculator.penambahan”, maka nilai_a dan nilai_b diolah
sesuai dengan perhitungan penjumlahan di method penambahan.
Hasil perhitungan ditampilkan dengan adanya statement “System.out.println
("hasil penjumlahan adalah "+calculator.getNilai_hasil()); ”

HASIL OUTPUT


 Dari output di atas, perulangan terjadi setelah hasil dari perhitungan muncul maka
menu juga akan langsung ditampilkan kembali. Tetapi jika menginputkan 18 maka
program akan keluar dan menu tidak muncul lagi (tidak terjadi perulangan).

KESIMPULAN
 Import java.io.BufferedReader, import java.io.IOException, import
java.io.InputStreamReader adalah package – package yang digunakan untuk
mendapatkan input. Package – package tersebut mempunyai fungsi yang saling
berhubungan.
 Di dalam class simpleCalculator, class Calculator didefinisikan dengan nama baru yaitu
calculator dan untuk pemanggilannya menggunakan nama baru tersebut yaitu
calculator.
 Method main digunakan untuk memanggil method-method yang lain.
 Method accessor digunakan untuk mengembalikan nilai
 Method mutator digunakan untuk mengubah nilai
 Access control yang digunakan antara lain:
- public : class satu dengan yang lain atau method dalam suatu class dengan
method yang lain dapat diakses secara bebas.
- Private : method atau variable instance hanya dapat diakses dalam satu class.
 Untuk menghitung sin, cos, dan tangen maka nilai inputan harus diubah ke radians lebih
dulu agar hasilnya tepat
 extends class adalah class yang mewarisi sifat dari sifat-sifat yang dimiliki oleh
superclass.
 Konsep inheritance ini mengadopsi dunia riil dimana suatu entitas/obyek dapat
mempunyai entitas/obyek turunan
 Dengan memanfaatkan konsep pewarisan ini dalam pemrograman, maka hanya
perlu mendefinisikan karakteristik yang lebih umum akan didapatkan dari class
darimana ia diturunkan.

DAFTAR PUSTAKA

http://rully6092.wordpress.com/konsep-bahasa-pemrogaraman-java/
Alim,Sahirul.OOP Dasar dengan Java.2012
http://yaniarprayogo.wordpress.com/2010/09/27/contoh-extends-class-di-java/
http://mungjava.blogspot.com/2009/05/memahami-konsep-inheritance-pewarisan.html

Anda mungkin juga menyukai