/
FONDASI PEMROGRAMAN & STRUKTUR FONDASI PEMROGRAMAN & STRUKTUR

FONDASI PEMROGRAMAN & STRUKTUR - PowerPoint Presentation

mitsue-stanley
mitsue-stanley . @mitsue-stanley
Follow
387 views
Uploaded On 2018-01-21

FONDASI PEMROGRAMAN & STRUKTUR - PPT Presentation

DATA 5 Object Class Class Documentation amp Packages Tujuan Pertemuan Memahami prinsip Object pada pemrograman Memahami tentang encapsulation and information hiding pada object ID: 625651

object class yang public class object public yang untuk int method dari suatu intcell storedvalue pada write package private read dengan void

Share:

Link:

Embed:

Download Presentation from below link

Download Presentation The PPT/PDF document "FONDASI PEMROGRAMAN & STRUKTUR" is the property of its rightful owner. Permission is granted to download and print the materials on this web site for personal, non-commercial use only, and to display it on your personal computer provided you do not modify the materials and that you retain all copyright notices contained in the materials. By downloading content from our website, you accept the terms of this agreement.


Presentation Transcript

Slide1

FONDASI PEMROGRAMAN & STRUKTUR DATA#5

Object

,

Class

,

Class Documentation

&

PackagesSlide2

Tujuan PertemuanMemahami 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.Slide3

Object Oriented ProgrammingTentang ObjectObject 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

.Slide4

Object Oriented ProgrammingTentang ObjectAtomicity 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

.

Warning:

Do not open

no

user

serviceable parts

inside.”Slide5

Object Oriented ProgrammingSuatu peradigma pemrograman yang menggunakan object (Struktur Data yang terdiri dari data fields dan methodsMerupakan 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.Slide6

Object Oriented ProgrammingInheritanceSuatu 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

inheritanceSlide7

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

”Slide8

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] Slide9

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

ClassContoh 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 aksiSlide11

ClassPublic 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;Slide12

ClassMethods yang mengembalikan nilai harus disertakan tipe dari nilai yang di kembalikannya, pada deklarasi methodMethods yang tidak mengembalikan nilai harus disertakan void, pada deklarasi method

public

int

read( ) {

public

void

write( int x ) {Slide13

ClassMembuat object dari Class

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

}

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

}

}

Deklarasi object m dengan tipe class IntCell

Object

m

menggunakan method write()

Object

m

menggunakan method read()Slide14

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

[

cay horstmann, Big Java, 2.4]Slide15

Constructing Objects (instance)Pembuatan suatu object dengan mengacu pada suatu class disebut instanceKebanyakan program memerlukan berbagai jenis object. Untuk itu perlu diketahui cara membangun (construct) object baru. Syntax:

Contoh:

IntCell

objAngka

= new IntCell( );

<namaClass>

<namaObjectBaru>

= new

namaClass()Slide16

Constructing Objects (instance)Contoh

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 IntCell {

// Public methods

public int read( ) {

return storedValue;

}

public void write( int x ){

storedValue = x;

}

/* Private internal data representation */

private int storedValue;}

public class TestIntCell {

public static void main( String [ ] args ) {

IntCell m = new IntCell( );

m.write( 5 );

System.out.println( "Cell contents: " + m.read( ) );

}

}Slide17

MethodMethod merupakan member class yang berfungsi untuk melakukan suatu aksi. Pada java terdapat beberapa jenis method:constructormutatoraccessortoStringmainSlide18

MethodConstructorconstructor 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.Slide19

MethodConstructor

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

MethodAccessor & MutatorField 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.Slide21

MethodAccessor & Mutator

public class IntCell {

public int read( )

{

return storedValue;

}

public void write( int x )

{

storedValue = x;

}

private int storedValue;

}

Method accessor

Method mutatorSlide22

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

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

}

}Slide24

PackagePackage 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 package

Nama classSlide25

Importing a Class from a PackageKita 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)

import java.awt.Rectangle;

class bentuk {

public static void main (String[] args) {

Rectangle

kotak

= new Rectangle(5,5,20,20);

}

}

Instruksi import class

Rectangle

dari package

java.awt

Untuk mengetahui pada package apa suatu class bisa dilihat di:

http://java.sun.com/javase/7/docs/api/index.html

Don’t Memorize—Use Online Help

The Java library has thousands of classes and methodsSlide26

Membuat Package dan Mendaftarkan Class ke PackageSyntax: 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;Slide27

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;

}

}

constructor

method

Field / Data member

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

JavadocSpesifikasi 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

.Slide29

JavadocUntuk 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 dengan @paramSlide30

JavadocContoh Javadoc

/**

* class untuk simulasi sel memori integer

* @author

Augury El Rayeb

public class IntCell {

/**

* Get the stored value.

* @return the stored value.

*/

public int read( )

{

return storedValue;

}

/**

* Store a value.

* @param x the number to store.

*/

public void write( int x )

{ storedValue = x; }

private int storedValue;}Slide31

Latihan (Tugas)Buat program untuk membaca file teks. Kemudian tampilkan seluruh isi file teks tersebut pada Konsol.Kirim ke: augury.elrayeb@upj.ac.idSubject: tugas sdat 2016-01 - nim - namaKasih penjelasan program pada emailSlide32

See You Next SessionThanks