IF Pengantar Logika dan Pemrograman Pertemuan ke-6

dokumen-dokumen yang mirip
PRAKTIKUM 3 KONSTRUKTOR DAN OVERLOADING

Pemrograman Berorientasi. Class dan Obyek 2

INTERAKSI ANTAR OBJECT

subclass class manapun private default protected public package yang sama

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

Dasar-Dasar OOP di Java

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

PERTEMUAN III OBJEK DAN CLASS TUJUAN PRAKTIKUM

Inheritance dan Kata Kunci static

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

Dasar-Dasar OOP di Java

Abstract Class dan Interface. Viska Mutiawani, M.Sc

A. TUJUAN PEMBELAJARAN 1. Memahami konsep package dan import 2. Menggunakan kata kunci this

Pemograman Berorientasi Objek. Week 4 Initialization dan Instance dalam Kelas

Dasar Pemrograman Java

Membuat dan Menggunakan Class

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

PRAKTIKUM 3 KONSTRUKTOR DAN OVERLOADING

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

Praktikum 6 Class Design (Encapsulation)

Modul Bahasa Pemrograman 1

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

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

Inheritance. Pertemuan 8 Pemrograman Berbasis Obyek

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

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

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

Pemrograman Berorientasi. Abstract & Interface

Bab 8. Dasar-Dasar OOP

Definisi Eksepsi (exception)

Modul Praktikum 4 Pemograman Berorientasi Objek

Inheritance (Pewarisan) Pengertian dasar inheritance

Employee employee=new Manager();

Jobsheet 09. Overloading and Overriding Method

Pemrograman Berbasis Objek Inheritance

Bahasa Pemrograman 2.

UJIAN TENGAH SEMESTER GENAP TA 2011/2012

Java Application. Aplikasi: Menampilkan Tulisan

CLASS, METHOD DAN MODIFIER

PERTEMUAN 3 OBJEK DAN CLASS

Polymorphism. Oleh : Agus Priyanto, M.Kom

SUMBER BELAJAR PENUNJANG PLPG

LAB PEMROGRAMAN I (JAVA FUNDAMENTAL) PERTEMUAN 3 Dosen : Bella Hardiyana S. Kom

Method / Fungsi / Sub Program

Pemrograman Dasar M E T H O D / F U N G S I

Method. Pemrograman Dasar Sistem Informasi PTIIK Herman Tolle

Inheritance. Topik 5/17/2013

ABSTRACTION, ENCAPSULATION, INHERITANCE & POLYMORPHISM

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

Pemrograman Berorientasi Objek Danu Wira Pangestu

Praktikum 3 Konsep Class, Attribute dan Method

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

Pemrograman Berorientasi Objek INHERITANCE

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

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

MODUL PRAKTIKUM PEMROGRAMAN BERORIENTASI OBJEK

BAB 3 CLASS DAN OBJECT. Tujuan:

Exception adalah penanda bahwa kondisi/kejadian yang tidak diinginkan telah terjadi pada program kita. Ada 2 jenis exception (+1 Error):

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

Obyektif : KONTROL ALUR PROGRAM

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

KONSEP OOP: PEWARISAN / INHERITANCE

Java Application. Menampilkan Tulisan

Pemrograman Berorientasi. Inheritance

[Lanjutan] Nurochman

PEMROGRAMAN JAVA. Yoannita, S.Kom. Input Kondisi (IF-ELSE, SWITCH)

Politeknik Elektronika Negeri Surabaya

KONSEP OOP: PEWARISAN / INHERITANCE

PEMROGRAMAN JAVA. Petunjuk Penulisan Program Token Aturan Penamaan Identifier Lingkungan /Scope dari variabel Tipe Data (i) Yoannita

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

PEMAHAMAN DASAR DASAR JAVA

INHERITANCE AND POLIMORPHISM PUTU INDAH CIPTAYANI JURUSAN SISTEM INFORMASI STMIK AMIKOM

MODUL 3 PEWARISAN TUJUAN DASAR TEORI

BAB II VARIABEL DAN TIPE DATA

2 TIPE DATA DAN VARIABEL

BAB 12 ENKAPSULASI, INHERITANCE DAN POLIMORPISME

Percabangan & Perulangan

PERTEMUAN 2 PEMOGRAMAN BERORIENTASI OBJEK L/O/G/O

UML (Unified Modelling Language)

Parent dan Child di Java

IKG2I4 / Software Project I

PEMROGRAMAN BERORIENTASI OBJEK

MODUL 1. CLASS, OBJECT, CONSTRUCTOR DAN METHOD

BAB 7 OVERLOADING DAN OVERRIDING

Overriding Method Overloading Method Class(iii) [Superclass and subclass] [constructor overloading] Keyword Super

Pengenalan pemrograman berorientasi obyek

Konsep Lanjut Pemrograman Objek

UJIAN TENGAH SEMESTER GENAP TA 2011/2012

Praktikum KPLBO Interaksi Objek II

PEWARISAN D E W I S A R T I K A, M. K O M

int fungsi_2() { int main() { fungsi_1(); fungsi_2(); return 0;

OBJECT ORIENTED PROGRAMMING (OOP)

Pewarisan Sifat Objek. Nur Hasanah, M.Cs

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

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

Algoritma dan Pemrograman FUNGSI

LAPORAN RESMI INHERITANCE

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

Algoritma Pemrograman [BS204]

Pemrograman Berorientasi Object

Transkripsi:

IF184982 Pengantar Logika dan Pemrograman Pertemuan ke-6 Misbakhul Munir IRFAN SUBAKTI 司馬伊凡 Мисбакхул Мунир Ирфан Субакти

constructor Blok kode yang mengawali obyek yang baru saja dibuat Mirip dengan instance method (function) tetapi bukan merupakan method/function karena ia tidak mempunyai kembalian tipe. Tipe khusus dari method/function Memiliki nama yang sama dengan nama class public class ClassKu { // Ini adalah constructor ClassKu() { 2

constructor (lanjutan) Untuk membuat obyek baru dari class ClassKu dengan cara memanggil new public class ClassKu { // Ini adalah constructor ClassKu() { ClassKu classku = new ClassKu(); 3

constructor: Contoh public class ClassKu { String nama; // Ini adalah constructor ClassKu() { this.nama = Nama yang dibuat di constructor ; public static void main(string args[]) { ClassKu classku = new ClassKu(); System.out.println(classKu.nama); Output: Nama yang dibuat di constructor 4

Tipe constructor Ada 3 jenis tipe constructor: Default Tidak mempunyai argument (no-arg constructor) Berparameter (mempunyai parameter: parameterized) 5

constructor: Default Jika kita tidak mengimplementasikan sembarang constructor Java compiler menyisipkan default constructor mewakili kita Tak dapat dijumpai di file Java (.java) kita disisipkan ke dalam kode waktu proses kompilasi dan akan muncul di file.class : public class ClassKu { public static void main(string args[]) { ClassKu classku = new ClassKu(); Compiler public class ClassKu { ClassKu() { public static void main(string args[]) { ClassKu classku = new ClassKu(); 6

no-arg constructor Jika kita mengimplementasikan sembarang constructor maka kita tidak lagi menerima default constructor dari Java compiler constructor yang tidak memiliki argument disebut dengan no-arg constructor Ciri-cirinya adalah sama dengan default constructor di dalamnya bisa terdapat sembarang kode, tidak seperti default constructor yang tidak mempunyai kode apa-apa public class ClassKu { public ClassKu() { System.out.println( Ini adalah no-arg constructor ; public static void main(string args[]) { new ClassKu(); Output: Ini adalah no-arg constructor 7

parameterized constructor (1) constructor dengan argument(s) (yang juga bisa disebut dengan parameter) parameterized constructor public class Mahasiswa { int mhsnrp; String mhsnama; public Mahasiswa(int mhsnrp, String mhsnama) { this.mhsnrp = mhsnrp; this.mhsnama = mhsnama; public info() { System.out.println( NRP: + mhsnrp + Nama: + mhsnama); public static void main(string args[]) { Mahasiswa mhs1 = new Mahasiswa(1007, Mukidi ); Mahasiswa mhs2 = new Mahasiswa(1008, Bunali ); mhs1.info(); mhs2.info(); Output: NRP: 1007 Nama: Mukidi NRP: 1008 Nama: Bunali 8

parameterized constructor (2) Kita punya 2 constructor: default dan parameterized constructor. Saat kita tidak melewatkan satu pun parameter di kala membuat obyek baru (dengan memanggil new) default constructor yang dipanggil. Namun saat kita melewatkan parameter maka parameterized constructor yang bersesuaian dengan parameter yang dilewatkan tadi yang akan dipanggil. public class Mahasiswa { Output: private int mhsnrp; private String mhsnama; public Mahasiswa() { this.mhsnrp = 1000; this.mhsnama = Mukiyo ; public Mahasiswa(int mhsnrp) { this.mhsnrp = mhsnrp; this.mhsnama = Bunali ; public Mahasiswa(int mhsnrp, String mhsnama) { public info() { this.mhsnrp = mhsnrp; this.mhsnama = mhsnama; System.out.println( NRP: + mhsnrp + Nama: + mhsnama); public static void main(string args[]) { NRP: 1000 Nama: Mukiyo NRP: 1006 Nama: Bunali Mahasiswa mhs1 = new Mahasiswa(); Mahasiswa mhs2 = new Mahasiswa(1006); Mahasiswa mhs3 = new Mahasiswa(1007, Mukidi ); mhs1.info(); mhs2.info(); mhs3.info(); NRP: 1007 Nama: Mukidi 9

parameterized constructor (3) Output kode di bawah ini adalah compilation error (kesalahan kompilasi) kode Mahasiswa mhs = new Mahasiswa() memanggil default constructor yang tidak kita punyai dalam program. Saat kita tidak mengimplementasikan sconstructor apa pun di dalam class compiler akan menyisipkan default constructor dalam kode kita. Namun saat kita mengimplementasikan sembarang constructor kita tidak akan lagi menerima default constructor dari compiler ke kode kita public class Mahasiswa { private int mhsnrp; private String mhsnama; public Mahasiswa(int mhsnrp, String mhsnama) { this.mhsnrp = mhsnrp; this.mhsnama = mhsnama; public info() { System.out.println( NRP: + mhsnrp + Nama: + mhsnama); public static void main(string args[]) { Mahasiswa mhs = new Mahasiswa(); mhs.info(); 10

Rantai constructor Saat sebuah constructor memanggil constructor yang lain dalam class yang sama rantai constructor public class Mahasiswa {... Mahasiswa() { this( Mukidi ); Mahasiswa(String nama) { this(nama, 1007); Mahasiswa(String nama, int nrp) { this.nama = nama; this.nrp = nrp; public static void main(string args[]) { Mahasiswa mhs = new Mahasiswa();... 11

super() Saat sebuah constructor child class (klas anak) dipanggil secara implisit constructor parent class (klas induk) juga akan dipanggil. Ini artinya secara compiler akan menyisipkan super(); pada awal constructor child class class Orang { Orang() { System.out.println( Constructor Orang ); class Mahasiswa extends Orang { Mahasiswa() { // Compiler menyisipkan super(); disini System.out.println( Constructor Mahasiswa ); public static void main(string args[]) { new Mahasiswa(); Output: Constructor Orang Constructor Mahasiswa 12

constructor Overloading Konsep di mana satu constructor bisa memiliki daftar parameter yang berbeda sehingga setiap constructor menjalankan tugas yang berbeda Di bawah ini terdapat 3 overloaded constructor mereka harus memiliki daftar parameter yang berbeda public class Mahasiswa {... Mahasiswa() {... Mahasiswa(String nama) {... Mahasiswa(String nama, int nrp) {...... 13

Java copy constructor Menyalin nilai dari satu obyek ke obyek yang lain public class Mahasiswa { String nama; Mahasiswa(String nama) { this.nama = nama; // Ini adalah Copy Constructor -> menyalin nilai dari satu obyek ke obyek yg lain // (obyek yg memanggil constructor ini) Mahasiswa(Mahasiswa mahasiswa) { nama = mahasiswa.nama; void cetaknama() { System.out.println( Nama: + nama); public static void main(string args[]) { Mahasiswa mhs1 = new Mahasiswa( Mukidi ); // Lewatkan obyek sebagai argument ke constructor -> Ini akan memanggil Copy Constructor Mahasiswa mhs2 = new Mahasiswa(mhs1); mhs1.cetaknama(); mhs2.cetaknama(); Output: Nama: Mukidi Nama: Mukidi 14

Method/function vs constructor Tujuan constructor inisialisasi obyek dari suatu class Method/function menjalankan suatu tugas/fungsi dengan mengeksekusi kode Java constructor tidak boleh berupa abstract, final, static dan synchronized Method/function boleh berupa abstract, final, static dan synchronized constructor tidak memiliki return type (tipe pengembalian) Method/function memiliki return type 15

Latihan 1: Genap Cetaklah bilangan genap dari 0 sampai bilangan yang dimasukkan user Contoh hasil: Masukkan bilangan: 10 0 2 4 6 8 10 16

Latihan 2: Terkecil Buatlah program yang menerima input/masukan bilangan bulat dari user Bila user memasukkan bilangan negatif, tampilkan bilangan terkecil dari semua bilangan yang dimasukkan user. Contoh hasil: Masukkan bilangan: 10 Masukkan bilangan: 15 Masukkan bilangan: 3 Masukkan bilangan: -7 Bilangan terkecil: 3 17

Latihan 2: Terkecil (program) Buatlah program yang menerima input/masukan bilangan bulat dari user Bila user memasukkan bilangan negatif, tampilkan bilangan terkecil dari semua bilangan yang dimasukkan user. Contoh hasil: Masukkan bilangan: 10 Masukkan bilangan: 15 Masukkan bilangan: 3 Masukkan bilangan: -7 Bilangan terkecil: 3 18

Latihan 3: Bintang Program yang menerima masukan bilangan bulat n dari user. Tampilkan karakter * (bintang) sebanyak n di baris pertama. Lalu tampilkan karakter * sebanyak n-1 di baris ke-2, n-2 di baris ke-3, n-3 di baris ke-4, dst. Contoh hasil: Masukkan bilangan: 6 ****** ***** **** *** ** * 19

Latihan 4: Kebalikan Program yang menerima masukan/input sebuah kata dari user. Tampilkan kebalikan kata dari masukan/input user tadi. Contoh hasil 1: Masukkan kata: katak katak kebalikannya: katak katak adalah palindrome Contoh hasil 2: Masukkan kata: plastik plastik kebalikannya: kitsalp plastik bukan palindrome 20

Latihan 5: Pertama di Alfabet Program yang menerima masukan/input sebuah kata dari user. Tampilkan karakter alfabet pertama dari kata itu. Contoh hasil 1: Masukkan kata: katak Karakter pertama alfabetnya: a Contoh hasil 2: Masukkan kata: heboh Karakter pertama alfabetnya: b 21

Latihan 6: Urutan Alfabet Program yang menerima masukan/input sebuah kata dari user. Tampilkan karakter dari kata itu sesuai dengan urutan alfabetnya. Dari Java API untuk String, gunakan fungsi substring() mendapatkan sub (bagian) dari sebuah kata, juga fungsi indexof() mendapatkan indeks dari suatu karakter di suatu kata. Contoh hasil: Masukkan kata: monyet Urutan alfabetnya: e m n o t y 22