Top Banner
Object Oriented Programming Package, Operator, Array, Inheritance
23

CCIT OOP Pertemuan 2

Jan 13, 2017

Download

Education

WIR Group
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: CCIT OOP Pertemuan 2

Object Oriented Programming

Package, Operator, Array, Inheritance

Page 2: CCIT OOP Pertemuan 2

PackagePackage bertujuan untuk mengelompokan

beberapa class yang disimpan dalam sebuah direktori yang memiliki nama yang sama dengan nama package-nya

Sangat membantu dalam pengaturan class-class sehingga memiliki struktur.

Biasanya dipakai jika membuat program dalam skala besar.

Page 3: CCIT OOP Pertemuan 2

Memakai Package

Page 4: CCIT OOP Pertemuan 2

Memanggil Packageimport <nama_package>.*;

Dapat memanggil semua class yang ada pada suatu package

import <nama_package>.nama_class;Dapat memanggil class tertentu yang ada pada suatu package

import javax.swing.*;Import java.awt.*;

Memanggil class-class yang sudah disediakan oleh JDK.

Page 5: CCIT OOP Pertemuan 2

OperatorAritmatikaRelasionalBitwiseLogikaAssigment

Page 6: CCIT OOP Pertemuan 2

Operator AritmatikaAritmatika

+-*/%++--

Contohint a = 10, b = 20, c

= 0;c = a+b; // 30c = a%b; // 0a--; // 9b++; // 21

Page 7: CCIT OOP Pertemuan 2

Operator RelationalRelational

==!=><>=<=

Kerjakan Hal 101

Page 8: CCIT OOP Pertemuan 2

Operator BitwiseBitwise

& (AND)| (OR)^ (XOR)~ (Not/Complement)<< (Left Shift)>> (Right Shift)>>> (Shift Right

Zero Fill)

Kerjakan Hal 103, Ganti variabel a menjadi 55 dan b menjadi 21

Page 9: CCIT OOP Pertemuan 2

Operator LogikaLogika

&& (AND)|| (OR)! (Not)

Biasanya operator ini digunakan untuk membandingkan 2 variabel yang memiliki tipe data boolean (true/false)

Kerjakan Hal 104

Page 10: CCIT OOP Pertemuan 2

Array / LarikDalam penerapan suatu program, object dari

suatu class dapat memiliki lebih dari 100 bahkan ribuan, namun tidak mungkin menamakan variabel dari object tersebut satu per satu.

Array yang merupakan sekumpulan variabel yang memiliki tipe data yang sama dan dinyatakan dengan nama variabel yang sama

Array terdiri dari 2 jenisArray 1 dimensiArray Multidimensi

Page 11: CCIT OOP Pertemuan 2

Array / LarikArray 1 DimensitipeData[] <nama_object_array>;<nama_object_array> = new tipeData[ukuran_array];

ContohString[] bulan;bulan = new String[12];bulan[0] = “Januari”;bulan[1] = “Februari”;dst

Page 12: CCIT OOP Pertemuan 2

Array / LarikLatihan

Buatlah variabel array untuk menyimpan nama-nama bulan Tampilkan nama-nama Bulan tersebut dengan teknik pengulangan ‘for’ atau ‘do while’ atau ‘while’

Page 13: CCIT OOP Pertemuan 2

Array / LarikArray Multi DimensitipeData[][] <nama_object_array>;<nama_object_array> = new tipeData[ukuran_array_dim_ke1][ukuran_array_dim_ke2];

Contohint[][] matrixA;matrixA = new int[3][3];matrixA[0][0] = 3;matrixA[0][1] = 2;matrixA[0][2] = 6;matrixA[1][0] = 6;matrixA[1][0] = 6;dst

Page 14: CCIT OOP Pertemuan 2

Array / LarikLatihan

Buatlah array multidimensi untuk membuat matrix 3x3 dari data dibawah ini

3 2 71 5 56 2 3

Matrix A

Page 15: CCIT OOP Pertemuan 2

InheritanceInheritance/Pewarisan

Digunakan untuk perluasan classContoh, class Karyawan dapat diperluas

menjadi Programmer, karena Programmer adalah seorang Karyawan namun memiliki perilaku lebih dari Karyawan Biasa

Class yang diwariskan juga disebut parent

Page 16: CCIT OOP Pertemuan 2

InheritancePenggunaan Keyword ‘extends’

class <nama_class> extends <class_yg_diwariskan>

Contoh:class Programmer extends Karyawan

Latihan, Compile Latihan1 pada Folder Inheritance

Page 17: CCIT OOP Pertemuan 2

InheritanceMemanggil Konstruktor pada class yang

diwariskan

public class Karyawan {public Karyawan() {System.out.println(“konstruktor karyawan”);}

}

Public class Programmer extends Karyawan {public static void main(String[] args) {new Programmer();}

}

Page 18: CCIT OOP Pertemuan 2

InheritanceMenggunakan keyword ‘super’ dan

membedakannya dengan keyword ‘this’Super

super(); // memanggil konstruktor parrentsuper.nama_atribut;super.nama_fungsi();

Super digunakan untuk memanggil konstruktor, atribut dan fungsi pada class parent

This digunakan untuk memanggil atribut dan fungsi pada class dirinya sendiri

Page 19: CCIT OOP Pertemuan 2

Inheritance Menggunakan keyword ‘super’ dan membedakannya dengan keyword

‘this’

public class Karyawan {public Karyawan() {System.out.println(“konstruktor karyawan”);}

}

Public class Programmer extends Karyawan {public void Coding() {super();this.Compile();}public void Compile() {

}public static void main(String[] args) {new Programmer();}

}

Page 20: CCIT OOP Pertemuan 2

InheritanceMethod Overriding

Merupakan fungsi yang ‘ditimpa’Contoh

Class Programmer merupakan perluasan/turunan dari class Karyawan

Jika class Karyawan memiliki fungsi Bekerja() dan Programmer juga memiliki fungsi Bekerja(), maka jika class Programmer memanggil fungsi Bekerja(), fungsi yang ada pada class-nya yang akan dipanggil, bukan fungsi parent-nya

Page 21: CCIT OOP Pertemuan 2

InheritanceMethod Overriding

public class Karyawan {void Bekerja() {System.out.println(“Karyawan Bekerja”);}

}

public class Programmer extends Karyawan {void Bekerja() {System.out.println(“Programmer Bekerja”);}

public static void main(String[] args) {new Programmer().Bekerja();}

}

Page 22: CCIT OOP Pertemuan 2

Inheritance dengan GUIimport javax.swing.*;import java.awt.*;

public class Karyawan extends JFrame {String nama = "“;

Container ctnPane = getContentPane();JLabel lblNama = new JLabel();JTextField txtNama = new JTextField();public Karyawan() {// inisialisasisetTitle("GUI Karyawan");ctnPane.setLayout(null);setSize(300, 80);

setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

// label namalblNama.setText("Nama Karyawan");lblNama.setBounds(new Rectangle(10, 8, 100, 20));ctnPane.add(lblNama);// text field namatxtNama.setBounds(new Rectangle(130, 8, 150, 20));ctnPane.add(txtNama);

show();}

}

Page 23: CCIT OOP Pertemuan 2

Tugas 2Tugas Teori1. Definisikan dengan bahasa dan pemahaman kalian masing-masing, apa itu Inheritance dan

Polimorphism.2. Dalam OOP Java, bisakah suatu Class diwariskan lebih dari 1 Class (Multi Inheritance)?

Tugas Praktek1. Buatlah GUI Form pengisian data Karyawan (nip, nama, pekerjaan, divisi dan 1 button 'OK') dengan

Inheritance/Pewarisan dari class JFrame(silahkan memodifikasi kode dari Latihan5_withGUI)*Nilai Tambah bagi yang bisa menambah perintah pada button2. Buatlah program seperti pada Latihan Inheritance dengan contoh lain.

*)-Kreatifitas Kode dan GUI terdapat nilai tambah-Mahasiswa boleh menambah atribut lainnya

Paling Lambat dikumpulkan hari Jum'at (20 April 2012) pukul 23.59 ke [email protected] Subject dengan format Nama | Kelas | Nama TugasCth : Budi | 2OOP1 | Tugas 2