180 likes | 314 Views
MEMBUAT CLASS SENDIRI 2. Deklarasi Constructor. Telah tersirat pada pembahasan sebelumnya , Constructor sangatlah penting pada pembentukan sebuah object. Constructor adalah method dimana seluruh inisialisasi object ditempatkan . Berikut ini adalah property dari Constructor :
E N D
Deklarasi Constructor Telahtersiratpadapembahasansebelumnya, Constructor sangatlahpentingpadapembentukansebuahobject. Constructor adalah method dimanaseluruhinisialisasiobject ditempatkan. • Berikutiniadalahproperty dari Constructor : • Constructor memilikinama yang samadengan class • SebuahConstructor miripdenganmethod padaumumnya, namunhanyainformasi–informasi berikut yang dapat ditempatkan pada header sebuah constructor, scope atauidentifikasipengaksesan (misal: public), namadarikonstuktordan parameter. • Constructor tidakmemiliki return value • Constructor tidakdapatdipanggilsecaralangsung, namunharusdipanggildenganmenggunakanoperator new padapembentukansebuah class.
Untukmendeklarasikan constructor, kitatulis, <modifier> <className> (<parameter>*) { <statement>* }
Default Constructor • Setiap class memiliki default constructor. Sebuah default constructor adalahconstructor yang tidakmemiliki parameter apapun. Jikasebuahclass tidakmemiliki constructor apapun, makasebuah default constructor akandibentuksecaraimplisit. • Sebagaicontoh, padaclass StudentRecord, bentuk default constructor akanterlihatsepertidibawahini: public StudentRecord() { //area penulisankode }
Overloading Constructor • Sepertitelahkitabahassebelumnya, sebuah constructor jugadapatdibentukmenjadioverloaded. Dapatdilihatpada 4 contohsebagaiberikut :
Menggunakan Constructor Untukmenggunakan constructor, kitagunakankode – kodesebagaiberikut : public static void main( String[] args ) { //membuat 3 objek StudentRecordannaRecord=new StudentRecord("Anna"); StudentRecordbeahRecord=new StudentRecord("Beah","Philippines"); StudentRecordcrisRecord=new StudentRecord(80,90,100); //area penulisankodeselanjtunya }
Pemanggilan Constructor Dengan this() • Pemanggilan constructor dapatdilakukansecaraberangkai, dalamartiAndadapatmemanggilconstructor didalam constructor lain. Pemanggilandapatdilakukandenganreferensithis().
Dari contohkodediatas, padasaatbariske 13 dipanggilakanmemanggil constructor dasarpadabarispertama. Padasaatbariskeduadijalankan, baristersebutakanmenjalankan constructor yang memiliki parameter String padabaris ke-6. Beberapahal yang patutdiperhatikanpadapenggunaanthis() : • Harusdituliskanpadabarispertamapadasebuah constructor • Hanyadapatdigunakanpadasatudefinisi constructor. Kemudianmetodeinidapatdiikutidengankode – kodeberikutnya yang relevan
Packages • Packages dalam JAVA berartipengelompokanbeberapa class dan interface dalamsatuunit. Fiturinimenyediakanmekanismeuntukmengaturclass dan interface dalamjumlahbanyakdanmenghindarikonflikpadapenamaan.
Mengimport Packages • Supayadapatmeggunakanclass yang beradadiluar package yang sedangdikerjakan, Andaharusmengimportpackage dimana class tersebutberada. Padadasarnya, seluruhprogram JAVA mengimportpackage java.lang.*, sehinggaAndadapatmenggunakan class sepertiString dan Integer dalam program meskipunbelummengimportpackage samasekali.Penulisanimport package dapatdilakukansepertidibawahini : import <namaPaket>;
Membuat Package Untukmembuatpackage, dapatdilakukandenganmenuliskan : package <packageName>; Anggaplahkitainginmembuatpackage dimana class StudentRecordakanditempatkanbersamadenganclass – class yang lain dengannama package schoolClasses. Langkahpertama yang harusdilakukanadalahmembuat folder dengannamaschoolClasses. Salinseluruhclass yang ingindiletakkanpada package dalam folder ini. Kemudiantambahkankodedeklarasipackage padaawal file.
contoh package schoolClasses; public class StudentRecord { private String name; private String address; private intage; } Package jugadapatdibuatsecarabersarang. Dalamhalini Java Interpreter menghendakistrukturdirektori yang mengandungclass eksekusiuntukdisesuaikandenganstruktur package.
Pengaturan CLASSPATH • Diasumsikanpackage schoolClassesterdapatpadadirektori C:\. Langkahselanjutnyaadalahmengaturclasspathuntukmenunjukdirektoritersebutsehinggapadasaatakandijalankan, JVM dapatmengetahuidimanaclass tersebuttersimpan.
Access Modifiers • Padasaatmembuat, mengaturproperties dan class methods, kitainginuntukmengimplementasikanbeberapamacamlaranganuntukmengakses data. Sebagaicontoh, jikaAndainginbeberapaatributhanyadapatdiubahhanyadenganmethod tertentu, tentuAndainginmenyembunyikannyadariobject lain pada class. Di JAVA, implementasitersebutdisebutdenganaccess modifiers.
Akses Default (Package Accessibility) Tipeinimensyaratkanbahwahanyaclass dalam package yang sama yang memilikihakaksesterhadapvariabeldanmethods dalam class. Tidakterdapat keyword padatipeini. Sebagaicontoh: • public class StudentRecord • { • //aksesdasarterhadapvariabel • int name; • //aksesdasarterhadapmetode • String getName(){ • return name; • } • }
Akses Public Tipeinimengijinkanseluruhclass member untukdiaksesbaikdaridalamdanluarclass. Object apapun yang memilikiinteraksipada class memilikiaksespenuhterhadapmember dari tipe ini. Sebagai contoh : • public class StudentRecord • { • //aksesdasarterhadapvariabel • public int name; • //aksesdasarterhadapmetode • public String getName(){ • return name; • } • }
Akses Protected • Tipeinihanyamengijinkanclass member untukdiaksesoleh method dalam class tersebutdanelemen – elemensubclass. Sebagaicontoh: • public class StudentRecord • { • //aksespadavariabel • protected int name; • //aksespadametode • protected String getName(){ • return name; • } • }
Akses Private • Tipeinimengijinkanpengaksesanclass hanyadapatdiaksesoleh class dimanatipeinidibuat. Sebagaicontoh: • public class StudentRecord • { • //aksesdasarterhadapvariabel • private int name; • //aksesdasarterhadapmetode • private String getName(){ • return name; • } • }