. .

BAGIAN KE TUJUH: Java Classes - More Java Class Methods Pada Netbeans IDE

Posted by CHRISTIANTO D,WIBOWO | D3MI-2016 STMIK BUMI GORA On Jumat, Desember 23, 2016 No comments

BAGIAN KE TUJUH: Java Classes - More Java Class Methods Pada Netbeans IDE, Sebelum kita meneruskan mempelajari pembelajaran ini, ada baiknya kita baca artikel-artikel sebelumnya yang terhubung dengan langkah-langkah pembelajaran ini (Link) BAHASA PEMROGRAMAN JAVA PADA NETBEANS IDE.

Sebelum kita lanjutkan lebih jauh lagi, saya merasa ada baiknya kita mengingat kembali kebelakang tentang apa saja yang membentuk sebuah Java Program ; Java Program Structure ; kita gunakan contoh Java program "helloworld" untuk memahami struktur dan fitur class. program ini ditulis hanya beberapa baris, dan tugasnya hanya untuk mencetak "Hello World From Christ!".
1.              package helloworld;
Ini adalah pernyataan deklarasi paket. Pernyataan paket mendefinisikan namespace di mana class disimpan. Paket ini digunakan untuk mengatur class berdasarkan fungsi. Jika kita menghilangkan pernyataan paket, nama-nama class yang dimasukkan ke dalam paket default, yang tidak memiliki nama. Pernyataan paket tidak bisa muncul di mana saja dalam program ini. Ini harus menjadi baris pertama dari program.
2.             public class HelloWorld   
Baris ini memiliki berbagai aspek pemrograman java:
  •  public: adalah akses pengubah kata kunci yang memberitahu akses compiler ke class. Berbagai nilai pengubah akses bisa publik, dilindungi, pribadi atau default (tidak ada nilai).
  •  class: Kata kunci ini digunakan untuk menyatakan class. Nama class (HelloWorld) diikuti oleh kata kunci ini.

3.             Comments section:
Kita dapat menulis komentar di Java dalam dua cara.
  • Baris komentar: Dimulai dengan dua garis miring ke depan (//) dan diikuti teks sampai akhir baris. Baris komentar tidak memerlukan simbol berakhir.
  • Blok komentar: Dimulai dengan garis miring dan tanda bintang (/*) dan diakhiri dengan tanda bintang dan garis miring (*/). Blok komentar juga bisa diperpanjang di banyak baris yang diperlukan.

4,             public static void main(String[] args
Metode (Function) bernama public dengan array string sebagai argumen.
  •  public: adalah akses untuk memodifikasi - Access Modifier
  •  static: adalah kata kunci reserved yang berarti bahwa metode dapat diakses dan digunakan meskipun ada objek dan class.
  •  void: Kata kunci ini menyatakan/deklar bahwa tidak ada nilai kembali dari metode. Sedangkan metode ini dapat mengembalikan nilai setiap data primitif atau objek.
  • Metode konten metode dalam kurung kurawal. {}

5.             System.out.println("Hello World From Christ!");  

  •  System: Ini adalah nama dari class utilitas Java.
  • .out: Ini adalah obyek yang termasuk class Sistem.
  •  println() : Ini adalah utilitas nama metode yang digunakan untuk mengirim String apapun untuk konsol.
  • "Hello World From Christ!": Ini adalah String set literal sebagai argumen untuk metode println.

Java adalah bahasa berorientasi objek, yang berarti bahwa ia memiliki konstruksi untuk mewakili objek dari dunia nyata. Setiap program Java memiliki setidaknya satu class yang tahu bagaimana melakukan hal-hal tertentu atau bagaimana untuk mewakili beberapa jenis objek. Misalnya, yang paling sederhana class, HelloWorld, yang tahu bagaimana untuk menyambut dunia. Class di Java mungkin memiliki metode (atau fungsi) dan bidang/field (atau atribut atau properti).

Kita kembali ke Java Program nya, masih dengan packages exams dan class ExamDetails dan class StudentResults yang sudah kita buat sebelumnya. Jadi kita sekarang memiliki student name dan exam name. Keduanya disimpan dalam nama field di class StudentResults. Kita sekarang dapat menambahkan Exam_Score.
Kita tambahkan metode baru berikut untuk class StudentResults, setelah metode examName:
/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package exams;
/**
 * @author CHRISTIANTO "GEMBLONG" DHARMA WIBOWO LEARN JAVA
 */
public class StudentResults {
    private String Full_Name;
    private String Exam_Name;
    private String Exam_Score;
    private String Exam_Grade;
    
    StudentResults(){
        Full_Name ="No Name Given";
        Exam_Name ="Unknown";
        Exam_Score ="No Score";
        Exam_Grade ="Unknown";
    }
    
    String fullName(String aName){
        Full_Name = aName;
        return Full_Name;
        
    }
    String examName(String examCode){
        if (examCode.equals("VB")){
            Exam_Name = "Visual Basic .NET";
        }
        else if (examCode.equals("JV")){
            Exam_Name = "Java";
        }
        else if (examCode.equals("C#")){
            Exam_Name = "C# .NET";
        }
        else if (examCode.equals("PH")){
            Exam_Name = "PHP";
        }
        else{
            Exam_Name ="No Exam Selected";
        }
        return Exam_Name;
        
        String examScore(int aScore){
            Exam_Score = aScore + "out of 50";
            return Exam_Score;
        }
    }
}
Metode baru ini memiliki nama examScore, dengan variabel int disebut aScore antara kurung bulat - (int aScore). Itu diatur untuk mengembalikan nilai String. Metode ini sendiri hanya menggabungkan skor dengan string "out of 50". Jadi jika nilai di aScore adalah 30, maka teks "30 out of 50" akan disimpan dalam field Exam_Score return Exam_Score;.
Di class ExamDetails, tambahkan baris kode berikut:
String score = aStudent.examScore(30);
/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package exams;
/**
 * @author CHRISTIANTO "GEMBLONG" DHARMA WIBOWO LEARN JAVA
 */
public class ExamDetails {
    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        StudentResults aStudent = new StudentResults();
        
        String sName = aStudent.fullName("Bill Gates");
        String exam = aStudent.examName("VB");
        String score = aStudent.examScore(30);
        
        System.out.println( sName );
        System.out.println( exam );
        System.out.println( score );
    }
    
}
Jadi kita sebut metode examScore baru dan menyerahkannya nilai 30 - examScore(30). Nilai di field Exam_Score akan didikembalikan, dan kemudian disimpan dalam sebuah variabel string yang kita sebut String score. Ketika program dijalankan, jendela Output sekarang terlihat seperti ini:
Jadi kita memiliki nama student name, the exam name, dan score out of 50. Sekarang kita dapat menambahkan class untuk output.

Kita akan menggunakan satu huruf untuk grade: A, B, C, D, atau E.
Jika student ;
  • Jika skor >= 41 grade A; 
  • Jika skor antara 31 dan 40, grade B; 
  • Jika skor 21-30 grade C; 
  • Jika skor 11-20 grade D; dan 
  • Jika skor 0-10 grade E;.
Kita akan tambahkan metode berikut untuk menghitung grades di atas paada class StudentResults:
private String getGrade (int aScore){
            String examGrade ="";
            if (aScore>=0 && aScore<=10){
                examGrade="E";
            }
            else if (aScore>=11 && aScore<=20){
                examGrade="D";
            }
            else if (aScore>=21 && aScore<=30){
                examGrade="C";
            }
            else if (aScore>=31 && aScore<=40){
                examGrade="B";
            }
            else if (aScore>=41){
                examGrade="A";
            }
            return "Grade is" + examGrade;
        }
Perhatikan bahwa metode ini bersifat pribadi - private. Sama seperti variabel field, membuat metode pribadi - private berarti hanya dapat dilihat dalam class ini saja. Hal ini tidak dapat dilihat oleh class ExamDetails.

Untuk mendapatkan class, kita akan menyiapkan metode lain dalam class StudentResults. Kita akan menggunakan ini untuk mendapatkan class. Menambahkan metode berikut tepat di atas metode getGrade, meskipun kita dapat menambahkannya di bawah barisan kode diatas, di Java itu tidak ada bedanya :
String examGrade(int aScore) {

Exam_Grade = this.getGrade( aScore) ;
return Exam_Grade;
}
Ini adalah metode yang kita panggil dari class ExamDetails, daripada menggunakan metode getGrade. Nama metode baru ini examGrade, dan kita melewati skor siswa - student's score. Lihatlah baris kode ini :
Exam_Grade = this.getGrade( aScore );
Metode getGrade akan dipanggil di sini, dan kita melewati aScore yang diserahkan. Memanggil satu metode dari yang lain adalah praktek standar, dan memungkinkan kita untuk menyederhanakan kode program. Alternatif lain adalah untuk memiliki metode yang sangat panjang yang sulit untuk dibaca.
Hal lain untuk diperhatikan di baris kode di atas adalah kata kunci Java this. Kata kunci this berarti "this class", penggunaan class lain yang mungkin memiliki nama metode yang sama. Ini untuk menghindari kebingungan dan crash.
Exam_Grade = getGrade( aScore );
Hasil akhirnya, meskipun, masih sama: kita menyimpan sesuatu dalam variabel field Exam_Grade, dan sesuatu yang akan menjadi teks "Grade is" ditambah huruf Grade -

Maka kita tambahkan baris berikut ke class ExamDetails, untuk menguji metode baru tersebut:
String grade = aStudent.examGrade(30);
Baris kode ini memiliki nilai 30 ke metode examGrade. Nilai di variabel field Exam_Grade dan kemudian kembali, dan disimpan dalam class variabel yang dipanggil String grade.
Dengan menambah baris kode cetak, class ExamDetails akan terlihat seperti ini :
/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package exams;
/**
 * @author CHRISTIANTO "GEMBLONG" DHARMA WIBOWO LEARN JAVA
 */
public class ExamDetails {
    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        StudentResults aStudent = new StudentResults();
        
        String sName = aStudent.fullName("Bill Gates");
        String exam = aStudent.examName("VB");
        String score = aStudent.examScore(30);
        String grade = aStudent.examGrade(30);
        
        System.out.println( sName );
        System.out.println( exam );
        System.out.println( score );
        System.out.println( grade );
    }
    
}
Jalankan programnya untuk melihat jendela Output :
Dan keseluruhan Java Program untuk class StudentResults adalah seperti ini :
/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package exams;
/**
 * @author CHRISTIANTO "GEMBLONG" DHARMA WIBOWO LEARN JAVA
 */
public class StudentResults {
    private String Full_Name;
    private String Exam_Name;
    private String Exam_Score;
    private String Exam_Grade;
    
    StudentResults(){
        Full_Name ="No Name Given";
        Exam_Name ="Unknown";
        Exam_Score ="No Score";
        Exam_Grade ="Unknown";
    }
    
    String fullName(String aName){
        Full_Name = aName;
        return Full_Name;
        
    }
    String examName(String examCode){
        if (examCode.equals("VB")){
            Exam_Name = "Visual Basic .NET";
        }
        else if (examCode.equals("JV")){
            Exam_Name = "Java";
        }
        else if (examCode.equals("C#")){
            Exam_Name = "C# .NET";
        }
        else if (examCode.equals("PH")){
            Exam_Name = "PHP";
        }
        else{
            Exam_Name ="No Exam Selected";
        }
        return Exam_Name;
    }
        String examScore(int aScore){
            Exam_Score = aScore + " out of 50";
            return Exam_Score;
        }
        String examGrade (int aScore){
            Exam_Grade = this.getGrade(aScore);
            return Exam_Grade;
        }
        private String getGrade (int aScore){
            String examGrade ="";
            if (aScore>=0 && aScore<=10){
                examGrade="E";
            }
            else if (aScore>=11 && aScore<=20){
                examGrade="D";
            }
            else if (aScore>=21 && aScore<=30){
                examGrade="C";
            }
            else if (aScore>=31 && aScore<=40){
                examGrade="B";
            }
            else if (aScore>=41){
                examGrade="A";
            }
            return "Grade is  " + examGrade;
        }
    }
Dalam pembelajaran berikutnya, kita akan belajar tentang Metode Overloading. -  Method Overloading - jangan kacaukan Java Program nya, packages exams dan class ExamDetails dan class StudentResults ini, karena kita akan terus bermain dengannya.

0 komentar:

Posting Komentar