Download as pdf or txt
Download as pdf or txt
You are on page 1of 26

Pemrograman Lanjut

Class, Instance Variable dan Method

PTIIK - 2013
Objectives
 Mampu mendeklarasikan class dan menggunakannya untuk
membuat object.
 Mampu mendeklarasikan methods dalam class (tingkah laku
class).
 Mampu mendeklarasikan instance variables dalam class
(atribut class).
 Mampu memanggil method pada object untuk menjalankan
algoritma yang ada di dalamnya.
 Memahami perbedaan antara instance variables dari class
dan local variables pada method.
Review Class, Object, Instance Variable

 Class terdiri dari satu atau lebih method


 Method menyelesaikan tugas dalam suatu
program
 Mendeskripsikan mekanisme untuk menyelesaikan
suatu permasalahan
 Menyembunyikan dari user tentang kerumitan
(kompleks) permasalahan itu diselesaikan
 Method harus dipanggil untuk dapat menjalankan
tugasnya
Review Class, Object, Instance Variable

 Class terdiri dari satu atau lebih atribut / properti


 Ditunjukkan oleh suatu variabel (instance variables)
 Melekat pada object sebagai instance-nya
Deklarasi Class

 Setiap deklarasi class declaration diawali dengan


keyword public
 Class harus disimpan dalam file dengan nama yang
sama dengan class tersebut dan diakhiri dengan ekstensi
.java
 Keyword public merupakan access modifier
 Deklarasi Class meliputi:
 Access modifier
 Keyword class
 Sepasang kurung kurawal buka dan tutup

Declaring more than one public class


in the same file is a compilation error
Deklarasi Method

 Keyword public menandakan method dapat


diakses oleh public (diluar class tersebut)
 Keyword void menandakan tidak ada tipe
pengembalian nilai
 Access modifier, return type, nama method
dan parentheses merupakan komponen header
dari method
Instansiasi Object dari Class

 Untuk membuat sebuah objek atau sebuah


instance pada sebuah kelas digunakan operator
new.
 Sebagai contoh, membuat instance dari kelas
string :
 String str2 = new String(“Hello world!”);
 String str2 = "Hello";
Memanggil Instance dari Method dan
Passing Variabel
 Untuk memanggil sebuah instance method,
gunakan format code berikut :
 nameOfObject.nameOfMethod( parameters );

String str1 = new String("Hello");


char x = str1.charAt(0);
String str2 = new String("hello");
boolean result1 = str1.equals(str2);
boolean result2 = str1.equalsIgnoreCase(str2);
System.out.println(x);
System.out.println(result1);
System.out.println(result2);
Memanggil Method Static

 Method Static adalah cara yang dapat dipakai tanpa


inisialisasi suatu class (tanpa menggunakan kata kunci
new)
 Method static dibedakan dari contoh method di dalam
suatu class oleh kata kunci static.
Classname.staticMethodName(params);
 Contoh:
//mencetak data pada layar
System.out.println(“Hello world”);
//convert string menjadi integer
int i = Integer.parseInt(“10”);
String hexEquivalent = Integer.toHexString( 10 );
Class GradeBook

1 // Fig. 3.1: GradeBook.java


2 // Class declaration with one method.
3
4 public class GradeBook
5 {
6 Print line of text to output
// display a welcome message to the GradeBook user
7 public void displayMessage()
8 {
9 System.out.println( "Welcome to the Grade Book!" );
10 } // end method displayMessage
11
12 } // end class GradeBook
Class GradeBookTest
1 // Fig. 3.2: GradeBookTest.java
2 // Create a GradeBook object and call its displayMessage method.
3
4 public class GradeBookTest
5 {
6 // main method begins program execution
7 public static void main( String args[] )
8 {
Use class instance creation
9 // create a GradeBook object and assign it to myGradeBook
expression to create object of
10 GradeBook myGradeBook = new GradeBook();
class GradeBook
11
12 // call myGradeBook's displayMessage method
13 myGradeBook.displayMessage();
Call method
14 } // end main
displayMessage using
15
GradeBook object
16 } // end class GradeBookTest

Welcome to the Grade Book!


Deklarasi Method dengan Parameter

 Parameter Method
 Informasi tambahan yang dilewatkan melalui method
 Ditambahakan pada saat memanggil method dengan
cara mengisi arguments
1 // Fig. 3.4: GradeBook.java
2 // Class declaration with a method that has a parameter.
3
4 public class GradeBook
5 {
6 // display a welcome message to the GradeBook user
7 public void displayMessage( String courseName )
8 {
9 System.out.printf( "Welcome to the grade book for\n%s!\n",
10 courseName ); Call printf method with
11 } // end method displayMessage courseName argument
12
13 } // end class GradeBook
1 // Fig. 3.5: GradeBookTest.java
2 // Create GradeBook object and pass a String to
3 // its displayMessage method.
4 import java.util.Scanner; // program uses Scanner
5
6 public class GradeBookTest
7 {
8 // main method begins program execution
9 public static void main( String args[] )
10 {
11 // create Scanner to obtain input from command window
12 Scanner input = new Scanner( System.in );
13
14 Call nextLine method to
// create a GradeBook object and assign it to myGradeBook
15 GradeBook myGradeBook = new GradeBook();
16
read a line of input
17 // prompt for and input course name
18 System.out.println( "Please enter the course name:" );
19 Call displayMessage with
String nameOfCourse = input.nextLine(); // read a line of text
20 System.out.println(); // outputs a blank line
21 an argument
22 // call myGradeBook's displayMessage method
23 // and pass nameOfCourse as an argument
24 myGradeBook.displayMessage( nameOfCourse );
25 } // end main
26
27 } // end class GradeBookTest

Please enter the course name:


CS101 Introduction to Java Programming

Welcome to the grade book for


CS101 Introduction to Java Programming!
Parameter yang lebih dari satu

 Parameter ditunjukkan oleh parameter list dalam


method
 Merupakan bagian dari header nya method
 Menggunakan comma-separated

A compilation error occurs if the number of


arguments in a method call does not match the
number of parameters in the method declaration.

A compilation error occurs if the types of the


arguments in a method call are not consistent with
the types of the corresponding parameters in the
method declaration.
Instance Variables

 Variables yang dideklarasikan pada body


method :
 Disebut sebagai local variables
 Hanya dapat digunakan didalam method tersebut
 Variables dideklarasikan pada class :
 Disebut fields atau instance variables
 Setiap object dari class memiliki variabel instance
yang berbeda
set Methods and get Methods

 Class menyediakan public methods untuk


memperbolehkan clients dari class untuk memberikan
nilai (set) atau mengambil nilai (get) dari private
instance variables.
 Nama method tidak harus dimulai dengan set atau get,
tetapi sangat direkomendasikan untuk kepentingan
pemrograman di Java integrated development
environments (IDEs).
 Method yang meng-assign nilai ke instance variable
disebut set method, dan method yang mengambil nilai
dari instance variable disebut get method.
set and get methods

 private instance variables


 Tidak dapat diakses secara langsung oleh clients dari
object
 Gunakan set methods untuk mengubah nilai variabel
 Gunakan get methods untuk mengambil value variabel
Catatan : Set and Get Methods

 Set methods
 Disebut juga sebagai mutator methods
 Memberikan nilai pada instance variables
 Seharusnya divalidasi terhadap nilai baru
• Dapat mengembalikan suatu nilai yang mengindikasikan data
yang salah
 Get methods
 Disebut juga sebagai accessor methods atau query
methods
 Memperoleh / mendapatkan nilai dari instance variables
 Dapat dikontrol format datanya
Catatan : Set and Get Methods

 Predicate methods
 Penggunaan lain dari accessor methods adalah untuk
menguji apakah suatu kondisi pada object : true atau
false dan mengembalikan hasilnya
 Contoh : method isEmpty  seperti linked list,
stack or queue
Access Modifiers public dan private

 keyword Private
 Sering digunakan untuk instance variables
 private variables dan methods hanya bisa diakses
oleh methods di dalam class dimana method tersebut
dideklarasikan
 Deklarasi instance variables private disebut
sebagai data hiding
 Return type (Tipe Pengembalian)
 Mengindikasikan item yang dikembalikan oleh method
 Dideklarasikan pada header dari method
Precede every field and method declaration with an access modifier. As a rule of
thumb, instance variables should be declared private and methods should be
declared public. (We will see that it is appropriate to declare certain methods
private, if they will be accessed only by other methods of the class.)
1 // Fig. 3.7: GradeBook.java
2 // GradeBook class that contains a courseName instance variable
3 // and methods to set and get its value.
4 Instance variable
5 public class GradeBook
6 { courseName
7 private String courseName; // course name for this GradeBook
8
9 // method to set the course name
10 public void setCourseName( String name )
11 { set method for courseName
12 courseName = name; // store the course name
13 } // end method setCourseName
14
15 // method to retrieve the course name
16 public String getCourseName()
17 { get method for courseName
18 return courseName;
19 } // end method getCourseName
20
21 // display a welcome message to the GradeBook user
22 public void displayMessage()
23 {
24 // this statement calls getCourseName to get the
25 // name of the course this GradeBook represents
26 System.out.printf( "Welcome to the grade book for\n%s!\n",
27 getCourseName() ); Call get method
28 } // end method displayMessage
29
30 } // end class GradeBook
1 // Fig. 3.8: GradeBookTest.java
2 // Create and manipulate a GradeBook object.
3 import java.util.Scanner; // program uses Scanner
4
5 public class GradeBookTest
6 {
7 // main method begins program execution
8 public static void main( String args[] )
9 {
10 // create Scanner to obtain input from command window
11 Scanner input = new Scanner( System.in );
12
13 // create a GradeBook object and assign it to myGradeBook
14 GradeBook myGradeBook = new GradeBook();
15
16 // display initial value of courseName
17 System.out.printf( "Initial course name is: %s\n\n",
18 myGradeBook.getCourseName() );
19 Call get method for
courseName
20 // prompt for and read course name
21 System.out.println( "Please enter the course name:" );
22 String theName = input.nextLine(); // read a line of text
23 myGradeBook.setCourseName( theName ); // set the course name
24 System.out.println(); // outputs a blank line Call set method for
25 courseName
26 // display welcome message after specifying course name
27 myGradeBook.displayMessage();
28 } // end main Call displayMessage
29
30 } // end class GradeBookTest

Initial course name is: null

Please enter the course name:


CS101 Introduction to Java Programming

Welcome to the grade book for


CS101 Introduction to Java Programming!
Tugas 1

 Buat class dan penggunaan class dari


permasalahan Lingkaran dengan ketentuan :
 Nama Class : Circle.java
 Pengguna Class : CircleTest.java
 Atribut Class Circle :
• radius
 Method Class Circle :
• setRadius
• getArea
• getPerimeter
afif.supianto@ub.ac.id
081 331 834 734 / 088 160 127 40

You might also like