Pemrograman Berorientasi. Methods

dokumen-dokumen yang mirip
Pemrograman Lanjut Jurusan S1 Teknik Informatika. 9/17/2012 Ratno

Bahasa Pemrograman 2.

Pemrograman Berorientasi. Class dan Obyek 2

Encapsulation (Encapsulasi) Minggu 5 Pemrograman Berorientasi Objek Alfa Faridh Suni

Bab 8. Dasar-Dasar OOP

CLASS PUTU INDAH CIPTAYANI JURUSAN SISTEM INFORMASI STMIK AMIKOM JOGJAKARTA

Pemrograman Lanjut Jurusan S1 Teknik Informatika. 9/17/2012 Ratno

MEMBUAT KELAS SENDIRI. Dewi Sartika, M.Kom

Pemrograman Lanjut Jurusan S1 Teknik Informatika. 9/17/2012 Ratno

Class & Object 2 ~Praktikum~ Imam Fahrur Rozi

OVERLOADING, CONSTRUCTOR DAN DESTRUCTOR. Dewi Sartika, M.Kom

PERTEMUAN III OBJEK DAN CLASS TUJUAN PRAKTIKUM

Membuat dan Menggunakan Class

PRAKTIKUM I Class dan Obyek

9/26/2011. Tujuan. Bekerja dengan Java Class Library. Pengenalan OOP. Pengenalan OOP. Class dan Object. Enkapsulasi

ENKAPSULASI. 1. Kompetensi Setelah kegiatan perkuliahan selesai, mahasiswa diharapkan dapat:

Pengenalan OOP. Object-Oriented programming (OOP) Menitikberatkan pada konsep object sebagai elemen dasar dari program.

Pengenalan pemrograman berorientasi obyek

KARAKTERISTIK PEMROGRAMAN BERORIENTASI OBJEK (OOP) Pemrograman berorientasi Objek mempunyai karakterisitik sebagai berikut:

Praktikum. PBO (Kelas K) Oleh : MOHAMMAD SHOLIKIN

Polymorphism (Polimorfisme)

Dasar-Dasar OOP di Java

ABSTRACTION, ENCAPSULATION, INHERITANCE & POLYMORPHISM

PEMOGRAMAN JAVA. Yoannita. Class(iii) [Constructor] [keyword this] Passing parameter [by value] [by references]

BAB 1 PEMROGRAMAN BERORIENTASI OBJEK

Algoritma Pemrograman [BS204]

Dasar-Dasar OOP di Java

Pemrograman Berorientasi. Abstract & Interface

Bahasa Pemrograman :: Polimorfism and Abstraction

Praktikum 7. Dasar-dasar OOP di Java

PRAKTIKUM 3 KONSTRUKTOR DAN OVERLOADING

Praktikum KPLBO Class dan Object I

A. TUJUAN PEMBELAJARAN. 1. Menerapkan konsep enkapsulasi pada class 2. Mendeklarasikan suatu constructor

INHERITANCE AND POLIMORPHISM PUTU INDAH CIPTAYANI JURUSAN SISTEM INFORMASI STMIK AMIKOM

[Lanjutan] Nurochman

BEKERJA DENGAN JAVA CLASS LIBRARY

Other OOP Basic. Viska Mutiawani, M.Sc. 1 Viska Mutiawani - Informatika FMIPA Unsyiah

PERTEMUAN 3 OBJEK DAN CLASS

Inheritance (Pewarisan) Pengertian dasar inheritance

Pemrograman Berorientasi. Inheritance

3/31/2011. Tujuan. Inheritance, Polymorphism,& Interfaces. Inheritance / pewarisan. Inheritance / pewarisan. Inheritance / pewarisan

OBJECT, CLASS DAN METHOD. 1. Mengetahui pengertian dari objek & class 2. Dapat membuat program sederhana dari java dengan menggunakna objek dan class

PEWARISAN. Disusun Oleh: Reza Budiawan. Untuk: Tim Dosen Algoritma & Pemrograman Lanjut

Sekarang, kita akan mencoba untuk menganalisa program Java pertama : public class Hello {

Other OOP Basic. Viska Mutiawani, M.Sc

LAPORAN PRAKTIKUM ALGORITMA DAN STRUKTUR DATA PENGENALAN OBJECT ORIENTED PROGRAMMING

Variabel dengan tipe dasar hanya dapat menyimpan sebuah nilai

MODUL 3. Inheritance, Abstract Class, Interface TUJUAN PRAKTIKUM LANDASAN TEORI. A. Inheritance

Modul II Object Oriented Programming

Pemrograman Berorientasi Objek

Overriding. Subclass yang berusaha memodifikasi tingkah laku yang diwarisi dari superclass. Tujuan: subclass memiliki tingkah laku yang lebih

OBJECT ORIENTED PROGRAMMING (OOP)

KONSEP OOP: POLYMORPHISM

SUMBER BELAJAR PENUNJANG PLPG

Overriding Overloading Polymorphism

UML (Unified Modelling Language)

Inheritance dan Kata Kunci static

2. Pilih instruksi yang dapat digunakan dalam method actionperformed untuk membedakan antara tombol buttonone dan buttontwo.

06/03/2018. Tidak memiliki parameter. Melakukan inisialisasi semua variabel private dengan nilai awal.

1. Manakah jawaban yang benar,pada saat Anda mengcompile dan menjalankan class berikut ini:

Praktikum 6 Class Design (Encapsulation)

Pemrograman Berorientasi. Package & Hubungan Antar Kelas

Pemograman Berorientasi Objek

Pemrograman Lanjut Tipe Data dan Constructor PTIIK

BAB VII. CLASS DAN OBJECT

TPI4202 e-tp.ub.ac.id. Lecture 4 Mas ud Effendi

CLASS, METHOD DAN MODIFIER

1. Keyword mana yang memiliki fungsi sama dengan keyword this dan menyediakan reference ke atribut turunan dari objek? super

INTERAKSI ANTAR OBJECT

Diciptakan oleh James Gosling. Resmi diperkenalkan tahun Merupakan bahasa pemrograman berorientasi obyek murni. Pada awalnya hanya mampu

PEMROGRAMAN JAVA. Yoannita, S.Kom. Class & Method sederhana Konsep Pemrograman Berorientasi Objek. Company LOGO

PRAKTIKUM 3 KONSTRUKTOR DAN OVERLOADING

Dasar Pemrograman Java

MODUL 1 PENGENALAN OOP

Pertemuan 2 (2) : Membuat Class dan mengakses Anggota Class

Apa yang menjadi output potongan kode diatas? Error karena tidak ada String yang di-passing kedalam konstruktor Bapak

5/23/12. Inheritance. Pengertian inheritance Deklarasi inheritance Single inheritance Multilevel inheritance Access Control super keyword

PEMOGRAMAN JAVA. Yoannita, S.Kom. Class(ii) [Constructor] [keyword this] Modifier Passing parameter [by value] [by references]

BAB 3 CLASS DAN OBJECT. Tujuan:

UNIVERSITAS GUNADARMA

Pemrograman Lanjut Review Class dan Object PTIIK

Modul 2. [access specifier] [tipe data] [nama variabel];

Pemrograman Lanjut. Class : Deeper Look 2

MODUL PRAKTIKUM BERORIENTASI OBJEK NINF615 SEMESTER GASAL 2016/2017 PROGRAM STUDI S1 TEKNIK INFORMATIKA

Pemrograman Berorientasi Objek Danu Wira Pangestu

Modul Praktikum 4 Pemograman Berorientasi Objek

Object Oriented Programming

Konsep Dasar Pemrograman Berorientasi Objek

C#, Programming, Object-oriented. Pengenalan C# Erick Pranata. Edisi I

PEMROGRAMAN BERORIENTASI OBJEK

UJIAN TENGAH SEMESTER GENAP TA 2011/2012

Pertemuan 11 Object Oriented Program

Tutorial FDM Nurul Huda 2008, bundled by samsonasik. Modul Java 1

KONSEP OOP: POLYMORPHISM

Konsep Pemrograman Berorientasi Obyek. Maria Ulfah S Nurochman

2015 BAHASA PEMROGRAMAN I. Pertemuan VI Inheritance (Pewarisan)

INHERITANCE. Gambar 1. Kelas Hierarki Java

Pemrograman Berorientasi. Polimorfisme dan Binding

ENKAPSULASI Data Hiding

I. Tujuan Instruksional Umum Mengenal konsep dasar berorientasi objek Memahami dan dapat mengimplementasikan Kelas dan Objek pada java.

Transkripsi:

Pemrograman Berorientasi Obyek Methods anton@ukdw.ac.id

Tanya jawab(1)

Tanya jawab(2)

Java Naming conventions Package names: start with lowercase letter E.g. java.util, java.net, java.io... Class names: start with uppercase letter E.g. File, Math... avoid name conflicts with packages avoid name conflicts with standard keywords in java system Variable, field and method names: start with lowercase letter E.g. x, out, abs... Constant names: all uppercase letters E.g. PI... Multi-word names: capitalize the first letter of each word after the first one E.g. HelloWorldApp, getname... Exceptionclassnames: (1) start with uppercase letter (2) end with Exception with normal exception and Error with fatal exception E.g. OutOfMemoryError, FileNotFoundException

Method Disebut juga behaviour Memiliki hak akses modifierseperti pada pertemuan sebelumnya Terdapat 2 jenis method: Asesor: method pengambil nilai, ada return value getter, getnamafield Mutator: method pengubah nilai Setter, setnamafield

Tujuan Method Untuk implementasi dari enkapsulasi Untuk melindungi pengaksesan langsung variabel class dari luar class Untuk menciptakan modularitas Untuk menciptakan konsep API Getter dan Setter tidak harus ada pada semua variabel class Client tidak perlu tahu detail sebuah isi variabel class dan juga isi method!

Kasus getter setter

Contoh

Remember this? getter setter

Apa bedanyaatribut berikut?

ImplementasiEnkapsulasi FacebookUser fu = new FacebookUser() fu.setusername( anton ); fu.setpassword( rahasia ); fu.setemail( anton@gmail.com );

Method invocation Pemanggilan method menggunakan tanda titik (.) static method: namaclass.method(arguments) non-static method: namaobject.method(arguments)

Method parameter Parameter yang ada pada suatu method Untuk memanggil method tersebut, kita mungkin perlu menyertakan parameter Contoh: public void setnama(string nama){ } //isi kode

Method Paramter Ada method yang bisa dipanggil tanpa membutuhkan parameter Contoh: public String getnama(){ } return this.nama;

Method Name Dalam satu class, bisa didefinisikan dua method atau lebih dengan nama method yang sama Yang membedakan method satu dengan Yang membedakan method satu dengan lainnya adalah jumlahdan jenisparameternya (signature nya)

Pengiriman parameter Pengirimanparameter padajava bersifat by value Ada dua value: Tipe data primitif Yang dikirimkan adalah nilainya(by value) Perubahan nilai variabel di dalam method tidak berdampak pada nilai variabel di luar method Tipedata object Yang dikirimkanadalah nilainya (alamatmemory object) by value Perubahan object di dalam method akan mempengaruhi object tersebut

Method parameter

Pass By Value class PassRef{ public static void main(string[] args) { Pencil plainpencil = new Pencil("PLAIN"); System.out.println("original color: " + plainpencil.color); paintred(plainpencil); plainpencil color: PLAIN plainpencil color: PLAIN p System.out.println("new color: " + plainpencil.color); } public static void paintred(pencil p) { } p.color = "RED"; p = null; plainpencil p color: RED plainpencil p color: RED } - You can change which object a parameter refers to inside a method without affecting the original reference which is passed - What is passed is the object reference, and it s passed in the manner of PASSING BY VALUE! NULL

Overloadingmethod public void println(string s) {... } public void println (int n) {... } public void println(double d) {... } System.out.println( Halo semua... ); System.out.println(10); System.out.println(3.1415);

Method yang sama public int hitung(int alas, int tinggi) {... } public int hitung(int a, int t) {... } Kedua method tersebut dianggap sama, anda akan gagal untuk kompilasi

Gagal kompilasi

Method signature public int hitung(int alas, int tinggi) {... } public int hitung(int a, int t) {... } public int hitung(int, int) -> method signature

Method signature Jikaadaduamethod bernamasama, method signature keduanya harus berbeda. Perbedaan dilihat dari jumlah dan urutan parameter public void daftar(string nama, int nim) public void daftar(int nim, String nama) public void daftar(string n, int id) public int daftar(string nama, int nim)

Overloading konstruktor Satu class bisa memiliki lebih dari 1 constructor Constructor harus berbeda (memiliki method signature yang berbeda) satu sama lain Tabungan(String nama, double saldo) Tabungan() Tabungan(String nama)

Contoh

Tanya Jawab

Tanya jawab

Class reuse Jika class-class berada dalam satu direktori yang sama, class bisa langsung digunakan Jika ingin menggunakan class yang berada dilokasi lain, gunakan keyword importdan package Class-class dikelompokkan dalam packagepackage

Contoh

Class reuse Class-class yang sudah ada bisa langsung digunakan Suatu saat kita butuh mengubah atau menambahkan fungsi baru/atribut baru ke class yang sudah ada Ada beberapa pilihan: Membuat class baru Mengubah class lama

Contoh penggunaan

Contoh kasus

Contoh Kasus

Contoh Kasus

Perubahan requirements

Cara prosedural

Cara OOP

Ada kesalahan!

Cara prosedural

Cara OOP

Tapi Dengan cara OOP, kita punya 4 method rotate() dan 4 method playsound() Seluruh method tersebut harus di-kelola satu- persatu Pada tahap ini, design OO masih belum selesai

Perhatikan

Akhirnya. Akan dibahas detail di pertemuan berikutnya...

Boxing dan Unboxing Tipe Data Primitive memiliki padanan tipe data Objectnya (Wrapper) Int-> Integer Boolean ->Boolean dan seterusnya

Boxing dan Unboxing Terjadi secara otomatis Boxing: Konversi dari primitive type kereference type Unboxing: Konversi dari reference type ke primitive type

Contoh Boxing

Contoh unboxing

Inheritance NEXT