03 June 2013

BELAJAR JAVA 17 : Constructor

        Salam semua : ).. Tutorial kali ni kita akan belajar benda baru iaitu constructor. Secara ringkasnya, constructor bermaksud method yang akan berfungsi sebaik saja kita panggil sesuatu class. Kalau tak paham takpe, kita akan tunjuk lepas ni.

Sekarang kita akan guna balik program kita dari tutorial 16.

Sekarang kita tukar method Home jadi macam ni:


Lepas kita panggil class Page, kita terus guna method berapa(). Hasilnya:

 Page Doraemon tadi dekat page null 

Apebende null ni?

Null ni maksudnya "takda apa-apa". Maksudnya di sini kita punya instance variable tu takda apa-apa lagi. Kita tak masukkan apa-apa lagi dalam instance variable.

Nak elak benda macam ni, kita boleh guna constructor.

Sekarang kita tambah constructor dekat class Monyet:

Nama constructor mesti SAMA dengan nama class.

Untuk pengetahuan semua.. Kita ada 2 contructor; Normal (macam diatas ) dan Default constructor. Default Constructor macam ni :

public Page ( )//Default Constructor tiada parameter           
{                                                                                                
         page = " ";  // Kita assignkan " " untuk String page.. 
}                                                                                                

Yang assign tu bergantung kepada jenis variable.. contoh:-
String      =     "  " ;
int           =        0 ;
double    =     0.0 ;
boolean  =     null ;

Untuk tutorial ni, kita punya constructor (Normal) berfungsi sama macam method setMakanan().

Disebabkan kita punya constructor ada parameter, kita kena tukar sikit class Home, macam ni:


Jadi, kat line 6 tu kita masukkan String dalam kurungan class Page.

Bila kita run, hasilnya:

 Komik Doraemon tadi dekat page 15 

Itu saja pengenalan kepada constructor.

Sekarang kita tambah sikit code kat class Home:



Kat sini kita panggil class Monyet dua kali dan letak dia kat objek nyet dengan nyet2. String yang kita masukkan kat constructor pun lain-lain.

Jadi, bila kita run kita akan dapat:

 Komik Doraemon tadi dekat page 15 
 Komik Doraemon tadi dekat page 43 

Kat sini kita dapat tengok setiap objek ada instance variable dia yang tersendiri ikut apa yang kita masukkan.

Inilah yang orang putih cakap object-oriented programming. Setiap objek tu ada ciri-ciri dia yang tersendiri.

Jadi, itu saja tutorial untuk kali ni.

Oh, sebelum terlupa, constructor tak ada dan tak boleh ada return type(contoh macam void, int, String dll).

02 June 2013

BELAJAR JAVA 16 : Instance Variables

      Instance variable sama saja macam variable yang biasa cuma tempat nak declare je yang lain. Kiranya instance variable ni macam variable untuk class la.

Sekarang kita akan buat program untuk demo instance variable. Jadi, kita akan guna dua class, Home dan Page.

Code untuk Home :

Untuk Page:


Instance variable yang dimaksudkan adalah yang ni:

  private String page; 

Kebiasaannya instance variable kita bubuh private.

private tu bermaksud variable tu hanya boleh diguna dalam class dia saja. Dia tak boleh guna direct dari class lain.

Sekarang kita ada tiga method dalam MonyetPage.

Method setPage() untuk kita set(masukkan nilai) kita punya instance variable.

Method getPage() untuk kita get(ambik nilai) apa saja benda yang dimasukkan ke dalam instance variable tu.

Method berapa() untuk print instance variable tu. Oh, kat sini kita guna cara nak print lain sikit guna printf. Printf bermaksud print ikut format yang kita tentukan. Kat sini kita punya format "Page Doraemon tadi dekat page %s". %s tu tempat kita nak letak String.


Sekarang kita tengok Home pulak.

Line 1 sampai 10 rasanya tak payah terang kot. Dah expert kan? :D

Line 11 kita start guna method dari Page. Kat sini kita guna setPage() untuk masukkan input dari user ke dalam instance variable.

Line 12 kita guna method berapa() untuk print balik kita punya instance variable.

Jadi, output program kita akan jadi macam ni(warna hijau tu input dari user):


Komik Doraemon tadi kat page berapa?                              15                                                                                          Page Doraemon tadi dekat page 15                                   

Itu saja untuk tutorial kali ni...


Jadi, kenapa kita kena bubuh private kat instance variable?

Ok, contoh kalau kita nak buat program macam stopwatch. Kita nak simpan saat je untuk instance variable. Kalau user nak bubuh masa untuk 10 jam kan susah, dia pulak yang nak kena kira nak tukar ke saat. Kalau silap kira, dah jahanam pulak program tu.

Jadi, itu sebab kita bubuh private, dan kita buat satu method set untuk ambik dalam unit jam pastu tukar ke saat. User tak payah la susah-susah nak kira sendiri.

01 June 2013

Balajar JAVA 15 : Cara Guna Method Ber"Parameter"

Tutorial kali ni kita akan tengok macam mana nak guna method yang ada parameter.
Buat masa ni anggap parameter tu macam maklumat tambahan yang diperlukan untuk guna method tersebut.

Untuk demo ni, kita akan guna dua class. Satu nama Home, satu lagi nama PeningKepala. Method main() kita letak dalam class Home, dan method yang ada parameter dalam class PeningKepala.

Program kita ni nanti akan tanya nama pengguna kemudian dia akan bagi salam kat pengguna.

Yang ni code untuk class Home:


Yang ni untuk Page:





Benda yang kita nak fokus sekarang adalah parameter. Yang warna hijau nilah kita panggil parameter:
public void bagiSalam(String nama){

Jadi bila kita run, output dia macam ni(kaler hijau tu yang user taip):

Siapa nama awak? Rossa
Assalamualaikum Rossa  
Awak sihat ?                     

Sekarang kita review balik apa yang berlaku pada program kita. Kita mula dengan class Home dulu.

Program kita ni kena ambik input dari pengguna jadi kita guna Scanner. Ingat lagi kan macam mana nak guna Scanner?
Kat line 8, kita declare class Page guna objek nama 'pg'.

Kat line 10, kita hanya bagitau pengguna nak buat apa.

Line 11, kita guna method dari Scanner iaitu nextLine(). Method nextLine() akan ambik input dari pengguna dalam bentuk String. Jadi, kat line 11 ni, program akan ambik input dari pengguna kemudian masukkan ke dalam variable 'nama'.

Kat line 13 barulah kita guna method yang ada parameter iaitu method bagiSalam().

Perhatikan yang kita masukkan variable 'nama' kat dalam kurungan method bagiSalam(). Ini sebab method bagiSalam() perlukan String, baru boleh guna.

Sekarang kita tengok class Page pulak sebab kita nak tau apa yang method bagiSalam() tu buat.

Jadi kat line 5, program akan print apa saja String yang kita masukkan ke dalam kurungan bagiSalam() tadi.

Nak lagi jelas ?


Itu saja untuk tutorial ni. Kalau ada keliru cepat-cepat tanya taw.. nanti susah pulak nak further.. tanya kat mana??? Tanya je laa kat sini..

komen..

25 May 2013

Belajar JAVA 14 : Cara Guna Class Lebih dari 1

        Sebelum ni semua program kita hanya guna satu class saja. Jadi, kali ni kita akan tengok macam mana nak buat satu program yang ada beberapa class.

Kalau guna Eclipse, nak buat class yang baru, klik kanan kat src kemudian New > Class.

Sekarang kita dah ada dua class. Satu class Home, satu lagi class Page.


Untuk demo tutorial ni, kita cuba buat benda simple. Kita cuba code ni:
Sekarang kita buat satu method yang bernama nakPrint().
public bermaksud semua boleh guna method tu. void pulak maksudnya method tu akan buat sesuatu.
Jadi, bila kita run, output dia macam ni:



Kenapa? Program tak jalan macam yang kita nak kan?
Ok, sebenarnya bila kita run program Java, method pertama sekali yang akan dia tengok adalah main(). Sekarang kita punya main() ada dalam class Home, dan kita tak buat apa-apa lagi kat method tu.
Sekarang sebagai demo, cara kita nak guna method nakPrint() daripada main() macam ni:

Sebelum kita boleh guna mana-mana class, kita mesti sandarkan class tu pada satu objek(object).
Kat line 6, objek kita bernama objek, dan kita sandarkan class yang baru pada objek.

Nak senang faham, anggap saja yang objek ni sebagai rujukan untuk guna mana-mana class. Kalau perasan la, cara kita declare objek sama macam kita declare variable.

Selepas dah ada objek, baru kita boleh guna method yang ada dalam class Page. Sekarang kita nak guna method nakPrint().

Jadi, apa yang kita kena buat, tulis nama objek, kemudian dot '.', Lepas tu nama method yang kita nak guna.

Dan lepas kita run sekali lagi, hasilnya:

Senang tak nak dapat 4.00 dalam Computer Science?
Itu saja untuk tutorial kita kali ni.

Jadi, kenapa kita ngada-ngada sangat nak buat banyak-banyak class ni kan?

Ok, bayangkan la kalau kita jadi boss untuk syarikat game. Kita boleh suruh orang ni buat class ni, orang tu buat class yang tu, dan last sekali kita yang sebagai boss ni boleh guna class yang dah siap tu kat main(). Dapat menjimatkan masa.

Belajar JAVA 13 : While LOOP (Berulang-ulang)

Sekarang kita akan belajar benda baru iaitu loop.

Kita boleh guna loop kalau kita nak program ulang-ulang kita punya code sebanyak mana yang kita tentukan.
Macam roller coaster?? Boleh tahan laa.. (n_n)

18 May 2013

Belajar JAVA 12 : Switch Statement

Ok, katakanlah kalau kita nak buat program guna if else macam ni:


Tak ke serabut nak tengok code tu? Jadi, untuk tutorial ni kita akan belajar alternatif kepada if else iaitu switch. Kita boleh coding program yang seperti ini..



Baru la kemas sikit...

Cara nak guna switch, mula-mula tulis switch kemudian kurungan. Dalam kurungan tu kita tulis variable yang nak kita test. Lepas tu tulis kurungan yang macam langsir tu untuk buat body dia.

Dalam body dia, barulah kita tulis apa yang nak dibuat oleh program menggunakan perkataan case.

Case tu bermaksud kalau variable yang kita tulis dalam kurungan tu sama dengan case, program akan jalankan step yang selepas titik bertindih tu.

Yang break tu pulak nak suruh program jangan tengok dah pilihan yang lain lepas dia dah jalankan step dia.

Untuk default tu dia akan run bila variable yang kita test tu takde langsung dalam case yag kita sediakan. Maksudnya kalau variable yang kita test tak sama dengan case yang ada, baru dia jalankan yang default. Dia sama macamelse la kiranya. Apa?? Tak caya boleh buat macam ni?? Ok.. Ni bukti output dia.. gedagang~

Seorang yang tegas dan garang .. jadi pengawas di sekolah.. Tapi anda ni MANJA sebenarnya.. ala tak yah tipu..
Ok..Itu saja untuk tutorial 12. Switch ni cuma alternatif kepada if else kalau nak bagi code kita lebih kemas saja, tapi dia masih ada kelemahan.

Contoh, switch statement tak boleh buat macam ni:
if (bulan == 1 || bulan ==2)
macam ni pun tak boleh:
if (bulan < 2)
Switch hanya boleh digunapakai kalau kita nak test satu nilai pada satu masa. Dia tak boleh test kalau variable tu dalam lingkungan sekian-sekian.

11 May 2013

Belajar JAVA 11 : Logic

          Logik?? Fikir Logik? Logic Gates? Boolean Theory?? Semua ini mesti akan ada dalam benak pemikiran tuan-tuan dan puan-puan yang baru sahaja membaca perkataan "Logic" berkenaan, biasalah anda semua mesti merupakan pelajar2 elit yang mengambil kursus2 fizik, engineering dan lain2.. Paling tidak pun kita di Malaysia patut merasa bersyukur kerana wajib mengambil subjek Sains dan Matematik sehingga  ke peringkat SPM.  Jadi, mestilah perkataan Logik ni dah biasa bukan? Ok.. Sebelum kita belajar.. meh tengok sejarah ringkas kejap..

Al-Khawarizmi - pengasas Algebra dan teknik logik /aritmetik (algorithm)

George Boole - Pengasas prototaip  Boolean Logic  (Founder of computer science field)

... no general method for the solution of questions in the theory of probabilities can be established which does not explicitly recognise ... those universal laws of thought which are the basis of all reasoning .."George Boole (1815–1864)". Kerryr.net. Retrieved 2013-04-22.

Sebab tu ada beza IT dan computer science : )
Nikola Tesla - Jurutera  yang diperakui pencipta  siri get elektronik logik AND

         Jadi, ada kaitan ke subjek JAVA kita dengan tokoh-tokoh ni semua?  Di sini ingin Fieq tegaskan kita sememangnya menggunakan karya-karya agung mereka, macam Boolean Theory seperti AND, OR dan NOT dalam bingkisan perkongsian ilmu hari ini. Seperti sebelumnya kita hanya guna satu syarat saja untuk program buat pilihan dengan menggunakan if statement, kali ni kita tengok macam mana nak tetapkan beberapa syarat untuk satu pilihan menggunakan logical operator.

Kita akan guna source code ni sebagai rujukan:

Sorry... Alaahh.. Sekali sekala nak jugak promote uni sendiri.. (n_n)

Output dia:
Awak layak menyertai Ijazah Sarjana Muda Alam Bina UiTM

Awak tidak layak menyertai Ijazah Sarjana Muda UiTM
Ohh yee.. Sebelum terlupa kita boleh je nak letak semua if tanpa else kalau niat kita nak cuba semua statement..

Dalam source code ni kita akan fokus pada baris ke - 7  sahaja.

Logical operator yang telah kita guna kat sini adalah tanda 'double ampersand' (&&) , disebut sebagai AND atau dalam bahasa Melayu DAN.




Kalau kita letak operasi AND bermaksud semua syarat mesti dipenuhi sebelum program boleh jalankan step seterusnya, kalau takde dia akan pergi ke else(kalau ada else).

Nak bagi lebih nampak, tukar line 7 tu jadi macam ni:
if (kelayakan == "SPM" && kelayakan != "Diploma")
System.out.println("Awak layak menyertai Ijazah Sarjana Muda UiTM (Dengan potongan jam kredit)"); 

dan apabila kita run, kita akan dapat
Awak layak menyertai Ijazah Sarjana Muda UiTM (Dengan potongan jam kredit)
Awak layak menyertai Ijazah Sarjana Muda Alam Bina UiTM
Awak tidak layak menyertai Ijazah Sarjana Muda UiTM
Syarat yang pertama tu dah dipenuhi tapi syarat yang kedua tu tidak dipenuhi, akhirnya program pilih untuk jalankan step else.

Satu lagi logical operator adalah '||', disebut sebagai OR dan dalam bahasa Melayu sebagai ATAU.
Untuk demo, cuba tukar line 10 jadi macam ni
if (kelayakan == "SPM" || kelayakan == "Asasi")
System.out.println("Awak layak menyertai Ijazah Sarjana Muda UiTM (Tanpa potongan jam kredit)"); 
dan hasilnya (Kita boleh lihat penambahannya)
Awak layak menyertai Ijazah Sarjana Muda UiTM (Dengan potongan jam kredit)         Awak layak menyertai Ijazah Sarjana Muda UiTM (Tanpa potongan jam kredit)
Awak layak menyertai Ijazah Sarjana Muda Alam Bina UiTM
Awak tidak layak menyertai Ijazah Sarjana Muda UiTM

Untuk operasi OR ni pulak, paling kurang mesti ada SATU syarat yang dipenuhi. Dalam kes ni syarat yang pertama sudah dipenuhi, jadi dah cukuplah untuk program jalankan step yang seterusnya.

Kalau dua-dua syarat tak dipenuhi barulah program akan pilih ke else. [tapi program kali ini saya sengaja tidak bubuh else untuk beritahu yang tanpa else pon if masih boleh dipakai banyak kali]

Kalau nak studi lebih atau cuba pahamkan.. boleh try cover balik chapter Physics macam Logic Gates, Electricity.. Ada math macam Sets, Truth Table dan lain2.

Jadi, itu saja untuk tutorial kali ni. Kalau ada pening kat mana-mana boleh tinggalkan komen atau hantar ke Blog Rafieq atau twitter.

04 May 2013

Belajar JAVA 10 : Jom Pilih Memilih (IF...else)

Tutorial 10 kali ni kita akan buat program yang boleh buat pilihan guna statement if...else.

If else ni macam kalau kita nak program buat benda yang berlainan bergantung kepada situasi yang kita tentukan. Contoh kalau anda lelaki, kita nak dia print "anda macho", kalau perempuan, kita nak dia print "anda cun".

Sekarang boleh cuba coding ni:

Bila kita run, ni output dia:
Wah 5 ringgit je? Dah laa murah wangi pulak tu.. mesti sedap ni
Ok, sebelum aku terangkan apa yang berlaku, perhati kat line 8 ada benda baru, iaitu tanda ==.

Yang tu salah satu daripada tanda yang boleh kita guna untuk buat perbandingan. Tengok betul-betul ada dua simbol '='. Sebelum ni kan kita ada belajar kalau satu simbol '=' bermaksud kita masukkan data ke dalam variable, kalau dua bermaksud kita buat perbandingan.

Kat bawah ni tanda-tanda yang boleh diguna untuk buat perbandingan:

SimbolMaksud
==sama dengan
!=tak sama dengan
>lebih besar daripada
<lebih kecik daripada
>=lebih besar atau sama dengan
<=lebih kecik atau sama dengan
Ok, sekarang kita tengok pulak apa yang berlaku kat program kita.

Statement if else untuk program kita ni bermula dari line 8 sampai 13.

Nak mula if else tulis if dulu kemudian diikuti dengan kurungan. Dalam kurungan tu kita tulis dia punya situasi. Kemudian kita tulis apa nak dibuat untuk situasi tu.

Untuk program kita ni, kalau nombor sama dengan 10, kita suruh dia print "lalala".

Kalau tak menepati situasi tu, dia akan pergi tengok pilihan lain pulak, dia akan pergi ke else. Kat else, dia akan print "justin bibir".

Dalam coding kita ni, kita masukkan 5 ke dalam nombor.

Lepas tu, dia masuk ke statement if else. Dia cek kalau sama dengan 10, print "Mahalnya durian nih!!", kalau tak, print "Wah " + harga + " ringgit je? Dah laa murah wangi pulak tu.. mesti sedap ni"". Untuk kes kita ni, 5 mesti la tak sama dengan 10, tak percaya tanya mak. Jadi, itulah sebabnya output kita keluar
Wah 5 ringgit je? Dah laa murah wangi pulak tu.. mesti sedap ni

Sekarang tukar line 8 guna simbol '<'.
if (nombor < 10)
Bila kita run, output dia:
Mahalnya durian nih!!

Sekarang 5 sememangnya lebih kecik dari 10, tak percaya tanya ayah. Jadi, dia akan pilih laluan untuk print "Mahalnya durian nih!!".

Statement if else ni dia akan run satu pilihan sahaja. Macam yang baru tukar ni. Lepas dia print "Mahalnya durian nih!!", dia takkan print "Wah 5 ringgit je? Dah laa murah wangi pulak tu.. mesti sedap ni" sekali sebab tu dah dalam pilihan yang lain.

Tapi semasa dia buat pilihan, dia akan cek pilihan yang atas dulu.

Itu saja, habis sudah...