Kamis, 09 Juni 2011

TUGAS AKHIR

Buatlah program java untuk menurunkan 2 buah kelas turunan dari kelas induk yang berupa lingkaran dimana program ini dapat menghitung luas dan keliling lingkaran !
jawab:
langkah 1
package lingkaran;

/**
 *
 * @author kurro
 */
class Lingkaran
{
    protected int r= 100;
    void info(){
            System.out.println("Jari- jari :" + r);
    }
}
langkah 2
package lingkaran;

/**
 *
 * @author kurro
 */
class Luas extends Lingkaran
{
    private int r;
    public double hasil()
    {
        r=super.r;
        return 3.14*r*r;
    }
}
langkah 3
package lingkaran;

/**
 *
 * @author kurro
 */
class Keliling extends Lingkaran
{
    private int r;
    public double hasil()
    {
        r=super.r;
        return 3.14*2*r;
    }
}
langkah ke 4
package lingkaran;

/**
 *
 * @author kurro
 */
public class hasilLingkaran{
    public static void main ( String[]args )
    {
        Lingkaran lingkaran= new Lingkaran();
        Luas luas = new Luas();
        Keliling kll=new Keliling();
        lingkaran.info();
        System.out.println("Luas Lingkaran :"+ luas.hasil());
        System.out.println("Keliling Lingkaran :"+ kll.hasil());
    }
}
hasil:

tugas pendahulaun modul 3

Tugas Pendahuluan:
1.  Apa yang perbedaan antara Induk Kelas dengan Kelas Turunan?
2.  Jelaskan keyword super dan extends dalam Pewarisan?

jawaban:


1. Inheritance (Pewarisan)
Inheritance/pewarisan adalah pewarisan data dan method dari suatu kelas kepada kelas yang lain, dengan kata lain membuat class baru yang masih mempunyai spesifikasi (state & behaviour) yang sama dengan class yang sudah ada.
- Class yang baru disebut class turunan/subclass sementara,class yang sudah ada disebut dengan class induk/superclass.
- Subclass (class turunan) akan memiliki (mewarisi) semua cirri dan sifat dari superClass ( class Induk )
- Pada kelas turunan dapat ditambahkan state dan berhaviour yang baru, yang merupakan spesifik milik subclass itu sendiri.
- Keyword yang digunakan dalam pewarisan ini adalah extends.
2.
Keyword extends
Digunakan untuk mengaplikasikan konsep pewarisan.keyword ini menyatakan bahwa suatu kelas merupakan perluasan dari kelas lain yang di jadikan basis (kelas induknya).
Class NamaSubClass extends NamaSuperClass
{
//data dan method
}
Keyword super
Di gunakan oleh suatu kelas anak untuk memnggil konstruktor atau method yang di miliki oleh kelas induk yang menjadi basisnya.
Memanggil konstruktor kelas super
Bentuk umum :
Super()
Super(parameter)

kegiatan prktikum modul 3

langkah 1
/**
 * @(#)rumah.java
 *
 *
 * @author
 * @version 1.00 2011/6/7
 */
class Rumah
{
private String a = " Rumahmewah ";
public void info()
{
//System.out.println (" Dipanggil pada = "+this);
System.out.println (" ");
System.out.println (" Rumah = "+a);
}
}
langkah 2
/**

 * @(#)rumahindah.java
 *
 *
 * @author
 * @version 1.00 2011/6/7
 */

class rumahindah extends Rumah
{
private String b = " tombol alarm ";
public void info()
{
System.out.println (" ");
super.info();
System.out.println (" rumahindah = "+b);
}
}
langkah 3
/**
 * @(#)tiperumah.java
 *
 *
 * @author
 * @version 1.00 2011/6/7
 */

public class tiperumah {

public static void main ( String[]args ) {

        rumahindah C = new rumahindah();
        C.info();
    }
}

hasil :

Jumat, 03 Juni 2011

tugas akhir modul 2

Membuat kelas hewan
/*Disimpan dalam file hewan.java*/
/*Kode Program untuk kelas hewan*/
class hewan {
     private String tipe;
     public hewan(String tipe){
           this.tipe = tipe;
    }
    public String toString(){
           return "Ini adalah "+tipe;
    }
     public void bersuara(){
     }
}

Membuat kelas Anjing, Ayam dan Kucing yang merupakan kelas turunan dari kelas hewan
/*Disimpan dalam file Anjing.java*/
/*Kode Program untuk kelas Anjing*/
class Anjing extends hewan{
    private String nama;
    private String jenis;
    public Anjing(String nama, String jenis){
     super("Anjing");
    this.nama=nama;
     this.jenis=jenis;
    
    }
    public void bersuara(){
     System.out.println("Guk.. Guk.. Guk.. ");
    }
    public String toString(){
        return super.toString()+"\nIni adalah "+jenis+" bernama "+nama;
    }
}

/*Disimpan dalam file Ayam.java*/
/*Kode Program untuk kelas Ayam*/
class Ayam extends hewan{
    private String nama;
    private String jenis;
    public Ayam(String nama, String jenis){
     super("Ayam");
    this.nama=nama;
     this.jenis=jenis;
    }
    public void bersuara(){
     System.out.println("Kukuruyuk.. Petok.. Petok..");
    }
    public String toString(){
        return super.toString()+"\nIni adalah "+jenis+" bernama "+nama;
    }
}

/*Disimpan dalam file Kucing.java*/
/*Kode Program untuk kelas Kucing*/
class Kucing extends hewan{
    private String nama;
    private String jenis;
    
    public Kucing(String nama){
     super("Kucing");
     this.nama=nama;
    }
    public Kucing(String nama, String jenis){
     super("Kucing");
     this.nama=nama;
     this.jenis=jenis;   
    }
    public void bersuara(){
     System.out.println("Meong.. Meong.. Meong.. ");
    }
    public String toString(){
        return super.toString()+"\nIni adalah "+jenis+" bernama "+nama;
    }
}

Membuat kelas polimorfisme yang merupakan program utama dan sekaligus mengimplementasikan penggunaan metode polimorfisme

/*Disimpan dalam file polimorfisme.java*/
/*Kode Program untuk kelas polimorfisme*/
import java.util.Random;
class polimorfisme{
    public static void main(String args[]){
        hewan[] hewannya = {
            new Anjing("Broni", "Herder"),
            new Kucing("Kiti", "Persia"),
            new Ayam("Toki", "Buras")
        };
        hewan pilihHewan; 
        Random pilih = new Random();
        for (int i = 0; i<5 ; i++){
            pilihHewan = hewannya[pilih.nextInt(hewannya.length)];
            System.out.println("\nPilihan Anda:\n" + pilihHewan);
            pilihHewan.bersuara();
        }
    }
}

Hasil Running :

KEGIATAN PRAKTIKUM modul 2

kelas Student       
/*Disimpan dengan nama Student.java*/
/*Kode Program untuk kelas Student*/
class Student {
   public void Write(int ID, int Grad, String Fname, String Lname) {
       m_ID = ID;
       m_Graduation = Grad;
       m_First = Fname;
       m_Last = Lname;
    }  
    public void Display(){
        System.out.println( "Student: " + m_ID + " " + m_First + " " + m_Last + " Graduated: " + m_Graduation);
    }  
    private int m_ID, m_Graduation;  
    private String m_First;  
    private String m_Last;
}
 kelas StudentGrad yang merupakan kelas turunan dari kelas Student     
/*Disimpan dengan nama StudentGrad.java*/
/*Kode Program untuk kelas StudentGrad*/
class StudentGrad extends Student {
   public void Write(int ID, int Grad, String Fname, String Lname, int yrGrad, String unSch, String major) {
       super.Write(ID, Grad, Fname, Lname);
       m_UndergradSchool = unSch;
       m_Major = major;
       m_Grad = Grad;
       YearGraduated = yrGrad;
    }
    public void Display(){
        super.Display();
        System.out.println(" Graduated: " + m_Grad + " " + m_UndergradSchool + " " + m_Major + " " + YearGraduated);
    }  
    private Integer YearGraduated,m_Grad;
    private String m_UndergradSchool;
    private String m_Major;
}
kelas StudentInfo yang digunakan untuk memasukan agumen ke kedua metode pada masing-masing class Student dan StudentGrad   
/*Disimpan dengan nama StudentInfo.java*/
/*Kode Program untuk kelas StudentInfo*/
class StudentInfo {
     public static void main (String args[]) {
         StudentGrad myStudent = new StudentGrad();
         myStudent.Write(10, 1,"Bob","Smith", 2000,"Columbia University","CS");
         myStudent.Display();  
        }
}

Hasil Running:

IMPLEMENTASI modul 1

/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package mahasiswa;

/**
 *
 * @author kurro
 */
public class Main {

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        // TODO code application logic herepublic class mahasiswa{

mhs aku = new mhs();

aku.nama="eko";

aku.npm="090411100083";

aku.belajar="Program";

aku.olahraga="sepak bola";

aku.makan="bakso";

aku.minum="Es campur";

aku.tampilkanNama();

aku.tampilkanNPM();

aku.tampilbelajar();

aku.tampilolahraga();

aku.tampilmakan();

aku.tampilminum();

mhs kamu = new mhs();

kamu.nama="kurro";

kamu.npm="090411100888";

kamu.belajar="makan";

kamu.olahraga="voli";

kamu.makan="mie ayam";

kamu.minum="Es degan";

kamu.tampilkanNama();

kamu.tampilkanNPM();

kamu.tampilbelajar();

kamu.tampilolahraga();

kamu.tampilmakan();

kamu.tampilminum();

mhs dia = new mhs();

dia.nama="fahmi";

dia.npm="090411100093";

dia.belajar="internet";

dia.olahraga="basket";

dia.makan="ayam Goreng";

dia.minum="soda";

dia.tampilkanNama();

dia.tampilkanNPM();

dia.tampilbelajar();

dia.tampilolahraga();

dia.tampilmakan();

dia.tampilminum();

}

}

class mhs{

String nama, npm, belajar, olahraga, makan, minum;

void tampilkanNama(){

System.out.println("Nama : "+nama);

}

void tampilkanNPM(){

System.out.println("NPM : "+npm);

}

void tampilbelajar(){

System.out.println("Belajar : "+belajar);

}

void tampilolahraga(){

System.out.println("Olahraga : "+olahraga);

}

void tampilmakan(){

System.out.println("Makan : "+makan);

}

void tampilminum(){

System.out.println("Minum : "+minum);

System.out.println();


    }

}

tugas pendahulaun modul 2

1.Keuntungan apa yang bisa didapat dengan Polymorphism?
jawab:
Kita bisa membuat kode program tanpa harus mengetahui persis apa yang akan dilakukan program saat kita menulis program tersebut
2.Bagaimana hubungan antar teknik overloading dengan Polymorphism?
jawab:

1. Keuntungan dari Polymorphisme adalah mampu untuk menangani beberapa deskripsi tugas yang berbeda dengan nama yang sama.
Konsep polimorfisme merupakan salah satu dari tiga konsep dasar OOP. Dengan hanya memakai satu nama untuk deskripsi tugas yang berbeda, tentunya akan memperingan beban programmer dalam membuat program.
menyediakan multiobject dari subclasses yang berbeda untuk diperlakukan sebagai object dari superclass tunggal, secara otomatis menunjuk method yang tepat untuk menggunakannya ke particular object berdasar subclass yang termasuk di dalamnya.

2.Metode overloading adalah mendefinisikan metode yang memiliki nama yang sama, tetapi dengan signature yang berbeda dalam definisi class yang sama. Sedangkan polimorfisme merupakan kemampuan dari suatu variabel referensi objek untuk memiliki aksi berbeda bila metode yang sama dipanggil, dimana aksi metode tergantung dari tipe objeknya dan signature metode harus sama baik pada superclass maupun subclass.