kegiatan 6.4

Tugas 6.4


Nama: Rafi Nanda
Kelas: XI RPL


Pernahkah kamu menggunakan keyword pada google maupun search engine lain
 saat mencari suatu informasi? Keyword adalah kata kunci yang diinginkan agar
 website dapat ditemukan dengan mudah oleh mesin pencari. Hal tersebut
 dinamakan entri datalist. Untuk membuatnya diperlukan tag seperti dibawah ini.
<input list=”list” name=””>
<datalist id=”id”> <option value=”nilai1”> <option value=” nilai2”> </datalist>
Berikan penjelasan mengenai kode program di atas buatlah contoh penerapan 
entri datalist
PENYELESAIAN:
Penjelasan dari kode html sebagai berikut.
<input list=”list”> digunakan untuk membuat entri datalist.
<datalist id=”id”> digunakan untuk memberikan nama pada datalist.
<option value=”nilai”> digunakan untuk memberikan list keyword yang akan
 ditampilkan
BAGAIMANA PENDAPATMU:
Menurut saya dari script di atas adalah script datalist yang digunakan untuk 
pencarian sebuah data
APA ALASANNYA:
Karena hasil outputnya adalah seperti pencari dari sebuah datalist seperti searching
 sebuah data 
www.google.com

Hasilnya Adalah:

Kegiatan 7.2

Tugas 7.2


Nama: Rafi Nanda
Kelas: XI RPL


1.Perhatikan kode program berikut ini!


2.Jelaskan fungsi dari beberapa kode program berikut ini





Fungsi atribut style:
Script diatas  Digunakan untuk menentukan ukuran font yang telah ditentukan dengan 
ukuran pixel


3.Berdasarkan kode program di atas analisislah tampilan pada web browser
Tampilan Program:
This is heading 1 This is heading 2 This is heading 3
This is a paragraph


4.Manipulasi kode program diatas dengan menambahkan kode CSS untuk format
 teks berwarna merah
Jawaban:
<style>
H1 {font-size: 40px;}
H2 {font-size: 30px;}
P {font-size: 14px;}
Merah {font-color: red;}
</style>

Kegiatan 8.1

Kegiatan 8.1
Nama : Rafi Nanda
Kelas : XI RPL
Mapel : Pemrograman Berorientasi Objek


1.Bentuklah kelompok dengan membagi jumlah siswa dalam 
kelasmu menjadi 5 kelompok.Lalu pertama kali siapkan 
alat dan bahan yang di perlukan dalam membuat contoh 
program interface!
2.Setelah semua peralatan dan bahan siap,maka mulai
 melakukan praktik membuat contoh program interface!
3.Lakukan percobaan berikut ini.
  A.Buatlah program berikut.
  1)Buat class Operasi,Kalkulator dan UjiKalkulator.
Dimana class interface yang terdapat method sebagai
 berikut.
  A)public void penjumlahan ();
  B)public void pengurangan ();
    
  2)Class Kalkulator digunakan untuk implements class
 Operasi.

  3)Class UjiKalkulator digunakan untuk menguji class 
Kalkulator.

  B.Buatlah program berikut.
  Buat class Superhero,dimana class interface yang 
terdapat method sebagai berikut.
  1)public void Superman ();
  2)public void Spiderman ();
  3)public void Thor ();

  C.Buatlah program berikut.
  Buat class Bank,dimana class Bank adalah class 
 interface yang terdapat method sebagai berikut.
  1)public void Menabung ();
  2)public void Transfer ();
  3)public void Menarik ();

4.Bandingkan dan buatlah kesimpulan listing program 
dan output kelompokmu dengan kelompok lain.Berdasarkan
 hasil perbandingan tersebut hal penting apa yang harus
 dirumuskan secara bersamaan?
Jawaban : Sekumpulan dari method” yg dibuat,namun 
belum ad operasi d dlm tubuh method trsbt.Interface
 bisa diturunkan atau diwariskan kepada class yg ingin
 memakai method yg ada di dlm masing” Interface trsbt 
dgn keyword extends(Interface yg d definisikan) sebuah 
class dapat mengimplementasikan 1 Interface yg sudah di
buat dgn keyword Implements


5.Setelah berhasil melakukan praktik diatas,selanjutnya
 buatlah laporan hasil kerja dalam kolom yang sudah
 disediakan dibawah ini!
G.Laporan Pratikum
Jawaban : Interface merupakakn suatu mekanisme yg 
disediakan oleh Java yg memungkinkan berbagi konstanta
 atau menentukan bentuk metode yg dapat digunakan oleh 
sejumlah kelas.

KEGIATAN 4.3



Judul Kegiatan   : Mengidentifikasi Access Modifier daalam Program Java. 
Jenis kegiatan   : Diskusi Kelompok
Tujuan Kegiatan : 
Peserta didik kelas 11 RPL dapat memahmi mengenai access modifier dalaam program Aplikasi Java
  dengan percaya diri. 
Peserta didik kelas 11 RPL dapat membuat contoh program Java dengan menggunakan access 
modifier dengan terampil.




Langkah-langkah kegiatan:


Image result for discussion

Jelaskan pengertian konsep enkapsulasi pada pemrograman berorientasi
 objek!
metode pemaketan/penyatu/pengkapsulan method, object, atau data lain bersama 
atribut-atributnya yang bertujuan untuk menyembunyikan rincian-rincian implementasi dari 
pengguna.




Apakah kamu pernah menemukan konsep enkapsulasi dalam kehidupan 
sehari-hari? Jelaskan konsep tersebut secara rinci! 
yaitu dianalogikan sebagai arus listrik pada generator dan sistem perputaran generator 
untuk menghasilkan arus listrik.




Jelaskan manfaat enkapsulasi dalam pemrograman berorientasi objek!
untuk menyembunyikan suatu proses program agar tidak dapat diakses oleh pengguna 
atau diintervensi oleh program lain.




Tuliskan dan jelaskan hak akses pada setiap modifier didalam Java!
Public
Access modifier public mempunyai hak akses paling luas dibanding yang lainnya.
 Karena aksesnya sangat luas, maka access modifier ini biasanya digunakan untuk
 method setter getter sesuai konsep OOP.
Protected
Access modifier protected biasanya digunakan untuk mewariskan variabel yang 
ada di super class terhadap child class.
No access Modifier
Sesuai namanya, hak akses yang satu ini tidak perlu dituliskan di method/variabelnya. 
Dengan hak akses ini, variabel/method dapat diakses dari class lain asalkan masih dalam
 satu package yang sama
Private
Access modifier private bersifat tertutup. Sesuai dengan konsep OOP Encapsulation, 
maka setiap variabel wajib untuk dilindungi hak aksesnya secara langsung dari luar. Oleh 
karena itu, variabel diberikan hak akses private dan untuk melakukan pengaksesan/perubahan
 data digunakan setter getter




Jelaskan prosedur perancangan program aplikasi Java dengan
 menerapkan konsep enkapsulasi. Mulai dari prosedur penyusunan 
class, atribut, dan method!
A. selalu jaga agar data adalah private
B.selalu lakukan inisialisasi data.
C.jangan terlalu banyak tipe dasar di dalam satu kelas.
D.Tidak semua field memerlukan field accessor
E.gunakan bentuk standar dari definisi kelas. 
F.pecah kelas-kelas yang memiliki banyak tanggung jawab menjadi beberapa kelas.
G.berilah nama kelas dan metode yang menceminkan tanggung jawabnya.

BAHAN AJAR INHERITANCE

4. Uraian Materi 
A. Konsep Inheritas 
Konsep inheritance ini mengadopsi dunia riil dimana suatu entitas/obyek 
dapat mempunyai entitas/obyek turunan. Dengan konsep inheritance, 
sebuah class dapat mempunyai class turunan.Suatu class yang mempunyai 
class turunan dinamakan parent class atau base class. Sedangkan class 
turunan itu sendiri seringkali disebut subclass atau child class. Suatu subclass 
dapat mewarisi apa-apa yang dipunyai oleh parent class. Karena suatu 
subclass dapat mewarisi apa apa yang dipunyai oleh parent class-nya, 
maka member dari suatu subclass adalah terdiri dari apaapa yang ia punyai 
dan juga apa-apa yang ia warisi dari class parent-nya. Kesimpulannya, 
boleh dikatakan bahwa suatu subclass adalah tidak lain hanya memperluas 
(extend) parent class-nya. 
Gambar 1. Ilustrasi konsep inheritance 
Dari hirarki diatas dapat dilihat bahwa, semakin kebawah, class akan semakin 
bersifat spesifik. Class karnivora memiliki seluruh sifat yang dimiliki oleh binatang, 
demikian halnya juga harimau dan ular memiliki seluruh sifat yang diturunkan 
Kurnia Rahman Agus, S.S.T
Harimau 

Ular 
Karnivora 
Monyet 
Binatang 
Omnivora 
Gorila 
Ayam 
Ayam 
Herbivora 
Herbivora 
Kambing 
Sapi 

Modul Pemrograman Berorientasi Objek 
dari class karnivora. Dengan konsep ini, karakteristik yang dimiliki oleh class 
binatang cukup didefinisikan didefinisikan dalam class binatang saja. Class 
karnovora, herbivora, dan omnivora tidak perlu mendefinisikan ulang apa yang 
telah dimiliki oleh class binatang, karena sebagai class turunannya, ia akan 
mendapatkan karakteristik dari class binatang secara otomatis. Demikian juga 
dengan class harimau, ular, gorila, ayam, monyet, kambing dan sapi hanya 
perlu mendefinisikan karakteristik yang spesifik dimiliki oleh class-nya masing- 
masing. Dengan memanfaatkan konsep pewarisan ini dalam pemrograman, 
maka hanya perlu mendefinisikan karakteristik yang lebih umum akan 
didapatkan dari class darimana ia diturunkan. Dalam Java, semua 
class,termasuk class yang membangun Java API, adalah subclasses dari 
superclass Object. Contoh hirarki class diperlihatkan di bawahini. Beberapa 
class di atas class utama dalam hirarki class dikenal sebagai superclass, 
Sementara beberapa class di bawah class pokok dalam hirarki class dikenal 
sebagai subclass dari class tersebut. 
Pewarisan adalah keuntungan besar dalam pemrograman berbasis object 
karena suatu sifat atau method didefinisikan dalam superclass, sifat ini secara 
otomatis diwariskan dari semua subclasses. Jadi, Anda dapat menuliskan kode 
method hanya sekali dan mereka dapat digunakan oleh semua subclass. 
Subclass hanya perlu mengimplementasikan perbedaannya sendiri dan 
induknya. 
Konsep inheritance ini mengadopsi dunia riil dimana suatu entitas/obyek dapat 
mempunyai entitas/obyek turunan. Dengan konsep inheritance, sebuah class 
dapat mempunyai class turunan. Suatu class yang mempunyai class turunan 
dinamakan parent class atau base class. Sedangkan class turunan itu sendiri 
sering kali disebut subclass atau child class. Suatu subclass dapat Mewari siapa- 
apa yang dipunyai oleh parent class-nya, sehingga member dari suatu subclass 
adalah terdiri dari apa- apa yang ia punyai dan juga apa-apa yang diawarisi 
Kurnia Rahman Agus, S.S.T
Modul Pemrograman Berorientasi Objek 
dari classparent-nya. Kesimpulannya, boleh dikatakan bahwa suatu subclass 
adalah tidak lain hanya memperluas (extend) parentclass-nya. 
B. Hubungan antar kelas B.1 Asosiasi 
Dapat dilihat pada gambar kelas diagram di atas, hubungan asosiasi 
digambarkan dengan satu garis tidak putus - putus dan tidak memiliki anak 
panah pada kedua ujungnya. Kemudian juga dibubuhkan kardinal pada garis 
tersebut. 
Asosiasi adalah hubungan yang bisa saling menggunakan di dalam 
sebuah kelas, dan tidak saling memiliki. Misal pada gambar di atas terdapat 
kelas Dosen dan kelas Mahasiswa, dilihat dari kardinalitasnya, satu dosen bisa 
memiliki banyak mahasiswa. Apabila dosen dihilangkan, mahasiswa masih bisa 
digunakan karena tidak saling memiliki. 
Penjelasan tentang asosiasi ini bisa lebih jelas dengan melihat dua potongan kode
 dibawah 
Kurnia Rahman Agus, S.S.T
Modul Pemrograman Berorientasi Objek 
public class mahasiswa { 
private String nim; private String nama; public void setNama (String nama) { 
this.nama = nama; } public void setNim (String nim) { 
this.nim = nim; } public String getNim () { 
return this.nim; } public String getNama () { 
return this.nama; } } public class dosen { private String Kddosen; private String[] nimMHS; private int
 JmlMahasiswa; public void setKddosen (String Kddosen) { 
 
this.Kddosen = Kddosen; } public void setNimMahasiswa (String nimMhs) { 
if (JmlMahasiswa<5) { 
nimMHS[JmlMahasiswa] = nimMhs; JmlMahasiswa++; } } public int getJmlMahasiswa () { 
return this.JmlMahasiswa; } public String getKddosen () { 
return this.Kddosen; } public String getMahasiswa (int i) { 
return (nimMHS[i]); }
Kurnia Rahman Agus, S.S.T 7 mahasiswa.java 
dosen.java 
Modul Pemrograman Berorientasi Objek 
Dari dua potongan kode di atas, dapat kita ketahui bahwa kelas Dosen 
menggunakan variable nim mahasiswa yang terdapat pada kelas Mahasiswa. 
Kita dapat menghapus setiap kelas tanpa mempengrahui kelas lain. Hubungan 
seperti di atas adalah hubungan asosiasi. 
B.2 Agregasi 
Hubungan agregasi digambarkan dengan diamond putih, yang ditempelkan 
pada kelas yang memiliki, tidak dibubuhkan panah pada ujung yang tidak 
memiliki simbol diamond putih. Kemudian juga dibubuhkan kardinalitas seperti 
pada hubungan asosiasi. 
Jika hubungan asosiasi adalah saling menggunakan, di sini hubungan yang 
terjadi adalah memiliki. Dilihat pada gambar kelas diagram di atas, bahwa 
kelas Jurusan memiliki kelas Mahasiswa sebagai variable nya. Meskipun kelas 
Jurusan memiliki kelas Mahasiswa, namun kedua kelas tersebut dapat dibuat 
secara independen. 
Penjelasan dengan menggunakan potongan kode akan bisa lebih rinci di 
bagian menggunakan kelas lain. Lihat potongan kode di bawah. 
Kurnia Rahman Agus, S.S.T
Modul Pemrograman Berorientasi Objek 
jurusan.java 
Potongan kode di atas merupakan lanjutan dari potongan kode pada 
bagian asosisasi. Bisa dilihat bahwa pada kelas Jurusan, menggunakan kelas 
Mahasiswa sebagai variable di dalamnya, sehingga bisa dibilang bahwa kelas 
Jurusan memiliki kelas Mahasiswa. Apabila kelas Mahasiswa dihapus maka kelas 
Jurusan tidak dapat berdiri, namun tidak terjadi sebaliknya, kelas Mahasiswa 
masih bisa berdiri tanpa terdapat kelas Jurusan. Hubungan seperti ini disebut 
agregasi. 
Kurnia Rahman Agus, S.S.T
Modul Pemrograman Berorientasi Objek 
B.3 Komposisi 
Komposisi digambarkan menggunakan diamond hitam yang menyatakan 
memiliki bagian seperti pada agregasi, tapi lebih spesial. Kemudian 
menggunakan garis tidak putus ke kelas yang dimiliki. 
Pada paragraf di atas dikatakan “memiliki bagian seperti pada agregasi, 
namun lebih spesial”, apa yang menjadikan hubungan komposisi lebih spesial 
adalah karena setiap kelas tidak dapat berdiri sendiri. Seperti contoh kelas 
diagram di atas, bahwa kelas Komputer tidak akan terbentuk tanpa adanya 
kelas Keyboard, Mouse dan CPU. Begitu pula sebaliknya, apabila tidak terdapat 
kelas Komputer, maka kelas kelas yang lain tidak akan berfungsi. 
Perhatikan potongan kode di bawah. 
Kurnia Rahman Agus, S.S.T 10 
Modul Pemrograman Berorientasi Objek 
cpu.java 
keyboard.java 
mouse.java 
Kurnia Rahman Agus, S.S.T 11 
Modul Pemrograman Berorientasi Objek 
komputer.java 
mainKomputer.java 
Dapat dilihat dari file mainKomputer.java bahwa komponen kelas Mouse, 
Keyboard, Cpu baru dibuat setelah komputer dibuat. Apabila objek komputer 
dihapus maka semua komponen juga terhapus. Begitulah ilustrasi dari 
hubungan komposisi. 
Kurnia Rahman Agus, S.S.T 12 
Modul Pemrograman Berorientasi Objek 
C. Penerapan Inheritas 
Kita baru perlu menerapkan inheritance pada saat kita jumpai ada suatu class 
yang dapat diperluas dari class lain. 
Misal terdapat class Pegawai public class Pegawai {public String nama;public 
double gaji;} Misal terdapat class Manager public class Manajer 
{public String nama;public double gaji;public String departemen;} Dari 2 
buah class diatas, kita lihat class Manajer mempunyai data member yang 
identik sama dengan class Pegawai, hanya saja ada tambahan data member 
departemen.Sebenarnya yang terjadi disana adalah class Manajer merupakan 
perluasan dari class Pegawai dengan tambahan data member departemen. 
Disini perlu memakai konsep inheritance, sehingga class Manajer dapat kita 
tuliskan seperti berikut : 
Gambar 2. Listing Program 
D. Keuntungan inheritas 
• Subclass menyediakan state/behaviour yang spesifik yang 
membedakannya dengan superclass, hal ini akan memungkinkan 
programmer Java untuk menggunakan ulang source code dari 
superclass yang telah ada. 
Kurnia Rahman Agus, S.S.T 13 
public class Manajer extends Pegawai { 
public String departemen; 

Modul Pemrograman Berorientasi Objek 
• Programmer Java dapat mendefinisikan superclass khusus yang bersifat 
generik, yang disebut abstract class, untuk mendefinisikan class dengan 
behaviour dan state secara umum. 
E. Deklarasi inheritas 
Di dalam Java untuk mendeklarasikan suatu class sebagai sub class dilakukan 
dengan cara menambahkan kata kunci extends setelah deklarasi nama class, 
kemudian diikuti dengan nama parentclass-nya. Kata kunci extends tersebut 
memberitahu compiler Java bahwa kita ingin melakukan perluasan class. 
Berikut adalah contoh deklarasi inheritance: 
Gambar 3. Listing Program 
Contoh di atas memberitahukan compiler Java bahwa kita ingin meng- extend 
class A ke class B. Dengan kata lain, class B adalah subclass (class turunan) dari 
class A, sedangkan class A adalah parent class dari class B. 
Java hanya memperkenankan adanya single inheritance. Konsep single 
inheritance hanya memperbolehkan suatu sublass mempunyai satu parent 
class. Dengan konsep single inheritance ini, masalah pewarisan akan dapat 
diamati dengan mudah. 
Dalam konsep dasar inheritance dikatakan bahwa suatu subclass adalah tidak 
lain hanya memperluas (extend) parentclass-nya. Contoh: 
Kurnia Rahman Agus, S.S.T 14 
public class B extends A{ 
..... 

Modul Pemrograman Berorientasi Objek 
Gambar 4. Listing Program 
Pada saat class Manajer menurunkan atau memperluas (extend) class 
Pegawai, maka ia mewarisi data member yang dipunyai oleh class Pegawai. 
Dengan demikian, class Manajer mempunyai data member yang diwarisi oleh 
Pegawai (nama, gaji), ditambah dengan data member yang ia punyai 
(departemen). 
F. Kontrol Pengaksesan 
Pengaksesan member yang ada di parent class dari subclass-nya tidak jauh 
berbeda dengan pengaksesan member subclass itu sendiri. Contoh: Suatu 
parent class dapat tidak mewariskan sebagian member-nya kepada subclass- 
nya. Sejauh mana suatu member dapat diwariskan ke class lain, ataupun suatu 
member dapat diakses dari class lain, sangat berhubungan dengan access 
control (control pengaksesan). Di dalam java, kontrol pengaksesan dapat 
digambarkan dalam table berikut ini: 

Modifier Class yang 
sama 
package yang sama 
subclass Class 
subclass Class 
manapun 
manapun 

Kurnia Rahman Agus, S.S.T 15 
Private √ Default √ √ 
Public class Pegawai{ Public String nama; Public 
double gaji; 
} Public class Manajer extends Pegawai{ Public String 
departemen; 

Modul Pemrograman Berorientasi Objek
F. Rangkuman 
Konsep inheritance ini mengadopsi dunia riil dimana suatu entitas/obyek 
dapat mempunyai entitas/obyek turunan. Dengan konsep inheritance, sebuah 
class dapat mempunyai class turunan. Di dalam Java untuk mendeklarasikan 
suatu class sebagai subclass dilakukan dengan cara menambahkan kata kunci 
extends setelah deklarasi nama class, kemudian diikuti dengan nama parent 
class-nya. 
G. Tugas 
Penugasan dalam kegiatan belajar untuk adalah melatih keterampilan anda 
dengan melakukan proses pengamatan benda dan obyek disekitar anda dan 
coba dihubungkan dengan pendekatan berorientasi objek yang akan 
memandang sistem yang dikembangkan sebagai suatu kumpulan objek yang 
berkorespondensi dengan objek-objek dunia nyata.