• Tidak ada hasil yang ditemukan

Pemrograman Lanjut Class, Instance Variable dan Method PTIIK

N/A
N/A
Protected

Academic year: 2021

Membagikan "Pemrograman Lanjut Class, Instance Variable dan Method PTIIK"

Copied!
26
0
0

Teks penuh

(1)

Pemrograman Lanjut

PTIIK - 2013

(2)

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

(3)

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

(4)

Review Class, Object, Instance Variable

Class terdiri dari satu atau lebih atribut / properti

Ditunjukkan oleh suatu variabel (instance variables)

(5)

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

(6)

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

(7)

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!”);

(8)

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);

(9)

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”);

(10)

Class GradeBook

1 // Fig. 3.1: GradeBook.java

2 // Class declaration with one method.

3

4 public class GradeBook 5 {

6 // 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

(11)

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 {

9 // create a GradeBook object and assign it to myGradeBook

10 GradeBook myGradeBook = new GradeBook(); 11

12 // call myGradeBook's displayMessage method

13 myGradeBook.displayMessage(); 14 } // end main

15

16 } // end class GradeBookTest

Welcome to the Grade Book!

Use class instance creation expression to create object of

class GradeBook Call method

displayMessage using GradeBook object

(12)

Deklarasi Method dengan Parameter

Parameter Method

 Informasi tambahan yang dilewatkan melalui method

 Ditambahakan pada saat memanggil method dengan

(13)

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 );

11 } // end method displayMessage

12

13 } // end class GradeBook

Call printf method with courseName argument

(14)

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 // create a GradeBook object and assign it to myGradeBook

15 GradeBook myGradeBook = new GradeBook(); 16

17 // prompt for and input course name

18 System.out.println( "Please enter the course name:" );

19 String nameOfCourse = input.nextLine(); // read a line of text

20 System.out.println(); // outputs a blank line

21

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!

Call nextLine method to read a line of input

Call displayMessage with an argument

(15)

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.

(16)

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

(17)

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.

(18)

set and get methods

private instance variables

 Tidak dapat diakses secara langsung oleh clients dari object

Gunakan set methods untuk mengubah nilai variabel

(19)

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

(20)

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

(21)

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.)

(22)

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

5 public class GradeBook

6 {

7 private String courseName; // course name for this GradeBook 8

9 // method to set the course name 10 public void setCourseName( String name )

11 {

12 courseName = name; // store the course name

13 } // end method setCourseName 14

15 // method to retrieve the course name 16 public String getCourseName()

17 {

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() );

28 } // end method displayMessage

29

30 } // end class GradeBook

Instance variable courseName

set method for courseName

get method for courseName

(23)

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

(24)

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

25

26 // display welcome message after specifying course name

27 myGradeBook.displayMessage(); 28 } // end main

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!

Call set method for courseName

(25)

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

(26)

afif.supianto@ub.ac.id 081 331 834 734 / 088 160 127 40

Referensi

Dokumen terkait

Susu skim mengandung karbohidrat yaitu laktos ayang tinggi sehingga penambahan susu skim dapat menghambat pertumbuhan BAL seiring tingginya penambahan konsentrasi

 Maryani & Ludigdo (2001) “Etika adalah Seperangkat aturan atau norma atau pedoman yang mengatur perilaku manusia, baik yang harus dilakukan maupun yang harus

Menganalisa deteksi tepi dengan menggunakan beberapa operator deteksi untuk mengetahui metode mana yang lebih baik dalam mendeteksi tepi suatu citra pada kain batik secara

makanan tambahan pemulihan (PMT- P) terhadap status gizi balita gizi buruk di Dinas Kesehatan Kota Semarang tahun 2012. Penelitian pengaruh pemberian MP-ASI biskuit

Teknik analisis yang digunakan untuk menguji hipotesis mayor dalam penelitian ini yaitu teknik analisis multiple regression dimana teknik ini digunakan untuk

Upaya untuk mengukur tingkat kepuasan pasien tidak mudah berdasarkan berbagai pengalaman pengukuran yang telah dilakukan, karena untuk mengukur tingkat kepuasan pasien

Permasalahan yang akan dibahas dalam skripsi ini adalah apakah dokter gigi umum dalam melakukan pemasangan behel gigi yang seharusnya merupakan kewenangan dari dokter gigi

Penelitian ini bertujuan untuk mengidentifikasi terjadinya perubahan iklim melalui pola kecenderungan, distribusi dan kesamaan data curah hujan pada rentang waktu yang