Tuesday, December 13, 2011

Contoh Program Java: OOP (2)

/*
Program OOP berikut ini merupakan pengembangan dari program sebelumnya. Perbedaannya, di dalam program yang ini terdapat tiga buah class. Class yang baru adalah class KRS. Class tersebut berisi data mahasiswa dan mata kuliah yang diambil dalam KRS. Di dalam program utama dibuatkan array object KRS sehingga bisa menampung banyak record yang sama. Selamat belajar dan selamat mencoba :)
*/

package mhs_kuliah;
/**
 *
 * @author bluejundi
 */

class mhs {
    private int npm;
    private String nama;
    public mhs(){
        npm=0; nama="";
    }
    public mhs(int n, String nm){
        npm = n; nama = nm;
        System.out.println("Constructor Mahasiswa: "+npm+" "+nama);
    }
    public String cetak(){
        return npm+" "+nama;
    }
}
class matakuliah {
    private String kode;
    private String nama_mk;
    public static int jumlahmk;
    public matakuliah(){
        kode=""; nama_mk="";
    }
    public matakuliah(String k, String nm){
        kode = k; nama_mk = nm;
        System.out.println("Constructor Mata Kuliah: "+kode+" "+nama_mk);
        jumlahmk++;
    }
    public String cetak(){
        return nama_mk;
    }
    public String getcode(){
        return kode;
    }
}
class krs {
    private mhs peserta;
    private matakuliah mk;
    public static int jumlahkrs;
    public krs(mhs m, matakuliah k){
        peserta = new mhs();
        peserta = m;
        mk = new matakuliah();
        mk = k;
        jumlahkrs++;
    }
    public String getkode(){
        return mk.getcode();
    }
    public String cetak(){
        return peserta.cetak();
    }
}
public class Main2 {

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        // TODO code application logic here
        mhs si1 = new mhs(123,"budi");
        mhs si2 = new mhs(456,"amin");
        mhs si3 = new mhs(789,"dedi");
        matakuliah mk[] = new matakuliah[2];
        mk[0] = new matakuliah("1","BP");
        mk[1] = new matakuliah("2","PTI");
        krs krsku [] = new krs[5];
        System.out.println("\nProgram Mahasiswa Kuliah");
        krsku[0] = new krs(si1, mk[0]); //mhs si mengambil matkul mk
        krsku[1] = new krs(si1, mk[1]);
        krsku[2] = new krs(si2, mk[0]);
        krsku[3] = new krs(si3, mk[0]);
        krsku[4] = new krs(si3, mk[1]);
        //menampilkan berdasarkan kode mata kuliahnya
        System.out.println("Jumlah KRS: "+krs.jumlahkrs+" record");
        System.out.println("Jumlah mata kuliah: "+mk[1].jumlahmk+"\n");
       
        for(int i=0; i<mk[1].jumlahmk; i++)
        {   System.out.println("Nama MK: "+mk[i].cetak());
            for(int j=0; j<krsku[4].jumlahkrs; j++){
                if((krsku[j].getkode().compareTo(Integer.toString(i+1)))==0)
                    System.out.println(krsku[j].cetak());
            }
            System.out.println();
        }
    }
}

No comments:

Post a Comment