Senin, 04 April 2016

PEMOGRAMAN BERORIENTASI DASAR OBJEK



PEMOGRAMAN BERORIENTASI DASAR 

OBJEK

NAMA : triana mantika 

NIM : 30814234

KELAS : 4.2 AP

DOSEN : PRITA PALUPININGSIH

UNIVERSITAS : STMIK INDONESIA

JURUSAN : SISTEM INFORMASI (E-COM)


LANGKAH" NYA UNTUK MENJAWAB NO 1 INI
PERTAMA BUKA APLIKASI NETBEANS LALU PILIH FILE-> NEW PROJECT PILIH JAVA -> JAVA APPLICATION

COVER AWAL 




BUATLAH CLASS DENGAN MEMBERI NAMA "triana" JIKA INGIN MEMAKAI NAMA SENDIRI PUN TAK APA HEHE
LALU MULAI MENGODING BERIKUT KODINGGANNYA.

1. APA OUTPUT DARI KODE PROGRAM TERSEBUT JIKA KODINGAN SEPERTI DI BAWAH INI ?

KODINGAN:

PACKAGE triana;

PUBLIC CLASS MENANGKAPEXCEPTION { 
   
    PUBLIC STATIC VOID MAIN(STRING[] ARGS) {
        SYSTEM.OUT.PRINTLN(3/0);
        SYSTEM.OUT.PRINTLN("CETAK.");
    }
    
}

OUT PUT:
KESIMPULAN OUT PUT 

JIKA KODTERSEBUT DIJALANKAN, AKAN DIDAPATKAN PESANKESALAHAN SEBAGAI BERIKUT :

EXCEPTION IN THREAD "MAIN" JAVA.LANG.ARITHMETICEXCEPTION: / BY ZERO AT DIVBYZERO.MAIN(DIVBYZERO.JAVA:3)


PESAN TERSEBUT MENGINFORMASIKAN TIPE EXCEPTIOYANG TERJADIPADA BARIDIMANEXCEPTION ITU BERASAL. INILAH AKSI DEFAULT YANGTERJADI BILA TERJADI EXCEPTION YANG TIDATERTANGANI. JIKA TIDAKTERDAPAT KODE YANG MENANGANI EXCEPTION YANG TERJADI, AKSIDEFAULT AKAN BEKERJOTOMATIS.

2. APA OUTPUT DARI KODE PROGRAM TERSEBUT, JIKA DIBERIKAN ARGUMENT  JIKA KODINGAN SEPERTI DI BAWAH INI :
·         TIDAK ADA ARGUMENT 
·         1
·         0

    KODINGAN:


1   PACKAGE triana;

  PUBLIC CLASS MULTIPLECATCH {
     PUBLIC STATIC VOID MAIN(STRING[] ARGS) {
        TRY {
        SYSTEM.OUT.PRINTLN(3/0);
        SYSTEM.OUT.PRINTLN("CETAK.");
    } CATCH (ARITHMETICEXCEPTION E) {
    //REAKSI ATAS KEJADIAN
    SYSTEM.OUT.PRINTLN(E);}
    SYSTEM.OUT.PRINTLN("SETALAH EXCEPTION.");
}
}

HASIL OUT PUT:

KESIMPULAN HASIL OUT PUT 

KESALAHAN PEMBAGIAN DENGAN BILANGAN ADALAH SALAH SATU CONTOH DARIARITHMETHICEXCEPTIONTIPEXCEPTION KEMUDIAN MENGINDIKASIKAN KLAUSACATCH PADA CLASS INI. PEROGRAM TERSEBUT MENANGANI KESALAHAN YANG TERJADI DENGAN MENAMPILKAN DEKSRIPSI DARI PERMASALAHAN. 
 OUTPUT PROGRAM SAAT EKSEKUSI AKAN TERLIHAT SEBAGAI BERIKUT :

JAVA.LANG.ARITHMETICEXCEPTION: / BY ZERO
AFTER EXCEPTION.
 BAGIAN KODE YANG TERDAPAT PADA BLOK TRY DAPAT MENYEBABKAN LEBIH DARISATTIPEXCEPTION. DALAHAL INI, TERJADINYA BERMACAM TIPE KESALAHANDAPAT DITANGANMENGGUNAKAN BEBERAPBLOCATCH. PERLDICATAT BAHWABLOTRDAPAT HANYA MENYEBABKAN SEBUAH EXCEPTIOPADA SATU WAKTU,NAMUN DAPAT PULA MENAMPIKAN TIPEXCEPTION YANG BERBEDDI LAIN WAKTU.


3. APA OUTPUT DARI KODE PROGRAM TERSEBUT, JIKA DIBERIKAN ARGUMENT  JIKA KODINGAN SEPERTI DI BAWAH INI:
·         TIDAK ADA ARGUMENT
·         12
·         12   4
·         12   0
     
    KODINGAN:

PACKAGE triana;


PUBLIC CLASS NESTEDTRY {
  /**
     * @PARAM ARGS THE COMMAND LINE ARGUMENTS
     */
    PUBLIC STATIC VOID MAIN(STRING[] ARGS) {
     TRY {
         INT A = INTEGER.PARSEINT (ARGS[0]);
     TRY{
         INT B = INTEGER.PARSEINT (ARGS[1]);
         SYSTEM.OUT.PRINTLN(A/B);
     } CATCH (ARITHMETICEXCEPTION E){
         SYSTEM.OUT.PRINTLN("DIVIDE BY ZERO ERROR!");
     }
    } CATCH (ARRAYINDEXOUTOFBOUNDSEXCEPTION E2) {
         SYSTEM.OUT.PRINTLN("2 PARAMETER ARE REQUIRED.");
     }
    } 
}

HASIL OUT PUT :



PADA CLASS NESTEDTRY UNTUK MENAMPILKAN HASIL "14 DI BAGI 4" DENGAN CARA KLIK GAMBAR CANGKIR PADA TOOLBAR LALU KLIK KANAN DAN PPROPERTIS . LALU PILIH RUN DAN PADA ARGUMENT TULISKAN 12 4 LALU PILIH OKE. LALU RUN FILE DENGAN CARA KLIK CALSS  NESTEDTRY  JIKA SUDAH MAKA AKAN MUNCULLAH "3." YANG DI MINTA PADA PROGRAM TERSEBUT.


4. APA OUTPUT DARI KODE PROGRAM TERSEBUT, JIKA DIBERIKAN ARGUMENT  JIKA KODINGAN SEPERTI DI BAWAH INI:
·         TIDAK ADA ARGUMENT
·         12
·         12   4
·         12   0
 KODINGAN:

PACKAGE triana;

PUBLIC CLASS NESTEDTRYDENGANMETHOD {
    /**
     * @PARAM ARGS THE COMMAND LINE ARGUMENTS
     */
    PUBLIC STATIC VOID NESTEDTRY(STRING[] ARGS) {
     TRY {
         INT A = INTEGER.PARSEINT (ARGS[0]);
         INT B = INTEGER.PARSEINT (ARGS[1]);
         SYSTEM.OUT.PRINTLN(A/B);
     } CATCH (ARITHMETICEXCEPTION E){
         SYSTEM.OUT.PRINTLN("DIVIDE BY ZERO ERROR!");
     }
    }
     
    PUBLIC STATIC VOID MAIN(STRING[] ARGS) {
    TRY {
    NESTEDTRY(ARGS);
    } CATCH (ARRAYINDEXOUTOFBOUNDSEXCEPTION E2) {
         SYSTEM.OUT.PRINTLN("2 PARAMETER ARE REQUIRED.");
     }
    }    
}

HASIL OUT PUT : 


KESIMPULAN HASIL OUT PUT 



PADA CLASS NESTEDTRYDENGANMETHOD UNTUK MENAMPILKAN HASIL "12 DI BAGI 4"  DENGAN CARA KLIK GAMBAR CANGKIR PADA TOOLBAR LALU KLIK KANAN DAN PILIH PROPERTIS . LALU PILIH RUN DAN PADA ARGUMENT TULISKAN 12 4 LALU PILIH OKE. LALU RUN FILE DENGAN CARA KLIK CALSS  NESTEDTRY  JIKA SUDAH MAKA AKAN MUNCULLAH "3" YANG DI MINTA PADA PROGRAM TERSEBUT.

5.APA OUTPUT DARI KODE PROGRAM TERSEBUT  JIKA KODINGAN SEPERTI DI BAWAH INI?

KODINGAN:

 PACKAGE triana;

/**
 *
 * @AUTHOR triana
 */
PUBLIC CLASS KEYWORDFINALLY {
    PUBLIC STATIC VOID MYMETHOD(INT N) THROWS EXCEPTION{
   TRY{
    SWITCH(N){
        CASE 1: SYSTEM.OUT.PRINTLN("CASE PERTAMA");
        RETURN;
        CASE 3: SYSTEM.OUT.PRINTLN("CASE KETIGA"); 
        THROW NEW RUNTIMEEXCEPTION("DEMO CASE KETIGA");
        CASE 4: SYSTEM.OUT.PRINTLN("CASE KEEMPAT");
        THROW NEW EXCEPTION("DEMO CASE KEEMPAT"); 
        CASE 2: SYSTEM.OUT.PRINTLN("CASE KEDUA");
    }
    } CATCH (RUNTIMEEXCEPTION E){
        SYSTEM.OUT.PRINTLN("RUNTIMEEXCEPTION TERJADI:");
        SYSTEM.OUT.PRINTLN(E.GETMESSAGE());
    } FINALLY {
        SYSTEM.OUT.PRINTLN("TRY-BLOCK ENTERED.");
    }}
PUBLIC STATIC VOID MAIN (STRING ARGS[]){
    FOR (INT I=1; I<=4; I++){
        TRY {
            KEYWORDFINALLY.MYMETHOD(I);
        } CATCH (EXCEPTION E){
            SYSTEM.OUT.PRINTLN("EXCEPTION TERJADI:");
            SYSTEM.OUT.PRINTLN(E.GETMESSAGE());
    }
        SYSTEM.OUT.PRINTLN();
}
}
}

HASIL OUT PUT : 


KESIMPULAN HASIL OUT PUT 

BLOFINALLY MENGANDUNG KODPENANGANAN SETELAH PENGGUNAANTRY DAN CATCHBLOK KODE INSELALTEREKSEKUSI WALAUPUN SEBUAHEXCEPTION TERJADI ATAU TIDAK PADA BLOTRY. BLOK KODTERSEBUTJUGA AKAN MENGHASILKAN NILAI TRUMESKIPURETURN, CONTINUEATAUPUN BREAK TEREKSEKUSI. TERDAPAT 4 KEMUNGKINAN SKENARIO YANG BERBEDDALAM BLOK TRY-CATCH-FINALLY. PERTAMA, PEMAKSAANKELUAR PROGRATERJADI BILA CONTROPROGRAM DIPAKSA UNTUKMELEWATI BLOK TRY MENGGUNAKAN RETURN, CONTINUATAUPUBREAK.KEDUA, SEBUAH PENYELESAIAN NORMAL TERJADI JIKA TRY-CATCH-FINALLYTEREKSEKUSI SECARA NORMAL TANPA TERJADI ERROR APAPUN. KETIGA,KODE PROGRAM MEMILIKI SPESIFIKASTERSENDIRI DALAM BLOCATCHTERHADAP EXCEPTION YANTERJADI. YANG TERAKHIR, KEBALIKAN SKENARIKETIGA. DALAM HAL INI, EXCEPTION YANG TERJADI TIDAKTERDEFINISIKAN PADA BLOCATCH MANAPUN. CONTOH DARI SKENARIOTERLIHAT PADA KODE " SWITCH(N) " . KRNA ATURAN : CATCH LEBIDARISATU HARUS BERURUTAN DARSUBCLASS KE SUPERCLASS.


6.APA OUTPUT DARI KODE PROGRAM TERSEBUT  JIKA KODINGAN SEPERTI DI BAWAH INI?

KODINGAN:

PACKAGE triana;

PUBLIC CLASS MULTIPLECATCHEXCEPTIONERROR {
      /**
     * @PARAM ARGS THE COMMAND LINE ARGUMENTS
     */
    PUBLIC STATIC VOID MAIN (STRING ARGS[]) {     
    TRY {
        INT A = INTEGER.PARSEINT(ARGS[0]);
        INT B = INTEGER.PARSEINT(ARGS[1]);
        SYSTEM.OUT.PRINTLN(A/B);
    } CATCH (EXCEPTION E){
        SYSTEM.OUT.PRINTLN(E);
    } CATCH (ARRAYINDEXOUTOFBOUNDSEXCEPTION E2){
        SYSTEM.OUT.PRINTLN(E2);
    }
    SYSTEM.OUT.PRINTLN("AFTER TRY-CATCH-CATCH.");
    }
}

HASIL OUT PUT : 


KESIMPULAN HASIL OUT PUT 

SETELAH MENGKOMPILASI KODE TERSEBUT AKAN MENGHASILKAN PESAN ERRORJIKA EXCEPTION CLASS ADALAH SUPERCLASS DARIARRAYINDEXOUTOFBOUNDSEXCEPTION CLASS.

MULTIPLECATCHERROR.JAVA:9: EXCEPTION JAVA.LANG.ARRAYINDEXOUTOFBOUNDSEXCEPTION HAS ALREADY BEEN CAUGHT } CATCH (ARRAYINDEXOUTOFBOUNDSEXCEPTION E2) {




7. APA OUTPUT DARI KODE PROGRAM TERSEBUT  JIKA KODINGAN SEPERTI DI BAWAH INI?

KODINGAN:

PACKAGE triana;


    CLASS HATESTRINGEXCEPTION EXTENDS RUNTIMEEXCEPTION{
    /*TIDAK PERLU MEMASUKAN MEMBER ATAUPUN CONSTRUKTOR*/
}
CLASS TESTHATESTRING {
PUBLIC STATIC VOID MAIN(STRING ARGS[]){
    STRING INPUT = "INVALID INPUT";
    TRY{
        IF (INPUT.EQUALS("INVALID INPUT")){
        THROW NEW HATESTRINGEXCEPTION();
    }
        SYSTEM.OUT.PRINTLN("STRING ACCEPTED.");
    } CATCH (HATESTRINGEXCEPTION E){
        SYSTEM.OUT.PRINTLN(" I HATE THIS STRING: " + INPUT +".");
    }
}
}

HASIL OUT PUT  : 



KESIMPULAN HASIL OUT PUT 

EXCEPTION CLASSES TERDAPAT PADPACKAGE VIANA NAMUN TIDAK MENCUKUPIUNTUK MENAMPUNG SELURUH KEMUNGKINAN TIPEXCEPTION YANG MUNGKINTERJADI. SEHINGGA SANGAT MUNGKIN BAHWA ANDA PERLU UNTUK MEMBUAT TIPEEXCEPTIOTERSENDIRI.
DALAM PEMBUATAN TIPE EXCEPTION ANDA SENDIRI, HANYA PERLU UNTUK MEMBUAT SEBUAH EXTENDECLASS TERHADAP RUNTIMEEXCEPTION CLASS, MAUPUNEXCEPTION CLASS LAIN.   SELANJUTNYA   TERGANTUNG   PADA   ANDA   DALAM  MEMODIFIKASI   CLASS   SESUAI PERMASALAHAN YANG AKAN DISELESAIKAN.MEMBERS DAN CONSTRUCTORS DAPAT DIMASUKKAN PADEXCEPTION CLASS SAJA KARNA YANG INGIN DI PANGGIL HANYA (" I HATE THIS STRING" AND "INVALID INPUT")`


TRIMAKASIH SEMOGA BERMANFAAT :)

   


}







Tidak ada komentar:

Posting Komentar