Understanding Class Definition

dokumen-dokumen yang mirip
Understanding Class Definition. Viska Mutiawani, M.Sc

MODUL PRAKTIKUM PEMROGRAMAN BERORIENTASI OBJEK

Pemrograman Lanjut. Instance Variable Access Modifier Set dan Get Method

Membuat dan Menggunakan Class

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

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

Pemrograman Lanjut Class, Instance Variable dan Method PTIIK

Other OOP Basic. Viska Mutiawani, M.Sc

Pemrograman Lanjut. Class : Deeper Look 2

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

Pemrograman Lanjut. Class, dan Instance Variable. Aryo Pinandito, ST, M.MT Team Teaching Pemrograman Lanjut

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

Pemrograman Lanjut Tipe Data dan Constructor PTIIK

Struktur Kontrol. Contoh, Akan tercetak x is 100 jika nilai yang disimpan pada variable x adalah 100:

Java Basic. Variabel dan Tipe Data. Lokasi di dalam memori komputer yang digunakan untuk menyimpan suatu informasi (nilai)

Pemrograman Berorientasi. Class dan Obyek 2

int i = 0; while (i < 10) { System.out.println( Informatika Unpas ); i++; }

Prinsip-Perinsip Perancangan Kelas

Abstract Class dan Interface. Viska Mutiawani, M.Sc

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

MEMBUAT KELAS SENDIRI. Dewi Sartika, M.Kom

Percabangan & Perulangan

Grouping Object. Viska Mutiawani, M.Sc

Grafis & Applet. Viska Mutiawani, M.Sc

KUM 3 IMPLEMENTASI LIST

Modul Pelatihan : Pembuatan Game Animasi Menggunakan Greenfoot

PERTEMUAN III OBJEK DAN CLASS TUJUAN PRAKTIKUM

Pemrograman Lanjut Review Class dan Object PTIIK

Pemrograman Berorientasi. Abstract & Interface

Tabel 1. Instruksi untuk menampilkan teks No. Bahasa Pemrograman Instruksi 1. Pascal WRITE ( Bahasa pemrograman itu mudah );

Percabangan & Perulangan

Bahasa Pemrograman :: Polimorfism and Abstraction

IKG2I4 / Software Project I

Konsep Dasar Pemrograman Berorientasi Objek

IF PEMROGRAMAN LANJUT PERULANGAN. Oleh : Andri Heryandi, M.T.

Algoritma Pemrograman [BS204]

Pemrograman Lanjut. Constructor. Aryo Pinandito, ST, M.MT Team Teaching Pemrograman Lanjut

PEMROGRAMAN WEB 08 JavaScript Dasar

MODUL 6 PERULANGAN. A. String. 1. Instansiasi dan Inisialisasi. M0601xxyyy.jar

Pemrograman Lanjut. Interface

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

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

Praktikum 6 Class Design (Encapsulation)

6 Maret Structure of Java [Penyeleksian Kondisi]

Operator dan Assignment

CRITICAL REGIONS DAN MONITORS

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

Polymorphism (Polimorfisme)

Reserved words Reserved words atau keywords merupakan kata-kata spesifik digunakan oleh compiler untuk keperluan pemrograman. Contoh reserved words

Bahasa Pemrograman :: Inheritance

KENDALI PROSES. Untuk mengatur arus program, pemrograman java menyediakan struktur perulangan (looping), kondisional, percabangan, dan lompatan.

BAHASA PEMROGRAMAN JAVA PUTU INDAH CIPTAYANI JURUSAN SISTEM INFORMASI STMIK AMIKOM YOGYAKARTA

Praktikum 3 Konsep Class, Attribute dan Method

Selection, Looping, Branching

Pemrograman Berbasis Objek Operator dan Assignment

Bahasa Pemrograman :: Java Class Library

Tujuan : A. Percabangan Percabangan di dalam Java terdapat 2 macam, yaitu dengan memakai if dan switch.

LAPORAN RESMI PRAKTIKUM BAHASA PEMROGRAMAN

Politeknik Elektronika Negeri Surabaya

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

Pada akhir pertemuan ini, diharapkan mahasiswa memiliki kemampuan untuk: Menggunakan struktur kendali pencabangan bersyarat dalam bahasa pemrograman.

Object and All Things Related to It

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

PEMROGRAMAN VISUAL BASIC

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

INTERAKSI ANTAR OBJECT

Percabangan dan Perulangan

Enum. Yuliana Setiowati

BAB 6. Struktur Kontrol

BAB VII. CLASS DAN OBJECT

PERTEMUAN 3 OBJEK DAN CLASS

A. TUJUAN PEMBELAJARAN 1. Memahami mengenai konsep Enum 2. Memahami bentuk-bentuk penggunaan Enum 3. Memahami fungsi-fungsi yang terdapat di Enum

Enkapsulasi. Praktikum 7

PENYELEKSIAN /PERCABANGAN & PERULANGAN Part II. 5 th week Estu Sinduningrum ST,MT

2.1 if Jenis-jenis Percabangan if adalah if, if else, If else if else if - else

Review Bahasa Pemrograman Java Konsep OOP N I K O I B R A H I M, M I T F A K U L T A S T E K N O L O G I I N F O R M A S I

Kontrol Keputusan dan Pengulangan

DASAR PEMOGRAMAN JAVA

IF PEMROGRAMAN LANJUT TUGAS 1. Oleh : Andri Heryandi, M.T.

Kelas dan Objek. Oleh : Agus Priyanto, M.Kom

24/09/2017 PERCABANGAN

Penggunaan Algoritma Backtrack dan Aturan Warnsdorff Untuk Menyelesaikan Knight s Tour Problem

Modul Pelatihan : Pembuatan Game Animasi Menggunakan Greenfoot

Tipe Boolean. Oleh : Fiftin Noviyanto

BAB V PENYELEKSIAN KONDISI DAN PERULANGAN

Tujuan Instruksional. Mahasiswa mampu :

Tipe Boolean 20/01/2012. Oleh : Fiftin Noviyanto

[Lanjutan] Nurochman

MODUL PRAKTIKUM PEMROGRAMAN BERORIENTASI OBJEK (JAVA) PERTEMUAN 4 CONTROL FLOW STATEMENT

PEMROGRAMAN JAVA. Operator. Yoannita. Special thanks : Some slides are from Josephine Petrina K & Gasim Alkaff

Java Operators. Nurochman

Kita akan membuat class yang mengandung informasi dari Siswa dan operasi operasi yang dibutuhkan pada record siswa.

Struktur Kontrol. Gambar 1: Flowchart Statement If

Bahasa Pemrograman 2.

Pemograman Berorientasi Objek. Week 4 Initialization dan Instance dalam Kelas

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

SEKUEN, PERCABANGAN & PENGULANGAN

Game Technology Design Course College of Multi Media Yogyakarta Spring Tri Anggraeni, S.Kom., M.Sc.

UNIVERSITAS GUNADARMA

Pertemuan 4 ELEMEN-ELEMEN BAHASA PEMROGRAMAN

Transkripsi:

Understanding Class Definition Viska Mutiawani, M.Sc 1 Viska Mutiawani - Informatika FMIPA

Konsep penting fields constructors methods parameters assignment statements conditional statements 2 Viska Mutiawani - Informatika FMIPA

Ticket machines an external view Menyelidiki perilaku mesin tiket. Kita akan gunakan projek naive-ticket-machine. Mesin mengeluarkan tiket dengan harga tetap. Bagaimana cara menentukan harga? Bagaimana uang dimasukkan ke dalam mesin? Bagaimana mesin mencatat banyaknya uang yang telah dimasukkan? 3 Viska Mutiawani - Informatika FMIPA

Ticket machines an internal view Berinteraksi langsung dengan objek, akan memberikan petunjuk mengenai perilakunya. Telusuri lebih dalam untuk melihat bagaimana perilaku tersebut diimplementasikan. Java class yang akan dibuat merupakan internal view dari objek. 4 Viska Mutiawani - Informatika FMIPA

Basic class structure public class TicketMachine { Inner part of the class omitted. The outer wrapper of TicketMachine public class ClassName { Fields Constructors Methods The contents of a class 5 Viska Mutiawani - Informatika FMIPA

Fields/medan/keadaan Fields menyimpan nilai dari suatu objek. Juga dikenal sebagai instance variables. Pd BlueJ, gunakan pilihan Inspect utk menampilkan field dr suatu objek. Fields mendefinisikan keadaan suatu objek. public class TicketMachine { private int price; private int balance; private int total; Constructor and methods omitted. visibility modifier type variable name private int price; Viska Mutiawani - Informatika FMIPA

Constructors Method Constructors menginisialisasi suatu objek. Namanya haruslah sama dengan nama class. Menyimpan nilai awal dari field. Bisa saja memiliki eksternal parameter untuk memberi nilai awal pada field. public TicketMachine(int ticketcost) { price = ticketcost; balance = 0; total = 0; Viska Mutiawani - Informatika FMIPA

Passing data via parameters 8 Viska Mutiawani - Informatika FMIPA

Assignment Suatu nilai disimpan dalam field (dan variabel lainnya) via assignment statements: variable = expression; price = ticketcost; Satu variabel menyimpan satu nilai, jadi nilai sebelumnya akan hilang. 9 Viska Mutiawani - Informatika FMIPA

Methods Suatu Method merupakan implementasi perilaku dari objek. Secara umum ada 3: Method constructor: digunakan untuk mencipta objek dan memberi nilai awal pada objek yang dicipta Method accessor Method mutator Struktur method terdiri dari bagian header dan body. 10 Viska Mutiawani - Informatika FMIPA

Accessor methods Method Accessors: mengembalikan informasi mengenai objek. Bagian header mendefinisikan method s signature. public int getprice() Bagian body melingkupi semua method s statements. Terdapat statement return pada body. 11 Viska Mutiawani - Informatika FMIPA

Accessor methods return type visibility modifier method name public int getprice() { return price; parameter list (empty or not) return statement start and end of method body (block) 12 Viska Mutiawani - Informatika FMIPA

Mutator methods Struktur method yang sama: header dan body. Digunakan untuk mengubah keadaan suatu objek. Dengan cara mengubah nilai satu atau lebih field. Umumnya mengandung assignment statements. Umumnya menerima parameters. 13 Viska Mutiawani - Informatika FMIPA

Mutator methods visibility modifier return type (void) method name parameter public void insertmoney(int amount) { balance += amount; field being changed assignment statement 14 Viska Mutiawani - Informatika FMIPA

Printing from methods public void printticket() { // Simulate the printing of a ticket. System.out.println("##################"); System.out.println("# The BlueJ Line"); System.out.println("# Ticket"); System.out.println("# " + price + " cents."); System.out.println("##################"); System.out.println(); // Update the total collected with the balance. total += balance; // Clear the balance. balance = 0; 15 Viska Mutiawani - Informatika FMIPA

Lihat kembali mesin tiket yang dibuat Beberapa perilaku masih kurang sesuai seperti: Tiada pengecekan nilai uang yang masuk. Tiada kembalian. Tiada pengecekan initialization yg masuk akal. Cara memperbaiki? Perlu perilaku yang lebih bagus dan pintar. 16 Viska Mutiawani - Informatika FMIPA

Making choices public void insertmoney(int amount) { if(amount > 0) { balance += amount; else { System.out.println("Use a positive amount: " + amount); 17 Viska Mutiawani - Informatika FMIPA

Making choices if keyword boolean condition to be tested - gives a true or false result actions if condition is true if(perform some test) { Do the statements here if the test gave a true result else { Do the statements here if the test gave a false result else keyword actions if condition is false 18 Viska Mutiawani - Informatika FMIPA

Variabel lokal Fields juga merupakan variable. Field menyimpan nilai selama objek tersebut hidup. Field dpt diakses dalam satu class. Methods dapat memiliki variabel yang berumur singkat atau variabel lokal. Variabel ini hanya ada selama method tersebut dijalankan. Variabel ini hanya dpt diakses di dalam method. 19 Viska Mutiawani - Informatika FMIPA

Variabel lokal No visibility modifier A local variable public int refundbalance() { int amounttorefund; amounttorefund = balance; balance = 0; return amounttorefund; 20 Viska Mutiawani - Informatika FMIPA

Review Class terdiri dari fields, constructors dan methods. Fields menyimpan nilai yang menentukan keadaan suatu objek. Constructors mencipta objek. Methods memberikan implementasi perilaku dari objek. 21 Viska Mutiawani - Informatika FMIPA

Review Fields, parameters dan variabel lokal, semuanya merupakan variabel. Fields hidup selama objek tersebut hidup. Parameters digunakan untuk menerima nilai pada constructor atau method. Variabel lokal digunakan sebagai tempat penyimpanan sementara. 22 Viska Mutiawani - Informatika FMIPA

Review Objects dpt memiliki pilihan via conditional (if) statements. A true or false test memungkinkan hanya satu aksi yang dipilih dari beberapa alternatif pilihan. 23 Viska Mutiawani - Informatika FMIPA

Important things need to be done at home Siapkan komputer anda kemudian: Coba project naïve-ticket-machine pada BlueJ projects chapter 02 Coba project better-ticket-machine pada BlueJ projects chapter 02 Minggu depan akan ditanya pemahaman anda terhadap program tersebut. 24 Viska Mutiawani - Informatika FMIPA