BAHASA BERORIENTASI OBJEK Java adalah bahasa berorientasi objek murni. Berarti bahwa segala sesuatu pada program Java adalah objek dan segala sesuatu diturunkan dari satu kelas objek. Seperti semua program berorientasi objek, program ini dipecah menjadi beberapa objek yang akan berkomunikasi dan melakukan aksi. Pada Latihan 4 berikut ini, kita akan mempunyai tiga objek, yaitu : book (Latihan 4), bookshelf (Latihan 4a) dan objek pembungkus fungsi main() yang dinamakan bookMain (Latihan 4b). Latihan 4. //books.java import java.lang.String; import java.io.DataInputStream; import java.io.IOException; class book { protected String title; protected String author; protected String publisher; book next; book() { title = author = publisher = “ “; next = null; } book(book other) { title = other.title; author = other.author; publisher = other.publisher; next = null; } book(String aTitle, String anAuthor, String aPublisher) { title = aTitle; author = anAuthor; publisher = aPublisher; next = null; } void getBook() { try { DataInputStream dis = new DataInputStream(System.in); System.out.print(“Enter title : “); System.out.flush(); title = dis.readLine(); if (title.equals(“done”)) return; system.out.print(“Enter author : “); system.out.flush(); author = dis.readLine(); system.out.print(“Enter publisher : “); system.out.flush(); publisher = dis.readLine(); next = null; } catch (IOException ioe) { System.out.println (ioe.toString()); System.out.println (“Unable to get the book data.“); return; } } void showBook() { System.out.println (“Title :” + title); System.out.println (Author :“ + author); System.out.println (Publisher :” + publisher); } // Pengakses data String getTitle() { return title; } String getAuthor() { return author; } String getPublisher() { return publisher; } // Pengubah data void setTitle(String aTitle) { title = aTitle; } void setAuthor(String anAuthor) { author = anAuthor; } void setPublisher(String aPublisher) { publisher = aPublisher; } } Listing latihan 4a. berikut ini berisi implementasi kelas bookshelf. Kelas ini benar-benar merupakan contoh yang sangat penting karena disini dapat dilihat perbedaan antara Java dan C++. Kelas ini juga mendemonstrasikan bagaimana Java dapat membuat struktur data yang menunjuk dirinya sendiri tanpa menggunakan pointer. Latihan 4a. class Bookshelf { protected book first, last; protected long count; Bookshelf() { first = last = null; count = 0; } void add(book aBook) { if (first != null) { last.next = new book(aBook); last = last.next; } else { first = new book(aBook); last = first; } count++; } long size() { return count; } void print() { book curBook = first; int cnt=1; while (curBook != null) { System.out.println(“Book : “ + cnt++); curBook.showBook(); curBook = curBook.next; } } } Pada listing latihan 4b berikut ini adalah implementasi kelas ini. Fungsi main memproses masukan dari pengguna dan membuat senarai berantai untuk buku di rak buku kita kemudian mencetaknya ke layar monitor. Latihan 4b. class bookMain { public static void main(String args[]) { Bookshelf mybooks = new Bookshelf(); boolean done = false; System.out.println(“Enter your books.”); System.out.println(“Type ‘done’ when finished.”); while (!done) { book curBook = new book(); curBook.getBook(); if (! (curBook.getTitle()) .equals(“done”)) { mybooks.add(curBook); } else done = true; } // Mencetak judul buku yang ada di rak buku System.out.println(“Number of books in bookshelf : “ + mybooks.print(); } } Berikut ini adalah keluaran dari program bookMain di atas : Enter your books. Type ‘done’ when finished.
Number of books in bookself : 2 Book : 1 Title : Belajar Java Author : Hendra Adiguna Publisher : Flash Net Book : 2 Title : Belajar Java Script Author : Hendra Adiguna Publisher : Flash Net Pada program diatas, System.out.println() merupakan kelas bawaan dan masih ratusan lagi kelas pada lingkungan Java. | Home | | Kembali ke atas | |






0 komentar:
Posting Komentar