network programming 03- pemrograman java lanjutan

31
Ridwan Montezari Ridwan Montezari [email protected]

Upload: lia-rusdyana-dewi

Post on 25-May-2015

1.852 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Network programming 03- Pemrograman Java Lanjutan

Ridwan MontezariRidwan [email protected]

Page 2: Network programming 03- Pemrograman Java Lanjutan

Pemrograman Java L jLanjutan

Page 3: Network programming 03- Pemrograman Java Lanjutan

Java OOPJava OOPKonsep Dasar

Class Model/blueprint dari sebuah objek

Object Instance dari class

AttributElemen dari class yang menyimpan suatu informasi.

M h d Method Menjelaskan tentang behavior dari sebuah class.

ConstructorI i i li i d i lInisialisasi dari class.

PackageMengelompokkan kelas‐kelas yang saling berelasi dan interfaces yang memberikan proteksi terhadap access kelas yang tidak boleh yang memberikan proteksi terhadap access kelas yang tidak boleh diakses oleh kelas lain karena tidak berelasi.

Page 4: Network programming 03- Pemrograman Java Lanjutan

Java OOPJava OOPKonsep Dasar

access (visibility / access level)public, protected, private

static abstract finalstatic, abstract, finalextends

Fungsi untuk menurunkan attribut/method dariFungsi untuk menurunkan attribut/method darisuperclass (parent class)

InterfaceA k / k l k ik i lAntar muka / protokol komunikasi antar class.

implementsFungsi untuk mengimplementasikan sebuah interfaceFungsi untuk mengimplementasikan sebuah interface

Page 5: Network programming 03- Pemrograman Java Lanjutan

Deklarasi Class

Page 6: Network programming 03- Pemrograman Java Lanjutan

Object Instantiation

Class Name Class Contructor

Instance Variable Name

Page 7: Network programming 03- Pemrograman Java Lanjutan

ConstructorSingle Constructor Nama Constructor sama

dengan nama Class

Multiple Constructor (Overloading Constructor)

Dua constructor denganargumen yang berbeda

Page 8: Network programming 03- Pemrograman Java Lanjutan

Methodsaccess (access level)

public, private, protected, dllreturnType

Nilai keluaran dari method atau void jika method tidak mempunyai keluaranNilai keluaran dari method atau void jika method tidak mempunyai keluaranmethodName

Nama methodArguments

Parameter dari methodParameter dari method

Page 9: Network programming 03- Pemrograman Java Lanjutan

Contoh MethodMethod yang tidakmempunyai nilai

keluaran

Method yang Method yang mempunyai nilai

keluaran

Page 10: Network programming 03- Pemrograman Java Lanjutan

Overriding Method

File

Page 11: Network programming 03- Pemrograman Java Lanjutan

Use of InstancesMemanggil Method

mhs.method_pertama();mhs.method_kedua();

Mengakses Variableh i bl tmhs.variable_pertama;

mhs. variable_kedua;

Page 12: Network programming 03- Pemrograman Java Lanjutan

Contoh Use of Instances

Page 13: Network programming 03- Pemrograman Java Lanjutan

Keyword this dan superKeyword this

Adanya ambigu pada atribut lokal dari variabel lokalM j k d bj t i t th d t tiMenunjuk pada object yang meminta method non‐static.Menunjuk pada konstruktor lain

Keyword supery pPenggunaan keyword super berhubungan dengan pewarisan.Super digunakan untuk meminta konstruktor superclass.Super juga dapat digunakan seperti kata kunci this untuk menunjuk pada anggota dari superclass

Page 14: Network programming 03- Pemrograman Java Lanjutan

Contoh Keyword this

Page 15: Network programming 03- Pemrograman Java Lanjutan

Contoh Keyword super

Page 16: Network programming 03- Pemrograman Java Lanjutan

Keyword staticDigunakan untuk anggota dari sebuah class.Method class mungkin dapat diambil tanpa

b b h bj d i l b dmembuat sebuah object dari class tersebut danhanya dapat mengakses anggota static.

Page 17: Network programming 03- Pemrograman Java Lanjutan

Keyword finalKeyword final dapat diaplikasikan pada variabel, method dan class.Nil i d i b l k ( id k d di ) Nilai pada variabel konstan (tidak dapat diatur) Method tidak dapat dioverride.Cl id k d di kClass tidak dapat diturunkan

Page 18: Network programming 03- Pemrograman Java Lanjutan

Konsep Dasar OOPEnkapsulasiAbstraksiInheritancePolimorfisme

Page 19: Network programming 03- Pemrograman Java Lanjutan

EnkapsulasiMenyembunyikan informasi dan detail implementasisebuah method, serta mengatur akses terhadapattribut/methodattribut/method.

Page 20: Network programming 03- Pemrograman Java Lanjutan

Contoh Enkapsulasi

Page 21: Network programming 03- Pemrograman Java Lanjutan

AbstraksiMendefinisikan obyek abstrak yang mampumelakukan kegiatan, mengubah state, dan berkomunikasi dengan obyek lain pada sistemberkomunikasi dengan obyek lain pada sistem.static, private, and final methods tidak bisa diabstractabstract.

Page 22: Network programming 03- Pemrograman Java Lanjutan

Abstraksi

Page 23: Network programming 03- Pemrograman Java Lanjutan

InheritancePewarisan atribut dan method dari class induk kekelas anak.

Page 24: Network programming 03- Pemrograman Java Lanjutan

Contoh Inheritance

Page 25: Network programming 03- Pemrograman Java Lanjutan

PolimorfismeMembuat obyek dari kelas dasar dapat berperilakuseperti obyek lain yang merupakan turunannya.

Page 26: Network programming 03- Pemrograman Java Lanjutan

Contoh Polimorfisme

Page 27: Network programming 03- Pemrograman Java Lanjutan

Contoh Polimorfisme

Page 28: Network programming 03- Pemrograman Java Lanjutan

InterfaceKumpulan method tanpa detail implementasinya.Interface digunakan bila ingin mengaplikasikan suatu

h d ifik (b k d i i k l )method yang spesifik (bukan dari pewarisan kelas).Interface bersifat embedded (disisipkan) pada class dan class diberikan keleluasaan untuk merancang dandan class diberikan keleluasaan untuk merancang danmendefinisikan sendiri detail prosesnya. Interface digunakan jika class yang tidak berhubunganInterface digunakan jika class yang tidak berhubunganmengimplementasikan method yang sama

Page 29: Network programming 03- Pemrograman Java Lanjutan

Contoh Interface

Page 30: Network programming 03- Pemrograman Java Lanjutan

Interface vs AbstractInterface tidak langsung mewariskan hubungandengan class tetapi didefinisikan secara independent, sedangkan abstract langsung mewariskan hubungansedangkan abstract langsung mewariskan hubungandengan class.Suatu class dapat diimplementasikan/ dihubungkanSuatu class dapat diimplementasikan/ dihubungkandengan banyak interface, tetapi abstract tidak.

Page 31: Network programming 03- Pemrograman Java Lanjutan

Package dan import