Ini sekedar mendokumentasikan pembelajaran saya, jika suatu saat lupa bisa mencari referensi lagi dari tulisan saya ini. Saya belajar bahasa program secara otodidak, jadi kalau ada bahasa/istilah-istilah pemprograman yang salah itu mungkin saja ada. Silahkan buat anda yang merasa tulisan ini bermanfaat untuk dipelajari untuk memahami dan mempelajarinya.
Kelas Utamanya:
import java.util.*;
public class kelasUtama {
int angkah1,angkah2;
Scanner input=new Scanner(System.in); // buat scanner agar user bisa memasukan angka.
kelasKedua hitung; /* 1. Jika input dinamis/variabel maka tidak jadi kelasKedua hitung = new kelasKedua(int,int) * 2. dan kelasKedua hitung <== hitung adalah variabel buatan, * 3. tidak akan bisa jika int hitung karena hitung=new kelasKedua(angkah1,angkah2) pada contoh di bawah */
// buat konstruktor
kelasUtama(){
mulai(); // sisipkan/panggil void mulai
}
void mulai(){
System.out.println("Masukan angka1: ");
angkah1=input.nextInt(); // menyimpan inputan pertama pada variabel angkah1 System.out.println("Masukan angka2: ");
angkah2=input.nextInt(); // menyimpan inputan kedua pada variabel angkah2 hitung=new kelasKedua(angkah1,angkah2); // dipakainya di sini karena inputnya dinamis/variabel System.out.println(hitung.jumlahKan()); // mencetak hasilnya dengan memanggil fungsi jumlahKan()
// mencetak dengan memanggil fungsi getHasil()
System.out.println("Memakai perintah getHasil(): "+hitung.getHasil());
// input angka secara konstanta(tetap), contoh di bawah ini dengan angka 6
hitung.setInput(6);
// cetak proses setInput dengan fungsi System.out.println("Memakai perintah setInput(): "+hitung.getInput()); }
public static void main (String [] abc){
new kelasUtama(); // menjalankan kelasUtama
}
}
public class kelasUtama {
int angkah1,angkah2;
Scanner input=new Scanner(System.in); // buat scanner agar user bisa memasukan angka.
kelasKedua hitung; /* 1. Jika input dinamis/variabel maka tidak jadi kelasKedua hitung = new kelasKedua(int,int) * 2. dan kelasKedua hitung <== hitung adalah variabel buatan, * 3. tidak akan bisa jika int hitung karena hitung=new kelasKedua(angkah1,angkah2) pada contoh di bawah */
// buat konstruktor
kelasUtama(){
mulai(); // sisipkan/panggil void mulai
}
void mulai(){
System.out.println("Masukan angka1: ");
angkah1=input.nextInt(); // menyimpan inputan pertama pada variabel angkah1 System.out.println("Masukan angka2: ");
angkah2=input.nextInt(); // menyimpan inputan kedua pada variabel angkah2 hitung=new kelasKedua(angkah1,angkah2); // dipakainya di sini karena inputnya dinamis/variabel System.out.println(hitung.jumlahKan()); // mencetak hasilnya dengan memanggil fungsi jumlahKan()
// mencetak dengan memanggil fungsi getHasil()
System.out.println("Memakai perintah getHasil(): "+hitung.getHasil());
// input angka secara konstanta(tetap), contoh di bawah ini dengan angka 6
hitung.setInput(6);
// cetak proses setInput dengan fungsi System.out.println("Memakai perintah setInput(): "+hitung.getInput()); }
public static void main (String [] abc){
new kelasUtama(); // menjalankan kelasUtama
}
}
Kelas Keduanya:
public class kelasKedua{
// mendeklarasikan variabel
int angka1,angkau2; int angset;
/* misalkan kelasKedua(4,4) <== user menginput angka ke-1 4, dan angka kedua juga angka 4. penjelasan di atas untuk ==> kelasKedua(int angka1,int angka2) */
public kelasKedua(int angka1,int angka2){
this.angka1=angka1; // this.angka1=angka1 <== karena nama variabelnya sama maka ditambah this angkau2=angka2; // tak perlu ada this, karena nama variabel kelas beda.
}
/* buat operasi perhitungannya, di sini tidak perlu membuat variabel lagi semisal variabel hasil, seperti hasil=angka1+angka2; <== karena akan minta return, jadi sebenarnya variabel hasil di sini sekarang adalah jumlahKan()... Artinya jumlahKan()=angka1+angka2; BUKAN hasil=angka1+angka2 */
int jumlahKan(){
return angka1+angkau2;
}
/* sebenarnya dengan cara hitung.jumlahKan() yang ada pada kelasUtama sudah ada hasilnya, tapi ini cara lain untuk memprint/menampilkannya, jadi hitung.getHasil()*/
int getHasil(){
return jumlahKan();
}
/* membuat inputan konstanta, misalkan pada kelasUtamanya setInput(6) maka 6++, lalu untuk bisa mencetak hasilnya buat getInput() dengan mereturn variabel angset */
void setInput(int ang1){
angset=ang1; angset++;
}
/* agar bisa mencetak pada kelasUtamanya ==> hitung.getInput(); yang artinya hasilnya=angset; */ int getInput(){
return angset;
}
} // end class
// mendeklarasikan variabel
int angka1,angkau2; int angset;
/* misalkan kelasKedua(4,4) <== user menginput angka ke-1 4, dan angka kedua juga angka 4. penjelasan di atas untuk ==> kelasKedua(int angka1,int angka2) */
public kelasKedua(int angka1,int angka2){
this.angka1=angka1; // this.angka1=angka1 <== karena nama variabelnya sama maka ditambah this angkau2=angka2; // tak perlu ada this, karena nama variabel kelas beda.
}
/* buat operasi perhitungannya, di sini tidak perlu membuat variabel lagi semisal variabel hasil, seperti hasil=angka1+angka2; <== karena akan minta return, jadi sebenarnya variabel hasil di sini sekarang adalah jumlahKan()... Artinya jumlahKan()=angka1+angka2; BUKAN hasil=angka1+angka2 */
int jumlahKan(){
return angka1+angkau2;
}
/* sebenarnya dengan cara hitung.jumlahKan() yang ada pada kelasUtama sudah ada hasilnya, tapi ini cara lain untuk memprint/menampilkannya, jadi hitung.getHasil()*/
int getHasil(){
return jumlahKan();
}
/* membuat inputan konstanta, misalkan pada kelasUtamanya setInput(6) maka 6++, lalu untuk bisa mencetak hasilnya buat getInput() dengan mereturn variabel angset */
void setInput(int ang1){
angset=ang1; angset++;
}
/* agar bisa mencetak pada kelasUtamanya ==> hitung.getInput(); yang artinya hasilnya=angset; */ int getInput(){
return angset;
}
} // end class
View the Original article
Posting Komentar