Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

FONDASI PEMROGRAMAN & STRUKTUR DATA #5

Presentasi serupa


Presentasi berjudul: "FONDASI PEMROGRAMAN & STRUKTUR DATA #5"— Transcript presentasi:

1 FONDASI PEMROGRAMAN & STRUKTUR DATA #5
Object, Class, Class Documentation & Packages

2 Tujuan Pertemuan Memahami prinsip Object pada pemrograman.
Memahami tentang encapsulation and information hiding pada object. Mampu implementasi class dan dokumentasi class untuk diterapkan pada object. Memahami pemanfaatan packages.

3 Object Oriented Programming Tentang Object
Object merupakan entitas/data type yang memiliki struktur dan state. Tiap object memiliki operasi yang disediakan untuk mengakses atau memanipulasi state-nya. Object merupakan unit atomic: bagian-bagian dari object tidak dapat dibongkar oleh pengguna object.

4 Object Oriented Programming Tentang Object
Atomicity dikenal juga dengan information hiding. Information hiding: User tidak dapat mengakses langsung ke bagian- bagian atau implementasi object; hal tersebut dapat diakses secara tidak langsung, melalui method yang disediakan pada object. “Do not open—no user serviceable parts inside.” Warning:

5 Object Oriented Programming
Suatu peradigma pemrograman yang menggunakan object (Struktur Data yang terdiri dari data fields dan methods Merupakan paradigma pemrograman yang berorientasikan kepada objek. Semua data & fungsi di dalam paradigma ini dibungkus dalam class atau objects Support code reuse Programmer harus dapat me-reuse object sehingga tidak perlu menulis ulang program.

6 Object Oriented Programming
Inheritance Suatu cara untuk reuse (menggunakan ulang) code dari objects yg ada atau membangun subtype dari object yang sudah ada. Encapsulation Menyembunyikan detil keseluruhan dari implementasi (information hiding). Untuk menyembunyikan interface dari implementasi digunakan kata kunci private. Polymorphism Memberikan suatu kemampuan pada program untuk berkembang secara terus menerus. Baik pada tahap pengembangan awal ataupun pada saat ingin menambahkan kemampuan-kemampuan yang baru. Merupakan bagian dari implementasi inheritance

7 Class “Suatu class pada java terdiri dari fields yang berfungsi untuk menyimpan data dan methods yang nantinya akan digunakan oleh instances dari class” . “Suatu class pada java merupakan suatu blue print untuk object yang akan digunakan dalam program”

8 Class “Merupakan spesifikasi dari suatu object yang mengacu padanya”. [cay horstmann, Big Java, 2.4] “Merupakan type dari suatu object”. [cay horstmann, Big Java, 2.4] “Merupakan template untuk membuat object”. [Lucy Mendel, MIT]

9 Class public class IntCell { // Public methods public int read( ) { return storedValue; } public void write( int x ){ storedValue = x; /* Private internal data representation */ private int storedValue; IntCell Data: storedValue Method: read() write(int x) Kita bisa menggunakan method read() dan write() pada object yang memiliki type class IntCell. Contoh: IntCell m = new IntCell( ); m.write( 5 );

10 Class Contoh Class dalam Program Java
// IntCell class // int read( ) --> Returns the stored value // void write( int x ) --> x is stored public class IntCell { // Public methods public int read( ) { return storedValue; } public void write( int x ) { storedValue = x; // Private internal data representation private int storedValue; Class IntCell Method read() dengan tipe public, dgn return value Method write() dengan tipe public, tanpa return value (void) Field storedValue dengan tipe private. Field adalah member yang menyimpan data, biasanya memiliki tipe private. Method adalah member melakukan aksi

11 Class Public members merupakan bagian dari class yang dapat dilihat oleh pengguna object. Private members merupakan bagian dari class yang tidak dapat dilihat (hidden) dari sisi pengguna object. (nonclass routines). public int read( ) { private int storedValue;

12 Class Methods yang mengembalikan nilai harus disertakan tipe dari nilai yang di kembalikannya, pada deklarasi method Methods yang tidak mengembalikan nilai harus disertakan void, pada deklarasi method public int read( ) { public void write( int x ) {

13 Class Membuat object dari Class
Object m menggunakan method write() // IntCell class // int read( ) --> Returns the stored value // void write( int x ) --> x is stored public class IntCell { // Public methods public int read( ) { return storedValue; } public void write( int x ){ storedValue = x; /* Private internal data representation */ private int storedValue; Deklarasi object m dengan tipe class IntCell // Exercise the IntCell class public class TestIntCell { public static void main( String [ ] args ) { IntCell m = new IntCell( ); m.write( 5 ); System.out.println( "Cell contents: " + m.read( ) ); // The next line would be illegal if uncommented // because storedValue is a private member // m.storedValue = 0; } Object m menggunakan method read()

14 Constructing Objects (instance)
Suatu object adalah suatu nilai yang dapat dimanipulasi dengan memanggil satu atau lebih method yang dimilikinya [cay horstmann, Big Java, 2.4] Suatu method terdiri dari urutan instruksi yang dapat mengakses data internal objectnya

15 Constructing Objects (instance)
Pembuatan suatu object dengan mengacu pada suatu class disebut instance Kebanyakan program memerlukan berbagai jenis object. Untuk itu perlu diketahui cara membangun (construct) object baru. Syntax: Contoh: IntCell objAngka = new IntCell( ); <namaClass> <namaObjectBaru> = new namaClass()

16 Constructing Objects (instance) Contoh
public class IntCell { // Public methods public int read( ) { return storedValue; } public void write( int x ){ storedValue = x; /* Private internal data representation */ private int storedValue; m sebagai suatu object acuan. Dapat dimanipulasi dengan memanggil method-nya: write(par), dengan cara: m.write(5) Saat method write() dipanggil, beberapa aktifitas terjadi didalam object, dan hasilnya adalah storedValue diisi dengan nilai dikirim melalui parameter. public class TestIntCell { public static void main( String [ ] args ) { IntCell m = new IntCell( ); m.write( 5 ); System.out.println( "Cell contents: " + m.read( ) ); }

17 Method Method merupakan member class yang berfungsi untuk melakukan suatu aksi. Pada java terdapat beberapa jenis method: constructor mutator accessor toString main

18 Method Constructor constructor memberitahu bagaimana suatu object dideklarasikan dan di-inisialisasi. constructor biasanya digunakan untuk inisialisasi field member yang ada pada object Jika pada suatu class tidak ada constructor, default constructor akan dibuat oleh java untuk menginisialisasi tiap field member sesuai default value dari tipe field-nya. Untuk membuat constructor, kita harus menulis method dengan tipe no return yang memiliki nama sama dengan class. Constructor bisa memiliki parameter.

19 Method Constructor 4 public class Date {
5 // Constructor tanpa parameter 6 public Date( ) { 7 month = 1; 8 day = 1; 9 year = 2010; 10 } 11 // Constructor denga tiga parameter 12 public Date( int theMonth, int theDay, int theYear ) { 13 month = theMonth; 14 day = theDay; 15 year = theYear; 16 } } Untuk membuat object based on class Date, dengan cara: Date d1 = new Date( ); Atau Date d2 = new Date( 4, 15, 2010 );

20 Method Accessor & Mutator
Field members biasanya dideklarasikan secara private, dengan demikian maka tidak dapat diakses oleh rutin di luar class (nonclass routines). Untuk itu diperlukan suatu method : method accessor ; yang dapat memeriksa / membaca nilai suatu field tanpa merubah nilainya method mutator ; yang dapat digunakan untuk merubah nilai suatu field.

21 Method Accessor & Mutator
public class IntCell { public int read( ) { return storedValue; } public void write( int x ) { storedValue = x; private int storedValue; Method accessor Method mutator

22 Method toString Method toString() biasa digunakan untuk:
Membaca seluruh nilai field pada class namun dalam bentuk string. Membaca suatu object sebagai suatu string public class IntCell { private int x; private int y; public String toString( ) { return x + “ “ + y; } Misal: IntCel angka = new IntCell( ); System.out.println( angka.toString() ); Atau System.out.println( angka );

23 Method Main Method main pada suatu file class merupakan method utama yang diprioritaskan untuk dijalankan oleh java command saat suatu file class dipanggil. public class TestIntCell { public static void main( String [ ] args ) { IntCell m = new IntCell( ); m.write( 5 ); System.out.println( "Cell contents: " + m.read( ) ); }

24 Package Package digunakan untuk mengelompokkan class - class.
Sebuah package dapat mempunyai satu atau lebih sub-package ini sehingga membentuk sebuah hirarki. Contoh package: java.awt.Rectangle; Nama class Nama package

25 Importing a Class from a Package
Kita harus melakukan import suatu class sebelum kita membuat object dari suatu class. Perhatikan pembuatan object berikut: untuk membuat object kotak dengan type class Rectangle maka kita harus import dahulu class Rectangle dari package-nya. Rectangle kotak = new Rectangle(5,5,20,20) Instruksi import class Rectangle dari package java.awt import java.awt.Rectangle; class bentuk { public static void main (String[] args) { Rectangle kotak = new Rectangle(5,5,20,20); } Untuk mengetahui pada package apa suatu class bisa dilihat di: Don’t Memorize—Use Online Help The Java library has thousands of classes and methods

26 Membuat Package dan Mendaftarkan Class ke Package
Syntax: Contoh: package agen; package calculator; Untuk mendaftarkan class yg kita buat ke suatu package, tambahkan syntax di atas pada bagian paling atas program kita, contoh: Berdasarkan contoh di atas, berarti class hai berada dalam package paket1, untuk menggunakan class hai lakukan: package <namaPackage> package paket1; public class hai { …. } import paket1.hai;

27 Mendaftarkan Class ke Package
Contoh: package agen; public class myAgen { private String name; public myAgen(String name) { this.name = name; } public String ambilPesan() { return "Salam kepada Anda !. dari " + name; Field / Data member constructor method import agen.myAgen; public class salam { public static void main(String[] args) { myAgen Helo = new myAgen("Rayputra"); String s = Helo.ambilPesan(); System.out.println(s); } Membuat object Helo dari class myAgen Menjalankan method ambilPesan()

28 Javadoc Spesifikasi class mendeskripsikan apa yang dapat dilakukan terhadap suatu object. Implementasi internal object dapat diketahui dari spesifikasi yang dibuat. Program javadoc digunakan untuk membuat dokumentasi class secara otomatis. Output dari javadoc merupakan sekumpulan file HTML yang dapat dilihat atau dicetak melalui browser.

29 Javadoc Untuk membuat javadoc secara command line:
Jalankan progam javadoc disertai dengan nama file (.java). Output dari program javadoc berasal dari comment pada program kecuali untuk method yang diambil dari header method tersebut. Comment /** digunakan Untuk membuat spesfikasi terkait implementasi dari class. Tags yang digunakan dalam comment; @author, untuk memberitahukan nama penulis, @param, untuk memberitahukan parameter-parameter yang digunakan pada method. @return, untuk memberitahukan nilai yang dikembalikan oleh method. @throws, kegunaannya hampir sama

30 Javadoc Contoh Javadoc
/** * class untuk simulasi sel memori integer Augury El Rayeb public class IntCell { * Get the stored value. the stored value. */ public int read( ) { return storedValue; } * Store a value. x the number to store. public void write( int x ) { storedValue = x; private int storedValue;

31 Latihan (Tugas) Buat program untuk membaca file teks. Kemudian tampilkan seluruh isi file teks tersebut pada Konsol. Kirim ke: Subject: tugas sdat nim - nama Kasih penjelasan program pada

32 See You Next Session Thanks


Download ppt "FONDASI PEMROGRAMAN & STRUKTUR DATA #5"

Presentasi serupa


Iklan oleh Google