. .

BAGIAN KE TUJUH: Java Classes - Java Field Variables Pada Netbeans IDE

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

BAGIAN KE TUJUH: Java Classes - Java Field Variables 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.
Terimakasih pada sumber pembelajaran ini :
Ingat, buka dulu Netbeans IDE kita, buka paket exams yang sudah mempunyai 2 class,  ExamDetails dan StudentResults yang sudah kita buat sebelumnya. Dalam bagian sebelumnya, sudah kita bicarakan tentang variabel dalam metode. Variabel yang mengatur di dalam metode hanya tersedia untuk metode itu sendiri Local variables. Mereka tidak tersedia untuk metode lain. Mereka dikatakan memiliki lingkup lokal.
Namun, kita juga dapat mengatur variabel di luar metode bahwa semua metode di class bisa saling melihat/melewati (passing by). Ini dikenal sebagai field variabel (atau Instance variables). Kita menetapkan mereka dengan cara yang persis sama seperti variabel lainnya. Tambahkan empat bidang berikut untuk class StudentResults :
/*
 * 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 {
    String Full_Name;
    String Exam_Name;
    String Exam_Score;
    String Exam_Grade;
 
}
Pada Class StudentResults kita sedang menyiapkan empat variabel string (empat field string). Nama-nama field yang kita sediakan berbentuk string dan menyiapkan nama-nama Full_Name, Exam_Name, Exam_Score, dan Exam_Grade. Keempat field akan tersedia untuk semua metode yang kita tulis di class ini, dan bukan lokal variables hanya untuk salah satu metode, tetapi fields tersebut dikatakan memiliki lingkup global.
Untuk melihat seberapa global yang mereka, klik kembali ke class ExamDetails, yang merupakan metode utama. Tambahkan baris kode berikut untuk membuat objek baru dari class StudentResults:
/*
 * 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();
    }
 
}
Hal ini sudah pernah kita lakukan pada bagian sebelumnya (BAGIAN KE ENAM: Passing Multiple Values to Methods - Melewati Beberapa Nilai Metode Java Pada Netbeans IDE) - menggunakan kata kunci baru untuk membuat objek baru. Nama objek akan aStudent, dan itu adalah tipe StudentResults, yang merupakan class kita.
Pada baris berikutnya, ketik nama variabel (aStudent), diikuti oleh sebuah titik. setelah kita mengetik dot/titik NetBeans akan menampilkan daftar popup dari metode dan properti yang tersedia untuk objek:
Keempat fields yang kita buat sudah berada di daftar. Mereka bukan metode, tetapi sesuatu yang disebut properti. Fakta bahwa mereka berada di daftar artinya bahwa mereka memiliki lingkup global. Jika mereka memiliki lingkup lokal mereka tidak akan berada di daftar.
Kita dapat mengatur nilai-nilai untuk properti. Kita coba menambahkan kode berikut untuk metode utama class ExamDetails:
/*
 * 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();
     
        aStudent.Exam_Name="VB NET";
        String exam=aStudent.Exam_Name;
        System.out.println( exam );
    }
 
}
Kita telah memilih bidang EXAM_NAME dari daftar dan ditugaskan itu nilai "VB NET". Baris berikutnya kemudian mendapatkan nilai EXAM_NAME dari objek aStudent. Hasilnya disimpan dalam variabel yang disebut exam , dan kemudian dicetak. Ketika kita menjalankan programnya, output adalah string "VB Net".
Jadi empat fields variabel kita telah dipersiapkan  untuk kedua class - ExamDetails dan StudentResults.
Namun, itu bukan ide yang baik untuk membuat fields variabel global seperti ini. kita cenderung kehilangan jejak nilai-nilai yang sudah ada di dalamnya, dan karena itu membuat debugging kode  jauh lebih sulit. Lebih baik kita mempertimbangkan membuat coding yang baik untuk mempersempit ruang lingkup variabel fields.
Untuk membuat variabel fields yang tersedia hanya untuk class tertentu, Kita menambahkan kata kunci Java pribadi - the Java keyword private sebelum mendeklarasikan fields. Maka kita rubah kode di class StudentResults menjadi :
/*
 * 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;
 
}
Sekarang, hanya kode dalam Class StudentResults dapat melihat variabel fields ini. Untuk memeriksa, kembali ke metode utama Class ExamDetails. kita melihat beberapa peringatan pesan kesalahan dan digarisbawahi merah. Hapus tiga baris kode di bagian bawah. Ketik aStudent dan kemudian dot-titik untuk melihat daftar NetBeans popup:
Seperti yang kita lihat, empat variabel field kini lenyap. Mereka telah lenyap karena mereka tidak lagi memiliki lingkup global, dan karena itu tidak dapat dilihat dari Class ExamDetails.

Metode dan instan variabel adalah yang diakses melalui objek yang dibuat. Untuk mengakses sebuah instance variabel, berikut ini adalah baris path yang memenuhi syarat -
/* First create an object */
ObjectReference = new Constructor();

/* Now call a variable as follows */
ObjectReference.variableName;

/* Now you can call a class method as follows */
ObjectReference.MethodName();
Contoh ini menjelaskan bagaimana cara mengakses variabel instan dan metode class.
public class Puppy {
   int puppyAge;

   public Puppy(String name) {
      // This constructor has one parameter, name.
      System.out.println("Name chosen is :" + name );
   }

   public void setAge( int age ) {
      puppyAge = age;
   }

   public int getAge( ) {
      System.out.println("Puppy's age is :" + puppyAge );
      return puppyAge;
   }

   public static void main(String []args) {
      /* Object creation */
      Puppy myPuppy = new Puppy( "tommy" );

      /* Call class method to set puppy's age */
      myPuppy.setAge( 2 );

      /* Call another class method to get puppy's age */
      myPuppy.getAge( );

      /* You can access instance variable as follows as well */
      System.out.println("Variable Value :" + myPuppy.puppyAge );
   }
}

Kita Break lagi, simpan file packages exams yang mempunyai 2 class, ExamDetails dan StudentResults karena pada bagian berikutnya, kita akan belajar tentang sesuatu yang disebut kelas konstruktor - Constructor Classes.

0 komentar:

Posting Komentar