The words you are searching are inside this book. To get more targeted content, please make full-text search by clicking here.

a. PI1 Diktat Pemrograman Berorientasi Objek Kelas XI RPL Semester Gasal_ANTIK HARIYANTI

Discover the best professional documents and content resources in AnyFlip Document Base.
Search
Published by desi.bpdikjur, 2021-12-22 02:16:13

a. PI1 Diktat Pemrograman Berorientasi Objek Kelas XI RPL Semester Gasal_ANTIK HARIYANTI

a. PI1 Diktat Pemrograman Berorientasi Objek Kelas XI RPL Semester Gasal_ANTIK HARIYANTI

DIKTAT

PEMROGRAMAN BERORIENTASI OBJEK
SMK KELAS XI RPL

Nama Disusun Oleh:
NIP
: ANTIK HARIYANTI, S.Kom.
: 19841108 201001 1 015

PEMERINTAH PROVINSI JAWA TENGAH
DINAS PENDIDIKAN DAN KEBUDAYAAN

SMK NEGERI 4 KENDAL
TAHUN 2021

SEMESTER 1







KATA PENGANTAR
Puji syukur penulis panjatkan ke hadirat Tuhan Yang Maha Esa, karena
berkat rahmat, taufik dan hidayah-Nya penulis dapat menyelesaikan Diktat
Pemrograman Berorientasi Objek SMK Kelas XI RPL semester 1 tanpa halangan
yang berarti.

Penyelesaian diktat ini tidak terlepas dari bantuan berbagai pihak, oleh
karena itu penulis sampaikan terima kasih kepada:
1. Suharto, S.Pd., M.Pd selaku Kepala SMK N 4 Kendal atas motivasi dan

kesempatan yang diberikan
2. Bapak Ibu Pendidik SMK N 4 Kendal
3. Pihak – pihak lain yang cukup besar andilnya dalam penyelesaian Diktat ini.

Demikian pengantar yang dapat penulis sampaikan, semoga diktat ini dapat
bermanfaat dalam pembelajaran

Kendal, Juli 2021
Penulis

iv

DAFTAR ISI

HALAMAN JUDUL............................................................................................. i
LEMBAR PENGESAHAN ................................................................................. ii
SURAT KETERANGAN ..................................................................................... iii
KATA PENGANTAR ......................................................................................... iv
DAFTAR ISI ........................................................................................................ v
DAFTAR TABEL................................................................................................. vii
DAFTAR GAMBAR ............................................................................................ ix
TUJUAN DIKTAT ............................................................................................... x
BAB I. KONSEP PEMROGRAMAN BERORIENTASI OBJEK .................. 1

A. Konsep Pemrograman Berorientasi Objek ................................... 1
B. Pengertian Objek .......................................................................... 2
C. Paradigma Bahasa Pemrograman ................................................. 3
D. Aktivitas Siswa.............................................................................. 4
E. Latihan Soal................................................................................... 5
BAB II. DASAR DAN ATURAN PBO ........................................................... 10
A. Perangkat Pemrograman Berorientasi Objek Java ........................10
B. Mempersiapkan Lingkungan Kerja Java .......................................12
C. Aturan Dasar Program Java ...........................................................15
D. Konstanta .......................................................................................17
E. Keyword .........................................................................................17
F. Tipe Data ........................................................................................18
G. Operator..........................................................................................19
H. Separator.........................................................................................20
I. Struktur Kontrol Percabangan ........................................................24
J. Struktur Kontrol Perulangan...........................................................28
K. Mengolah Input Data Sederhana Melalui Keyboard ......................31
L. Aktivitas Siswa...............................................................................34
M. Latihan Soal....................................................................................36
BAB III. MENERAPKAN KONSEP CLASS, OBJEK DAN METHOD ......... 43
A. Pengertian class, objek, dan method ............................................. 43

v

B. Membuat Class Sederhana ........................................................... 44
C. Membuat Properti Class ................................................................ 45
D. Membuat Objek ............................................................................. 47
E. Konstruktor.................................................................................... 49
F. Method pada Class ........................................................................ 50
G. Parameter ....................................................................................... 56
H. Aktivitas Siswa.............................................................................. 58
I. Latihan Soal................................................................................... 59
BAB IV PERLINDANGAN DATA DAN INFORMASI (ENKAPSULASI) .... 63
A. Enkapsulasi..................................................................................... 63
B. Public .............................................................................................. 63
C. Private............................................................................................. 65
D. Protected ......................................................................................... 67
E. Default ............................................................................................ 69
F. Latihan Soal.................................................................................... 70
BAB V PEWARISAN ......................................................................................... 72
A. Konsep Inheritance atau Pewarisan ................................................ 72
B. Jenis Inheritance atau Pewarisan .................................................... 74
C. Latihan Soal.................................................................................... 78
BAB VI POLIMORFISME ................................................................................. 81
A. Polimorfisme .................................................................................. 81
B. Overloading .................................................................................... 83
C. Overriding....................................................................................... 85
D. Final................................................................................................ 87
E. Latihan Soal.................................................................................... 88

DAFTAR PUSTAKA

vi

DAFTAR TABEL
Halaman

Tabel 3.1 ............................................................................................................... 18

vii

DAFTAR GAMBAR
Halaman

Gambar 1.1 Objek dan Atribut............................................................................. 3
Gambar 2.1 JDK................................................................................................... 12
Gambar 2.2 JDK dan IDE Netbeans .................................................................... 13
Gambar 2.3 Tampilan Netbeans........................................................................... 13
Gambar 2.4 Java Application............................................................................... 14
Gambar 2.5 Project Name .................................................................................... 14
Gambar 2.6 Tampilan Class hello_world............................................................. 15
Gambar 2.7 Analisa Program................................................................................ 15
Gambar 2.8 Keyword Java................................................................................... 18
Gambar 3.2 Membuat Project di Java NetBeans ................................................. 44
Gambar 3.3 Hasil Pembuatan project dan class pada NetBeans ......................... 45
Gambar 6.1 Konsep Polimorfisme....................................................................... 56

viii

TUJUAN DIKTAT PELAJARAN PEMROGRAMAN BERORIENTASI OBJEK
Tujuan disusunnya diktat pelajaran Pemrograman Berorientasi Objek semester
1 ini adalah:
1. Sebagai salah satu sumber belajar bagi siswa
2. Mempermudah dalam pembelajaran
3. Menambah keterampilan siswa dalam mengerjakan soal
4. Menambah wawasan pengetahuan siswa
5. Membantu guru dalam menyajikan pembelajaran

ix

SILABUS M

Nama Sekolah : SMK NEGERI 4 KENDAL

Bidang Keahlian : Teknologi Informasi dan Komunikasi

Kompetensi Keahlian : Rekayasa Perangkat Lunak

Mata Pelajaran : Pemrograman Berorientasi Obyek

Durasi (Waktu) : 272 jam (8x34 Pertemuan)

Kelas/Semester : XI RPL/GASAL-GENAP

KI-3 (Pengetahuan) : Memahami, menerapkan, menganalis
operasional dasar, dan metakognitif
KI-4 (Keterampilan) : Informatika pada tingkat teknis, spes
teknologi, seni, budaya, dan humanio
keluarga, sekolah, dunia kerja, warga

Melaksanakan tugas spesifik, dengan
dilakukan serta menyelesaikan masa
Komputer dan Informatika. Menampi
sesuai dengan standar kompetensi ke
secara efektif, kreatif, produktif, kritis,
terkait dengan pengembangan dari y
spesifik dibawah pengawasan langsu
membiasakan gerak mahir, menjadik
konkret terkait dengan pengembangan
tugas spesifik dibawah pengawasan la

MATA PELAJARAN

sis, dan mengevaluasi tentang pengetahuan faktual, konseptual,
sesuai dengan bidang dan lingkup kerja Teknik Komputer dan
sifik, detil, dan kompleks, berkenaan dengan ilmu pengetahuan,

ora dalam konteks pengembangan potensi diri sebagai bagian dari
masyarakat nasional, regional, dan internasional.
n menggunakan alat, informasi, dan prosedur kerja yang lazim
alah sederhana sesuai dengan bidang dan lingkup kerja Teknik
ilkan kinerja mandiri dengan mutu dan kuantitas yang terukur
erja.Menunjukkan keterampilan menalar, mengolah, dan menyaji
, mandiri, kolaboratif, komunikatif, dan solutif dalam ranah abstrak
yang dipelajarinya di sekolah, serta mampu melaksanakan tugas
ung.Menunjukkan keterampilan mempersepsi, kesiapan, meniru,
kan gerak alami, sampai dengan tindakan orisinal dalam ranah
n dari yang dipelajarinya di sekolah, serta mampu melaksanakan
angsung.

1

Kompetensi Dasar Indikator Pencapaian Kompetensi

12

3.1 Memahami konsep 3.1.1 Menjelaskan konsep dasar

pemrograman pemrograman berorientasi obyek.

berorientasi objek 3.1.2 Menjelaskan prosedur pemrograman

berorientasi obyek.

4.1 Mempresentasikan 3.1.3 Menjelaskan perbandingan antara

konsep pemrograman pemrograman berorientasi obyek

berorientasi objek dengan pemrograman struktural.

4.1.1 Mempresentasikan konsep

pemrograman berorientasi obyek.

3.2 Menerapkan dasar 3.2.1 Menjelaskan berbagai tools
dan aturan pengembang program berorientasi
pemrograman obyek.
berorientasi objek
3.2.2 Menjelaskan konfigurasi tools
4.2 Membuat kode pengembang perangkat lunak
program dasar dan
aturan pemrograman berorientasi obyek.
berorientasi objek 3.2.3 Menjelaskan kebutuhan tools editor

program berorientasi obyek.

Alokasi

Materi Pokok Waktu Kegiatan Pembelajaran Penilaian

3 (JP)
• Konsep pemrograman
45 6
berorientasi obyek.
• Prosedur pemrograman 8 • Mengamati untuk
mengidentifikasi
berorientasi obyek. dan merumuskan
• Keunggulan masalah tentang
konsep
pemrograman pemrograman
berorientasi obyek berorientasi objek
terhadap pemrograman
struktural. • Mengumpulkan
data tentang
• Macam-macam konsep
perangkat lunak pemrograman
pengembang program berorientasi objek
berorientasi obyek.
• Mengolah data
• Prosedur instalasi dan tentang konsep
konfigurasi tools pemrograman
pengembang aplikasi berorientasi objek

2 • Mengomunikasikan

tentang konsep
pemrograman
berorientasi objek
24 • Mengamati untuk
mengidentifikasi
dan merumuskan
masalah tentang
dasar dan aturan
pemrograman
berorientasi objek

• Mengumpulkan
data tentang dasar

3.3 Menerapkan konsep 3.2.4 Menjelaskan struktur dasar dalam
class, method dan pemrograman berorientasi obyek.
object
3.2.5 Menjelaskan prosedur kompilasi
4.3 Membuat class, program.
method dan object
3.2.6 Menjelaskan tata cara menjalankan
program hasil kompilasi.

3.2.7 Menerapkan prosedur aturan

pemrograman berorientasi obyek.
4.2.1 Menginstalasi tools pengembang

program aplikasi berorientasi obyek

kedalam komputer.
4.2.2 Mengkonfigurasi tools pengembang

program aplikasi berorientasi obyek.
4.2.3 Merencanakan program aplikasi

sederhana berorientasi obyek.

4.2.4 Membuat kode program aplikasi
sederhana berorientasi obyek.

4.2.5 Menjalankan program aplikasi
sederhana berorientasi obyek.

3.3.1 Menjelaskan konsep class dalam

pemrograman berorientasi obyek.
3.3.2 Menerapkan class dalam

pemrograman berorientasi obyek.
3.3.3 Menjelaskan konsep method dalam

pemrograman berorientasi obyek.

3.3.4 Menerapkan method dalam
pemrograman berorientasi obyek.

3.3.5 Menjelaskan konsep obyek dalam
pemrograman berorientasi obyek.

3.3.6 Menerapkan obyek dalam

pemrograman berorientasi obyek.

program berorientasi dan aturan
obyek. pemrograman
berorientasi objek
• Prosedur Kompilasi • Mengolah data
tentang dasar dan
• Menjalankan program aturan
hasil kompilasi. pemrograman
berorientasi objek
• Prosedur patching
komputer. • Mengomunikasikan

• Aplikasi editor tentang dasar dan
aturan
• Virtual machine pemrograman
berorientasi objek

• Konsep Class, object, 24 • Mengamati untuk
method dalam oop. mengidentifikasi
dan merumuskan
• Penamaan file dalam masalah tentang
oop konsep class,
method dan object
• Penerapan class dan
method dalam program • Mengumpulkan
aplikasi oop. data tentang
konsep class,
3 method dan object

• Mengolah data
tentang konsep
class, method dan
object

3.4 Menerapkan konsep 4.3.1 Merancang program aplikasi
enkapsulasi dalam berorientasi obyek dengan penerapan
melindungi data dan class, method dan obyek.
informasi
4.3.2 Membuat kode program aplikasi
4.4 Membuat kode berorientasi obyek dengan penerapan
program enkapsulasi class, method dan obyek.
dalam melindungi
data 4.3.3 Menguji program aplikasi berorientasi
obyek yang menerapkan class, method
dan obyek.

3.4.1 Menjelaskan konsep dan tujuan
proses enkapsulisasi dalam
pemrograman aplikasi berorientasi
obyek.

3.4.2 Menjelaskan prosedur enkapsulisasi
dalam pemrograman aplikasi
berorientasi obyek.

3.4.3 Menjelaskan persyaratan proses
enkapsulisasi dalam pemrograman
aplikasi berorientasi obyek.

3.4.4 Menerapkan prosedur enkapsulisasi
dalam pemrograman aplikasi
berorientasi obyek.

4.4.1 Merancang program aplikasi
berorientasi obyek dengan penerapan
enkapsulisasi dalam melindungi data
dan informasi.

4.4.2 Membuat kode program aplikasi
berorientasi obyek yang menerapkan
enkapsulisasi.

4.4.3 Menguji program aplikasi berorientasi
obyek yang menerapkan
enkapsulisasi.

i • Mengomunikasikan
d
tentang konsep
• Konsep enkapsulasi class, method dan
dalam program aplikasi object
berbasis oop.
24 • Mengamati untuk
• Prosedur enkapsulasi mengidentifikasi
dalam program aplikasi dan merumuskan
berbasis oop. masalah tentang
konsep
• Prosedur rancangan enkapsulasi dalam
program aplikasi melindungi data
berbasis oop dengan dan informasi
penerapan enkapsulasi.
• Mengumpulkan
• Keunggulan data tentang
enkapsulasi dalam konsep
program aplikasi enkapsulasi dalam
berbasis oop melindungi data
dan informasi
i
• Mengolah data
4 tentang konsep
enkapsulasi dalam
melindungi data
dan informasi

• Mengomunikasikan

tentang konsep
enkapsulasi dalam
melindungi data
dan informasi

3.5 Menerapkan konsep 3.5.1 Menjelaskan konsep dan tujuan prose

pewarisan pewarisan dalam pemrograman

aplikasi berorientasi obyek.

4.5 Membuat hubungan 3.5.2 Menjelaskan prosedur pewarisan

antara class dengan dalam pemrograman aplikasi

pola pewarisan berorientasi obyek.

3.5.3 Menjelaskan keterkaitan antara class

dan pewarisan dalam pemrograman

aplikasi berorientasi obyek.

3.5.4 Menerapkan prosedur pewarisan

dalam pemrograman aplikasi

berorientasi obyek

4.5.1 Merancang program aplikasi

berorientasi obyek dengan penerapan

pewarisan dalam melindungi data dan

informasi.

4.5.2 Membuat kode program aplikasi

berorientasi obyek yang menerapkan

pewarisan.

4.5.3 Menguji program aplikasi berorientasi

obyek yang menerapkan pewarisan.

3.6 Menerapkan konsep 3.6.1 Menjelaskan konsep polymorphism

polymorphism dengan dengan overloading dan overriding
overloading dan dalam pemrograman aplikasi

overriding berorientasi obyek.

3.6.2 Menjelaskan prosedur polymorphism
4.6 Membuat kode dengan overloading dan overriding

program sesuai dalam pemrograman aplikasi

konsep polymorphism berorientasi obyek.

dengan overloading 3.6.3 Menerapkan prosedur polymorphism
dan overriding dengan overloading dan overriding

dalam pemrograman aplikasi

berorientasi obyek

es • Konsep enheritance 32 • Mengamati untuk
(pewarisan) dalam mengidentifikasi
program aplikasi dan merumuskan
berbasis oop. masalah tentang
konsep pewarisan
• Prosedur enheritance
(pewarisan) dalam • Mengumpulkan
program aplikasi data tentang
berbasis oop. konsep pewarisan

• Prosedur rancangan • Mengolah data
program aplikasi tentang konsep
berbasis oop dengan pewarisan
penerapan enheritance
(pewarisan). • Mengomunikasikan

• Keunggulan enheritance tentang konsep
n (pewarisan) dalam pewarisan

program aplikasi 32 • Mengamati untuk
berbasis oop mengidentifikasi
dan merumuskan
i masalah tentang
konsep
• Konsep polymorphism polymorphism
dengan overloading dan dengan overloading
overriding dalam dan overriding
program aplikasi
berbasis oop. • Mengumpulkan
data tentang
• Prosedur polymorphism konsep
dengan overloading dan polymorphism
overriding dalam
program aplikasi
berbasis oop.

• Prosedur rancangan
program aplikasi

5

3.7 Menerapkan 4.6.1 Merancang program aplikasi
penggunaan package berorientasi obyek dengan penerapan
dalam aplikasi polymorphism dengan overloading dan
overriding dalam melindungi data dan
4.7 Membuat aplikasi informasi.
melalui
pengelompokan class 4.6.2 Membuat kode program aplikasi
dalam package berorientasi obyek yang menerapkan
polymorphism dengan overloading dan
overriding.

4.6.3 Menguji program aplikasi berorientasi
obyek yang menerapkan polymorphism
dengan overloading dan overriding.

3.7.1 Menjelaskan konsep package dalam
pemrograman aplikasi berorientasi
obyek.

3.7.2 Menjelaskan proses pengelompokan
class dalam pembuatan package.

3.7.3 Menjelaskan prosedur pembuatan
package dalam pemrograman aplikasi
berorientasi obyek.

3.7.4 Menjelaskan proses kompilasi
package.

3.7.5 Menerapkan package dalam
pemrograman aplikasi berorientasi
obyek

4.7.1 Merancang program aplikasi
berorientasi obyek dengan penerapan
package

4.7.2 Membuat kode program aplikasi
berorientasi obyek yang menerapkan

package.
4.7.3 Menguji program aplikasi berorientasi

obyek yang menerapkan package.

berbasis oop dengan dengan overloading
penerapan dan overriding
n polymorphism dengan • Mengolah data
n overloading dan tentang konsep
overriding. polymorphism
• Keunggulan dengan overloading
polymorphism dengan dan overriding
n overloading dan
overriding dalam • Mengomunikasikan
i program aplikasi
m berbasis oop tentang konsep
polymorphism
• Konsep package dalam dengan overloading
program aplikasi dan overriding
berbasis oop. 32 • Mengamati untuk
mengidentifikasi
• Prosedur pembuatan dan merumuskan
package dalam masalah tentang
program aplikasi penggunaan
package dalam
i berbasis oop. aplikasi
• Prosedur rancangan • Mengumpulkan
program aplikasi data tentang
berbasis oop dengan penggunaan
penerapan package. package dalam
• Prosedur kompilasi aplikasi
package dalam • Mengolah data
pemrograman berbasis tentang
oop. penggunaan
• Keunggulan package package dalam
dalam program aplikasi aplikasi
berbasis oop
• Mengomunikasikan
i
tentang
6 penggunaan

3.8 Merancang 3.8.1 Menjelaskan konsep interface dalam
pembuatan interface pemrograman aplikasi berorientasi

4.8 Membuat rancangan obyek.
aplikasi dengan 3.8.2 Menjelaskan prosedur pembuatan
interface
interface dalam pemrograman aplikasi
berorientasi obyek.
3.8.3 Menerapkan interface dalam
pemrograman aplikasi berorientasi
obyek

4.8.1 Merancang program aplikasi
berorientasi obyek dengan penerapan
interface

4.8.2 Membuat kode program aplikasi
berorientasi obyek yang menerapkan

interface.
4.8.3 Menguji program aplikasi berorientasi

obyek yang menerapkan interface.

3.9 Menganalisis 3.9.1 Menjelaskan konsep class library
pemanfaatan class dalam pemrograman aplikasi
library berorientasi obyek.

4.9 Menggunakan class 3.9.2 Menjelaskan prosedur pemanfaatan
library dalam
memecahkan class library dalam pemrograman
masalah aplikasi berorientasi obyek.

3.9.3 Menganalisis pemanfaatan class
library dalam pemrograman aplikasi
berorientasi obyek.

package dalam
aplikasi

• Konsep interface dalam 32 • Mengamati untuk
program aplikasi mengidentifikasi
berbasis oop. dan merumuskan
masalah tentang
• Prosedur pembuatan pembuatan
i interface dalam interface

program aplikasi • Mengumpulkan
berbasis oop. data tentang
• Prosedur rancangan pembuatan
program aplikasi interface
berbasis oop dengan
penerapan interface. • Mengolah data
• Prosedur kompilasi tentang pembuatan
package dalam interface
pemrograman berbasis
oop. • Mengomunikasikan
i • Keunggulan interface
dalam program aplikasi tentang pembuatan
berbasis oop interface

• Konsep class library 32 • Mengamati untuk
dalam program aplikasi mengidentifikasi
berbasis oop. dan merumuskan
masalah tentang
• Prosedur penerapan pemanfaatan class
class library dalam library
program aplikasi
berbasis oop. • Mengumpulkan
data tentang
• Prosedur rancangan
program aplikasi

7

3.10 Mengevaluasi 3.9.4 Menentukan penggunaan class library
penanganan dalam pemrograman aplikasi
kesalahan dalam
program berorientasi obyek.
3.9.5 Menerapkan class library dalam
4.10 Memodifikasi kode
program untuk pemrograman aplikasi berorientasi
penanganan obyek.
kesalahan dalam 4.9.1 Merancang program aplikasi
program
berorientasi obyek dengan penerapan
class library.
4.9.2 Membuat kode program aplikasi
berorientasi obyek yang menerapkan

class library.
4.9.3 Menguji program aplikasi berorientasi

obyek yang menerapkan class library.

3.10.1 Menjelaskan konsep error handling
(penanganan kesalahan) dalam

pemrograman aplikasi berorientasi
obyek.

3.10.2 Menjelaskan prosedur error handling
(penanganan kesalahan) dalam

pemrograman aplikasi berorientasi
obyek.
3.10.3 Menganalisis penanganan kesalahan

(error handling ) dalam pemrograman
aplikasi berorientasi obyek.

3.10.4 Menentukan penggunaan error
handling (penanganan kesalahan)
dalam pemrograman aplikasi

berorientasi obyek.
3.10.5 Menerapkan error handling

(penanganan kesalahan) dalam
pemrograman aplikasi berorientasi
obyek.

y berbasis oop dengan pemanfaatan class
penerapan class library. library
• Mengolah data
• Prosedur kompilasi tentang
program aplikasi dengan pemanfaatan class
penerapan class library library
pemrograman berbasis
oop. • Mengomunikasikan

• Keunggulan program tentang
dengan pernerapan pemanfaatan class
class library dalam library
program aplikasi
berbasis oop 32 • Mengamati untuk
mengidentifikasi
i dan merumuskan
. masalah tentang
penanganan
• Konsep penanganan kesalahan dalam
kesalahan dalam program
program aplikasi
berbasis oop. • Mengumpulkan
data tentang
g • Prosedur penangan penanganan
kesalahan (error kesalahan dalam
handling) dalam program
pemrograman berbasis
• Mengolah data
n oop. tentang
n • Prosedur pembuatan penanganan
kesalahan dalam
program aplikasi program
berbasis oop dengan
penanganan kesalahan • Mengomunikasikan

8 tentang

4.10.1 Merancang program aplikasi
berorientasi obyek dengan penerapan
error handling (penanganan
kesalahan).

4.10.2 Membuat kode program aplikasi
berorientasi obyek yang menerapkan
error handling (penanganan
kesalahan).

4.10.3 Menguji program aplikasi berorientas
obyek yang menerapkan error
handling (penanganan kesalahan).

4.10.4 Memperbaiki penanganan kesalahan
(error handling) dalam program
aplikasi berorientasi obyek.

4.10.5 Memodifikasi penanganan kesalahan
(error handling) dalam program
aplikasi berorientasi obyek.

Mengetahui:
Kepala Sekolah,

SUHARTO,S.Pd.,M.Pd.
NIP. 19670627 199003 1 008

n penanganan
n kesalahan dalam
si program
n
n Kendal, Juli 2021
Guru Mata Pelajaran,
9 ANTIK HARIYANTI, S.Kom.
NIP. 19801102 201101 2 005

BAB 1 Konsep Pemrograman Berorientasi Objek

Tujuan Pembelajaran:
1. Menjelaskan konsep dasar pemrograman berorientasi obyek.
2. Menjelaskan prosedur pemrograman berorientasi obyek.
3. Menjelaskan perbandingan antara pemrograman berorientasi obyek dengan

pemrograman struktural.
4. Mempresentasikan konsep pemrograman berorientasi obyek.
5. Peserta didik dapat membuat program bahasa Java sederhana.

A. Konsep Pemrograman Berorientasi Objek
Di dalam bahasa pemrograman prosedural seperti pascal atau C, programmer

bertugas untuk merancang dan menerapkan pengelompokan logis dari tipe data, serta
fungsi-fungsi yang akan digunakan dalam memecahkan masalah. Variabel dan tipe data
disusun sedemikian rupa secara sistematis.

Langkah pemecahan masalah dalam pemrograman prosedural terbagi menjadi dua,
yaitu sebagai berikut:
1. Melakukan identifikasi masalah
2. Secara sistematis membagi suatu masalah menjadi submasalah (subprosedur)

Kesulitan yang akan dihadapi dalam menggunakan teknik pemrograman jenis ini
adalah pemeliharaannya membutuhkan waktu yang lama dan jika melakukan
pegembangan di satu bagian akan mempengaruhi bagian yang lainnya.

Pemrograman Berorientasi Objek atau PBO adalah sebuah teknik pemrograman yang
unik, menarik, serta penuh tantangan. PBO diciptakan untuk memenuhi kebutuhan pasar
yang semakin berkembang dalam bidang pemrograman. Di dalam PBO terdapat class dan
objek, seperti halnya sebuah pabrik yang menghasilkan produk yang dibutuhkan pasar.
Pabrik atau class akan menciptakan komponen yang dibutuhkan untuk merakit objek.
Ada 4 ciri-ciri Pemrograman Berorientasi Objek, yaitu:

1|Page

a. Enkapsulasi (Encapsulation) adalah membungkus atau menyatukan data beserta
method-method nya sebagai satu unit.

b. Pewarisan (Inheritance) adalah konsep bahwa properti dari suatu class dapat diwarisi
oleh class lainnya.

c. Polimorfisme (Polymorphism) adalah konsep yang memungkinkan penggunaan
interface yang sama untuk melakukan tindakan yang sama, tetapi secara proses
memiliki perbedaan.

d. Abstraksi (Abstraction) adalah menyembunyikan detail dari suatu proses dan
menunjukkan hal-hal yang penting saja kepada pengguna.

B. Pengertian Objek
Objek merupakan gabungan dari beberapa data dan fungsi yang masing-masing bekerja
sama dan tidak dapat dipisahkan. Objek bisa dikatakan sebagai instansiasi/perwujudan dari
class. Kumpulan objek yang sama akan membentuk sebuah class. Objek dapat
menggunakan fasilitas dari class, fasilitas tersebut dapat berupa variabel atau method yang
dimiliki oleh class. Konsep dasar Objek ada 3 yaitu:
1. Is Identical, Objek yang memiliki indentitas sendiri sehingga dapat dibedakan dengan
yang lain.
2. Has behavior, objek yang memiliki sifat-sifat khusus yang berbeda dari lainnya.
3. Has state, objek yang memiliki nilai yang baku.
Objek juga memiliki karakteristik, yaitu:
1. Identitas
Objek yang memiliki identitas berarti datanya dapat diukur, mempunyai nilai, dan
dibedakan entitasnya. Contohnya sapi merupakan objek dari hewan ternak, monitir
merupakan objek dari perangkat keras, dan motor merupakan objek dari kendaraan.
2. Klasifikasi
Objek dapat diklasifikasikan menurut data dan perilaku yang memiliki yang memiliki
struktur yang sama ke dalam suatu kelompok yang disebut dengan class. Setiap objek

2|Page

yang ada dalam class memiliki atribut atau properti. Contohnya, class dari kendaraan
memiliki objek motor, mobil, sepeda, dll.

Object : Mobil
Properti:
- Roda
- Warna Cat Mobil
- Model
- Nomor Rangka
- Nomor Mesin

Gambar 1.1 Objek dan Atribut
C. Paradigma Bahasa Pemrograman

Perbedaan 3 model bahasa pemrograman, yaitu:
1. Pemrograman Terstruktur

Pemrograman Terstruktur (Structured Programming) merupakan suatu kumpulan
teknik yang dikemukakan oleh Edsger Dijkstra yang dapat meningkatkan produktivitas
programmer, dengan mengurangi waktu yang dibutuhkan dalam penulisan (write),
pengujian (test), penelusuran kesalahan (debug), dan pemeliharaan (maintenance)
suatu program. Pada teknik pemrograman terstruktur, suatu program akan dibagi ke
dalam beberapa modul yang setiap modul menjalankan fungsinya sendiri.
2. Pemrograman Prosedural
Pemrograman prosedural (Procedural Programming) merupakan rangkaian suatu
penyelesaian masalah prosedur yang dibagi ke dalam beberapa masalah sesuai dengan
fungsinya.
3. Pemrograman Berorientasi Objek
Pemrograman Berorientasi Objek (Object Oriented Programming) yang disingkat OOP
mulai dibuat saat masalah muncul ketika program yang dibuat berkembang lebih besar

3|Page

dan kompleks karena metode pemrograman prosedural hanya dapat digunakan untuk
program sederhana saja. Pada pemrograman berorientasi objek, fungsi dan data
menjadi satu kesatuan yang disebut dengan objek aktif yang bekerja sama untuk
menyelesaikan suatu masalah.

Aktivitas Siswa

A. Uji Pengetahuan (Nilai Pengetahuan)
1. Jelaskan perbedaan antara pemrograman prosedural dengan Pemrograman
Berorientansi Objek (PBO)!
2. Tuliskan bahasa pemrograman yang mendukung pemrograman berorientasi objek!
3. Jelaskan kelebihan dan kekurangan pemrograman prosedural dan pemrograman
berorientasi objek!
4. Tuliskan macam-macam software yang dibutuhkan untuk menjalankan dan mebuat
aplikasi dengan bahasa java!
5. Jelaskan perbedaan antara bahasa pemrograman Java dengan C dan C++!

B. Praktikum (Nilai Praktik)
Buatlah minimal 5 objek dari class-class berikut!
1. Hewan buas
2. Tumbuhan monokotil
3. Planet
4. Sekolah
5. Pesta

C. Eksperiment (Nilai Proyek)
Buatlah kelompok dengan anggota maksimal 3 orang, lakukan sebuah analisis
konfigurasi aplikasi java menggunakan Windows 10 dengan ketentuan analisis sebagai
berikut:

4|Page

1. Kemudahan Instalasi
2. Kemudahan penggunaan

Latihan Soal

A. Pilihlah salah satu jawaban yang tepat!
1. Bahasa pemrograman yang mendukung pemrograman berorientasi objek adalah…
A. Java
B. Pascal
C. Basic
D. C
E. Cobol
2. Pengertian dari objek adalah….
A. Method
B. Variabel
C. Peringkat
D. Kumpulan properti yang dirangkai dalam sebuah tempat
E. Gabungan dari beberapa data dan fungsi yang masing-masing bekerja sama dan
tidak dapat dipisahkan
3. Definisi dari java adalah….
A. Tempat diprosesnya bahasa pemrograman
B. Kantong fasilitas
C. Bahasa pemrograman identitas variabel
D. Bagian dari class yang dapat digunakan oleh objek atau class lain
E. Bahasa pemrograman berorientasi objek murni yang dibuat berdasarkan
kemampuan-kemampuan terbaik bahasa pemrograman objek sebelumnya
4. Contoh objek dari class sistem operasi adalah….
A. Java
B. Apple

5|Page

C. Netbeans
D. Google
E. Windows
5. Berikut yang bukan merupakan objek dalam pemrograman adalah….
A. Bus
B. Motor
C. Mobil
D. Sepeda
E. Kendaraan
6. Aplikasi yang dibutuhkan untuk melakukan coding dengan java adalah….
A. Python
B. Apple
C. Netbeans
D. Google
E. Windows
7. Berikut yang merupakan alasan java dikatakan object oriented adalah….
A. Karena Teknik dari java adalah memusatkan rancangan pada data (objek) dan

interface
B. Karena Java mewarisi karakteristik dari objek yang telah ada, ditambah dengan

karakteristik unik dari class baru tersebut
C. Karena proses penciptaan class baru dengan mewarisi karakteristik dari objek

yang telah ada, ditambah dengan karakteristik unik dari class baru tersebut
D. Karena proses penciptaan class baru pada Java dengan dengan mewarisi

ditambah dengan karakteristik dari class baru tersebut
E. Proses penciptaan class baru dengan mewarisi karakteristik dari property yang

telah ada
8. Softaware java yang paling utama dan harus ada pada saat mengintal java adalah….

A. JDK
B. JRE

6|Page

C. JSD
D. Linux
E. Java Editor
9. Perbedaan antara objek dan class adalah …
A. Objek adalah anak class
B. Objek adalah turunan class
C. Class dan objek adalah sama
D. Class adalah bagian dari objek
E. Objek adalah hasil lain bentukan class
10. Contoh hubungan objek dan class adalah …
A. Guru ➔Siswa
B. Ikan ➔ katak
C. Mobil ➔ motor
D. Pelajar ➔ siswa
E. Kendaraan ➔ mobil
11. Di antara nama-nama berikut, yang nerupakan pencipta Java adalah …
A. Stain Lee
B. Robert Java
C. James Arthur
D. James Gosling
E. Alpha Tomphson
12. Di bawah ini yang tidak termasuk dalam karakteristik Java adalah …
A. Statis dan terpusat
B. Sederhana dan aman
C. Portable dan dinamis
D. Robust dan performance
E. Berorientasi objek dan multithreaded
13. Perhatikan aplikasi-aplikasi berikut.
(1) Applets

7|Page

(2) Java Servlet
(3) Stand Alone
(4) Java Micro Edition
(5) JSP
Di antara aplikasi-aplikasi tersebut, yang termasuk ke dalam aplikasi-aplikasi Java
adalah …
A. (1) dan (4)
B. (1), (2), dan (3)
C. (1), (3), dan (5)
D. (2), (4), dan (5)
E. (1), (2), (3), dan (5)
14. Java diracang untuk memudahkan penerjemahan pada banyak komputer dan
diterjemahkan pada komputer asal pada saat runtime. Hal ini merupakan pengertian
karakteristik dari Java, yaitu…
A. Aman
B. Static
C. Portable
D. Performance
E. Architecture neutral
15. Alasan Java dikatakan memiliki karakteristik sederhana adalah karena…
A. Java mengurangi timbulnya kesalahan (error)
B. Java memusatkan rancangan pada data (objek) dan interface
C. Java mampu melakukan lebih dari satu pekerjaan dalam satu waktu
D. Java tidak memerlukan header file, struktur union, dan class virtual base
E. Java memudahkan penerjemahan pada banyak komputer dan diterjemahkan

pada komputer asal pada saat runtime
B. Jawablah pertanyaan-pertanyaan berikut dengan benar.

1. Jelaskan yang dimaksud dengan objek
2. Berikan contoh class dan objek dalam kehidupan sehari-hari

8|Page

3. Jelaskan minimal lima karakteristik yang dimiliki oleh Java
4. Jelaskan kelebihan dari pemrograman berorientasi objek
5. Pada sebuah pemrograman berorientasi objek tentu harus memiliki objek yang

dituju. Jelaskan karakteristik apa saja yang harus dimiliki objek.
6. Buatlah skema cara kerja Java
7. Buatlah property dari objek berikut ini

a. Siswa
b. Singa
c. Pesawat
8. Jelaskan perbedaan antara JDK dan JRE
9. Buatlah konsep class hewan karnivora dengan dengan minimal 5 objek
10. Jelaskan lima perbedaan antara Bahasa pemrograman Java, C, dan C++

9|Page

BAB 2 Dasar dan Aturan Pemrograman Berorientasi Objek

Tujuan Pembelajaran:
1. Peserta didik dapat menjelaskan dan menginstal tools pengembang program berorientasi

objek
2. Peserta didik dapat memahami operator dengan benar.
3. Peserta didik dapat memahami struktur dasar / sintaks bahasa Java.
4. Peserta didik dapat membuat program bahasa Java sederhana.

A. Perangkat Pemrograman Berorientasi Objek Java
Java merupakan bahasa pemrograman berorientasi objek murni yang dibuat berdasarkan
kemampuan-kemampuan terbaik bahasa pemrograman objek sebelumnya (C++, Ada, dan
Simula).
Java memiliki karakteristik antara lain:
1. Sederhana (Simple)
2. Berorientasi Objek (Object Oriented)
3. Aman (Secure)
4. Dinamis
5. Interpreter
6. Terdistribusi (Distributed)
7. Netral Arsitektur (Architecture Neutral)
8. Multithreaded
9. Kuat (Robust)
10. Kinerja yang Tinggi (High Performance)
11. Portable (Portable)

Java merupakan bahasa pemrograman tingkat tinggi yang dirancang menjadi bahasa
pemrograman yang andal, aman dan dapat dijalankan di semua platform.
Java terdiri atas 2 bagian, yaitu:

1|Page

a. Java Virtual Machine (JVM)
b. Java Application Programming Interface (Java API)

Arsitektur Java dibagi menjadi 3 bagian, yaitu:
a. Enterprise Java (J2EE)

J2EE merupakan superset dari standard Java (J2EE) yang digunakan untuk aplikasi
berbasis web, aplikasi sistem akan tersebar dengan beraneka ragam klien dengan
kompleksitas yang tinggi.
b. Standard Java (J2SE)
Biasa disebut sebagai bahasa Java.
c. Micro Java (J2ME)
J2ME merupakan subset dari J2SE. Salah satu aplikasi J2ME yang banyak dipakai adalah
wireless device atau mobile device
Java tidak hanya berkembang pada satu sistem operasi, tetapi dikembangkan juga untuk
berbagai macam sistem operasi dan bersifat open source.

Sebagian fitur yang dimiliki java antara lain sebagai berikut:
a. Java Virtual Machine (JVM)

JVM merupakan mesin maya yang bekerja menyerupai aplikasi pada sebuah mesin yang
nyata. Java dikenal sebagai penyedia hardware dan platform yang menjadi tempat
terjadinya kompilasi kode java.
b. Garbage Collection
Merupakan fitur pada program java yang mengurangi beban pengelolaan memori oleh
programmer karena program tidak perlu lagi menghapus sendiri objek-objek yang tidak
diperlukan.
c. Code Security
Code Security dapat dijalankan dengan menggunakan JRE. Fitur ini digunakan untuk
menghindari program dari untrusted Java Code.

2|Page

Java juga memiliki software yang terdiri atas beberapa bagian, antara laian sebagai berikut:
a. Java Editor

Sebuah aplikasi untuk menuliskan kode Java. Misalnya Eclipse, Netbeans, Java Editor,
serta Notepad++, dll.
b. Java Development Kit (JDK)
Java Development Kit (JDK) merupakan perangkat lunak yang dibutukan untuk kompilasi
dari kode java menjadi byte code yang dapat dimengerti dan dapat dijalankan oleh Java
Runtime Environment (JRE).
c. Java Runtime Environment (JRE)
Java Runtime Environment adalah perangkat lunak yang diperlukan untuk menjalankan
aplikasi yang dibangun menggunakan Java. File JRE sudah terinstalasi secara otomatis
saat instalasi Java JDK.

B. Mempersiapkan Lingkungan Kerja JAVA
Untuk menulis program JAVA digunakan editor. IDE (Integrated Development Environment)
yang telah ada untuk Java, antara lain: NetBeans yang disponsori Sun Microsystems.
Diperlukan penginstalan Java SDK dan Netbeans IDE 8.2.1.
➢ Java SDK : adalah platform dasar Java yang diperlukan agar PC dapat
mengeksekusi kode-kode program yang menggunakan bahasa Java.
➢ NetBeans : adalah aplikasi editor terpadu (IDE) yang menyediakan kontrol-
kontrol visual dalam pemrograman desktop.
a. Instalasi Java SDK
✓ Download file JDK pada link berikut:
https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html

Gambar 2.1 JDK

✓ Pilih salah satu file diatas disesuaikan dengan Sistem operasi yang digunakan
3|Page

✓ Kemudian install JDK yang telah didownload
b. NETBEANS IDE 8.0.2

✓ Download file Neatbeans pada link berikut:
https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html

Gambar 2.2 JDK dan IDE Neatbens
✓ Pilih salah satu file diatas disesuaikan dengan Sistem operasi yang digunakan
✓ Download Java Editor misalnya Netbeans kemudian Install

Gambar 2.3 Tampilan Neatbeans
✓ Memulai lembar project baru, pilih file – New Project... pada bagian menu.
✓ Pada bagian choose project Categoty pilih java, dan pada bagian Projects pilih Java

Application (Gambar 2.4)

4|Page

Gambar 2.4 Java Application
✓ Masukkan project name dan project location seperti terlihat pada Gambar 2.5.

Sebagai latihan berikan nama project dengan hello_world.

Gambar 2.5. Project Name

5|Page

✓ Pada bagian create main class, dapat diberikan nama yang berbeda dari Project
Name nya. Tidak perlu menambahkan .Main atau .Java, NetBeans akan secara
otomatis memberikan ekstensi-nya. Setelah selesai, klik finish

Gambar 2.6. Tampilan Class hello_world

c. Aturan Dasar Program JAVA

➢ Case sensitive : penggunaan huruf besar dan kecil memiliki arti berbeda

➢ Kurung kurawal {} : symbol menandai awal dan akhir suatu blok program
➢ Komentator : diawali tanda // atau tanda /*……*/
➢ titik koma (;) : setiap pernyataan diakhiri dengan symbol titk-koma

d. Latihan 1

Program sederhana mencetak baris kalimat

Gambar 2.7. Analisa Program

6|Page

Analisa Program:
A Pada baris ini keyword “public” memanggil sebuah variable yang menentukan
apakah dapat digunakan oleh bagian program. Keyword class yang menyatakan
kelas dimana atribut dan fungsi berada di dalamnya. Kelas pertama Hello_world1
adalah kelas pengendali yaitu nama kelas yang akan dikenali compiler java. Pada
saat kompilasi, compiler membuat file Hello_world1.class

B Baris ini memuat metode pertama program. Metode adalah fungsi yang
menjalankan suatu aksi tertentu. Metode main() bersifat statis dan kosong.
Eksekusi selalu dimulai dengan metode utama dari kelas yang mengendalikan
aplikasi, yaitu kelas yang memiliki nama sama dengan filesumber aplikasi.

C Baris ini menampilkan pesan “ siap belajar java” pada hasil running. System
adalah kelas yang merupakan bagian dari pustaka java, out objek yang terdapat
pada kelas system. Keyword println() mencetak baris menampilkan sebuah teks.

➢ Paket(package) : bagian standar java untuk mengelompokkan kelas dengan
interface menjadi suatu unit

e. Tugas Praktik 1
1. Buatlah sebuah program yang mencetak data berikut :
Nama : mutiara sugiharto
NIM : 12/336147/PA/15080
Alamat : Jl. Menteri Supeno No.45 Yogyakarta
No. Telp : 0324-6575757
Email : [email protected] Data bisa diganti dengan data anda
2. Buatlah sebuah program untuk mencetak kalimat berikut
Suatu saat perusahaan computer di dunia akan lebih dari lima dari sekarang.
Thomas Watson, IBM, 1943.
(Buatlah program dengan pseudocode di bawah ini)
System.out.print(“Suatu saat ..................”)

7|Page

System.out.println(“akan......................... . ”)
System.out.println(“Thomas....................”)

C. Variabel
Variabel adalah tempat yang diciptakan secara virtual di dalam memori komputer oleh
programmer untuk dapat mengisi atau mengosongkan nilainya dan memanggil kembali
apabila dibutuhkan.
Variabel merupakan identifier yang memiliki nilai tidak tetap atau dapat diubah-ubah.
Aturan Penulisan Variabel pada Java:
1. Tidak diizinkan menggunakan kata kunci atau fuction dari Java seperti: if, for, switch, dll.
2. Diperbolehkan menggunaka huruf, angka (0-9), garis bawah, dan simbol dollar, tetapi
lebih baik menghindari garis bawah dan simbol.
3. Sebaiknya diawali dengan huruf kecil, karena Java menggunakan gaya CamelCase,
contoh: namaSiswa, kodeBarang, nama, alamat
4. Jika nama Variabel lebih dari satu suku kata, kata kedua dituliskan dengan diawali huruf
kapital dan seterusnya.
Contoh penulisan variabel:
a. String username = “ADMIN”;
b. int harga = 2500;

D. Konstanta
Konstanta adalah identifier yang nilai datanya bersifat tetap dan tidak dapat diubah. Untuk
mendeklarasikan konstanta diperlukan keyword final diikuti tipe data dan nama konstanta
yang ditulis dengan huruf kapital semua.
Contoh penulisan konstanta:
final double PI = 3.14;

E. Keyword
Keyword merupakan penggunaan khusus yang sudah ada pada pustaka Java, dan tidak
dapatdigunakan sebagai identifier. Ada 51 keyword dalam Java:

8|Page

Gambar 2.8. Keyword Java

F. Tipe Data

Dibagi menjadi 2 kategori:

1. Tipe data primitif : tipe data yang mempunyai nilai tertentu, bukan referensi kelas

atau objek. Dibagi menjadi 8 tipe data primitive

Tipe Data Jenis Storage Nilai

Integer byte 8 bit -128 s/d 127

(bilangan bulat) shor 16 bit –32768 s/d 32767

t 64 bit –922337203s/d 922337203

long 32 bit –2147483648 s/d 2147483647

int

Float (bilangan nyata) float 32 bit ±3.4E-38 s/d ±3.4E+38

double 64 bit ±1.7E-308 s/d ±1.7E+308

char char 16 bit \u0000 s/d \uFFFF

boolean boolea 1 bit True atau false

n

9|Page

2. Tipe data referensi : terbentuk dari tipe data sederhana dan tipe data referensi

G. Operator
Operator digunakan untuk melakukan pengolahan data, melibatkan konstanta danvariabel
yang telah kita buat.
1. Operator Aritmatika

2. Operator Penugasan

3. Operator Pembanding

4. Operator Logika
5. Hasil Operasi menggunakan &&

10 | P a g e

6. Hasil Operasi menggunakan ||
H. Separator

11 | P a g e

Aktivitas Siswa

Latihan (Praktekkan listing program berikut dan tulis hasil serta analisa program pada lembar

laporan)

• Pendefenisian variable char Analisa Program

• Untuk menuliskan konstanta bertipe char,

karakter ditulis dengan tanda petik tunggal
seperti „A‟

• Pendefinisian variable char adalah

char kar; / kar merupakan variable bertipe

char

• Tanda petik tunggal untuk deklarasi sebuah

data char, sedangkan petik ganda

mendeklarasikan string atau kumpulan

karakter

. Contoh
char kode=‟A‟;

string nomorRumah=”15” ;

string Negara = “Indonesia”;

• Pemberian nilai karakter menggunakan nilai
ASCII dari karakter tersebut, karakter „F‟

mempunyai nilai ASCII = 70 , deklarasinya

kar=70;

• System.out.println(kar) mendeklarasikan

nilai
dari variable „kar‟

12 | P a g e

Tugas Praktik
1. Bukalah aplikasi Netbeans

Buatlah project dengan nama ‘latihan2’
Tuliskan script berikut :

13 | P a g e


Click to View FlipBook Version