Pengenalan Pemrograman 1
Versi
2.0
tujuan
Method Accessor
get<NameOfInstanceVariable>
Method Mutator
set<NameOfInstanceVariable>
contoh
/**
* Me-return nama student
*/
public String getName(){
return name;
}
/**
* mengubah nama student
*/
public void setName( String temp ){
name = temp;
}
Source code untuk class
StudentRecord
/**
* Menghitung nilai rata-rata dari bahasa inggris,
* matematika, dan sains
*/
public double getAverage(){
double result = 0;
result = ( mathGrade+englishGrade+scienceGrade )
/3;
return result;
}
/**
* Me-return jumlah instance dari StudentRecords
*/
public static int getStudentCount(){
return studentCount;
}
Contoh Source Code
Penggunaan StudentRecord
Public class StudentRecordExample{
public static void main(String args[]){
Anna
Student Count = 0
Reference ‘this’
this
digunakan untuk mengakses instance variable yang
dibayangi oleh parameter
Method overloading
− penggunaan method dengan nama yang sama, parameter
berbeda, dan me-return value dengan return type yang
berbeda
annaRecord.setName(“Anna”);
annaRecord.setAddress(“Phillipines”);
annaRecord.setAge(15);
annaRecord.setMathGrade(80);
annaRecord.setEnglishGrade(95.5);
annaRecord.setScienceGrade(100);
//overloaded method
annaRecord.print(annaRecord.getName());
annaRecord.print(annaRecord.getEnglishGrade(),
annaRecord.getMathGrade(),
annaRecord.getScienceGrade());
}
Output program
Name:Anna
Address:Philippines
Age:15
Name:Anna
Math Grade:80.0
English Grade:95.5
Science Grade:100.0
constructor
Default Constructor
− merupakan constructor tanpa parameter.
public StudentRecord()
{
//source code disini
}
Constructor overloading
public StudentRecord(){
//beberapa kode inisialisasi di sini
}
public StudentRecord(String temp){
this.name = temp;
}
public StudentRecord(String name, String address){
this.name = name;
this.address = address;
}
public StudentRecord(double mGrade, double eGrade,
double sGrade){
mathGrade = mGrade;
englishGrade = eGrade;
scienceGrade = sGrade;
}
Menggunakan contructor
Public StudentRecord(){
this(“some string”);
}
Package
Merupakan pengelompokan class dan interface,
yang memiliki relasi dalam satu unit.
import java.awt.Color;
import java.awt.*;
Membuat package
package <namaPackage>;
package SchoolClasses;
C:\schoolClasses>java StudentRecord
Exception in thread "main" java.lang.NoClassDefFoundError: StudentRecord (wrong name:
schoolClasses/StudentRecord)
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(Unknown Source)
at java.security.SecureClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.access$100(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClassInternal(Unknown Source)
Mengatur CLASSPATH
export classpath=/usr/local/myClasses
Mengatur CLASSPATH
Pengaturan classpath dapat dilakukan dimana saja.
set classpath=C:\myClasses;D:\;E:\MyPrograms\Java
◦ Pada Unix
pisahkan classpath dengan menggunakan ‘:’
export classpath=/usr/local/java:/usr/myClasses
Access modifier
− public
− private
− protected
− Default
Akses Default
Akses public
Keyword : public
contoh
Akses protected
Keyword : protected
contoh
Akses private
Keyword : private
contoh
◦ Mendefinisikan class-class
◦ Mendeklarasikan Fields (instance, static/class)
◦ Mendeklarasikan Method (accessor, mutator, static)
◦ Me-return value dan multiple return statement
◦ Reference ‘this’
◦ Method overloading
◦ Constructor (default, overloading, pemanggil this())
◦ Package
◦ Access Modifier (default, public, private, protected)