Makalah java

on

  • 676 views

 

Statistics

Views

Total Views
676
Views on SlideShare
676
Embed Views
0

Actions

Likes
0
Downloads
21
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Microsoft Word

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Makalah java Makalah java Document Transcript

  • MAKALAH BAHASA PEMROGRAMAN JAVA Diajukan guna memenuhi tugas mata kuliah Teknologi Informasi dan Komunikasi Rombel 1 Oleh: Nama : Bagus Hutomo Nugrahanto NIM :1102412118 Prodi : Teknologi Pendidikan FAKULTAS ILMU PENDIDIKAN UNIVERSITAS NEGERI SEMARANG 2013
  • KATA PENGANTAR Segala puji syukur saya penjatkan kehadirat Allah SWT yang telah memberikan rahmat, taufik, hidayah-Nya sehingga saya dapat menyelesaikan penulisan makalah tentang bahasa pemrograman Java. Terselesaikannya penulisan makalah ini diharapkan akan memberi informasi yang bersifat mengedukasi dan menghadirkan klarifikasi terhadap berbagai hal tentang Java Penulisan makalah ini diajukan guna memenuhi tugas mata kuliah TIK (Teknologi Informasi dan Komunikasi) dan berguna untuk memahami lebih jauh lagi tentang berbagai hal yang berhubungan dengan bahasa pemrograman Java.Penyusunan makalah ini sudah pasti jauh dari sempurna, oleh karena itu kritik dan saran yang membangun sangat diharapkan agar membuat makalah ini menjadi lebih baik. Semarang, 11 Oktober 2013 Penulis
  • BAB I PENDAHULUAN 1.1 LATAR BELAKANG Di tengah kemajuan zaman yang semakin cepat pada saat ini membuat segala sesuatunya serba mudah dan serba mungkin untuk dilakukan. Terutama apabila kita menggunakan sebuah program computer kita akan sangat tertinggal apabila kita tidak selalu mengupdate informasi kita.Dalam dunia pemrograman komputer, dikenalbanyak bahasa pemrograman, seperti C, C++, Pascal, Basic, Java, dan lain-lain.Di antara banyaknya bahasa pemrograman, Java adalah salah satu yangpaling diminati. Oleh karena itulah, yang akan dibahas dalam makalah iniadalah bahasa pemrograman Java. Java merupakan salah satu bahasa pemrograman yang paling popular dan lebihfamiliardengan kemudahan dalam penggunaannya.Java menciptakan sebuah bahasa pemrograman, Java dapat membuat seluruh bentuk aplikasi, desktop, web dan lainnya, sebagaimana dibuat dengan menggunakan bahasa pemrograman konvensional yang lain. Dalam dunia pemrograman komputer, dikenal banyak bahasa pemrograman, seperti C, C++, Pascal, Basic, Java, dan lain-lain.Bahasa pemrograman yang digunakan pada Java bersifat umum/non-spesifik (general purpose), dan secara khusus didisain untuk memanfaatkan dependensi implementasi seminimal mungkin. Java menurut definisi dari Sun adalah mana untuk sekumpulan teknologi untuk membuat dan menjalankan perangkat lunak pada komputer stand alone ataupun pada lingkungan jaringan.Karena fungsionalitasnya yang memungkinkan aplikasi java mampu berjalan di beberapa platform sistem operasi yang berbeda, java dikenal pula dengan slogannya, "Tulis sekali, jalankan di mana pun".Saat ini java merupakan bahasa pemrograman yang paling populer digunakan, dan secara luas dimanfaatkan dalam pengembangan berbagai jenis perangkat lunak aplikasi ataupun aplikasi berbasis web. Sebagai sebuah bahasa pemrograman, Java dapat membuat seluruh bentuk aplikasi, desktop, web dan lainnya, sebagaimana dibuat dengan menggunakan bahasa pemrograman konvensional yang lain.Java adalah bahasa pemrograman yang berorientasi objek (OOP) dan dapat dijalankan pada berbagai platform sistem operasi.Perkembangan Java tidak hanya terfokus pada satu sistem operasi, tetapi dikembangkan untuk berbagai system operasi dan bersifat open source.
  • 1.2 RUMUSAN MASALAH Berdasarkan tema yang diangkat beberapa permasalahan yang akan dibahas dalam makalah ini antara lain adalah: 1. Bagaimana sejarah perkembangan Java 2. Karakteristik Java 3. Aturan dasar Java 4. Fase-fase pemrograman Java 5. Paket Java yang sering digunakan dalam program Java 6. Apa saja fitur yang dimiliki Java 7. Apa saja struktur pemrograman Java 8. Bagaimana langkah awal memulai program Java 9. Seperti apa perintah operasi untuk menjalankan progam Java 1.3 TUJUAN 1. Mengetahui sejarah berkembangnya bahasa pemrograman Java 2. Menjelaskan karakteristik pemrograman Java 3. Mengetahui aturan dasar Java 4. Mengetahui fase-fase pemrograman Java 5. Mengetahui paket Java yang sering digunakan dalam program Java 6. Mengetahui fitur-fitur apa saja yang ada pada Java 7. Memahami struktur pemrograman Java 8. Mengetahui bagaimana langkah awal memulai Java 9. Memahami apa saja perintah operasi untuk menjalankan Java
  • BAB II PEMBAHASAN 2.1 Sejarah perkembangan Java Bahasa pemrograman Java lahir pada tahun 1991 karena ketidakpuasan seorang insiyur di SUN Micro System bernama James Gosling.Ia tidak puas dengan compiler C++ (yang ia gunakan untuk membuat software yang di-embet pada peralatan elektronik) karena dinilai terlalu banyak menghasilkan bug, berbiaya besar dan sangat tergantung terhadap platform. gosling merasa perlu membuat compiler baru sebagai solusi terhadap sejumlah kelemahan pada C++ tersebut. Compiler baru tersebut diberi nama dengan Oak. Compiler ini mirip dengan C++ tetapi dengan sejumlah pengurangan fitur yang dianggap kurang menguntungkan dalam pengembangan, seperti multipelinheritance, konversi tipe secara otomatis, penggunaan pointer dan managemen memori. Pada tahun 1994, Oak diubah namanya menjadi Java.Pada era ini Java digolongkan sebagai bahasa yang memiliki dukungan baik terhadap web.Sun kemudian mengumumkan bahasa Java sebagai bahasa yang mampumenjalankan Web secara interaktif dan aman. Pada pertengahan tahun 1995, untuk pertama kali kode sumber Java versi 1.0a2 dibuka. Kesuksesan mereka diikuti dengan untuk pemberitaan pertama kali pada surat kabar San Jose Mercury News pada tanggal 23 Mei 1995 dan pada saat itu pula Netscape mengumumkan akan mengadopsi Java didalam browser mereka. Kemudian, Java secara de-factomenjadi bahasa standar di dunia maya Internet. Perkembangan Java dipermudah lagidengan tersedianya JDK (Java Development Kit) di situs milik Sun yang dapat di-download gratis. Akhir tahun 1995, IBM dan Microsoft memutuskan untuk membelilisensi Java untuk dipakai dalam teknologi mereka.
  • Sayang terjadi perpecahan di antara mereka suatu hari pada pukul 04.00 di sebuah ruangan hotel Sheraton Palace. Tiga dari pimpinan utama proyek, Eric Schmidt dan George Paolini dari Sun Microsystems bersama Marc Andreessen, membentuk Netscape. Nama Oak, diambil dari pohon oak yang tumbuh di depan jendela ruangan kerja "Bapak Java", James Gosling. Nama Oak ini tidak dipakai untuk versi release Java karena sebuah perangkat lunak lain sudah terdaftar dengan merek dagang tersebut, sehingga diambil nama penggantinya menjadi "Java". Nama ini diambil dari kopi murni yang digiling langsung dari biji (kopi tubruk) kesukaan Gosling. Konon kopi ini berasal dari Pulau Jawa. Jadi nama bahasa pemrograman Java tidak lain berasal dari kata Jawa (bahasa Inggris untuk Jawa adalah Java). Secara kebetulan World Wide Web menjadi begitu populer, banyak kelebihan yang membuat bahasa Gosling dapat digunakan dengan baik dan cocok pada proyek maupun alat untuk adaptasi ke Web. Pengembang Sun merancang cara bagi program yang akan berjalan dengan aman dari halaman web dan memilih nama baru yang menarik untuk menemani fokus baru bahasa itu: Java. Dalam suatu wawancara pada pertengahan tahun 94 James Gosling mengatakan ―We could build a real cool browser. It was one of the few things in the client/serve mainstream that needed some of the weird things we’d done: architecture neutral, real-time,reliable, secure— issues that weren’t terribly important in the workstation world. So we built a browser.” Akhirnya dibuatlah suatu browser oleh Patrick Naughton dan Jonathan Payne. Browser itu diberi nama Hot Java. Browser ini dibuat dengan menggunakan bahasa java untuk menunjukkan kemampuan dari java. Tidak kalah hebatnya mereka juga membuat teknologi yang disebut Aplet sehingga browser dapat menjalankan kode program didalam browser. Inilah bukti dari teknologi itu yang ditunjukkan java pada tanggal 25 mei 1995. Sejak saat itu browser java memberikan lisensinya kepada browser lain untuk bisa menjalankan Applet dan pada tahun 1996 diberikan pada Internet Explorer. Akhirnya pada tahun 1996 dikeluarkan versi pertama dari java dengan mengeluarkan java 1.02. Pada tahun 1998 dikeluarkan java 1.2 dan java mulai mengeluarkan slogannya ―Write once, Run anywhere ―
  • Walaupun Java dapat digunakan untuk banyak hal, Web menyediakan tampilan yang dibutuhkan untuk menarik perhatian internasional. Seorang programmer yang menempatkan program Java pada halaman web dapat langsung diakses ke seluruh planet "Web-surfing". Karena Java adalah teknologi pertama yang bisa menawarkan kemampuan ini, Java kemudian menjadi bahasa komputer pertama yang menerima perlakuan bagai bintang di media. Java adalah bahasa pemrograman untuk berbagai tujuan (general purpose), bahasa pemrograman yang concurrent, berbasis kelas, dan berorientasi objek, yang dirancang secara khusus untuk memiliki sesedikit mungkin ketergantungan dalam penerapannya. Hal ini dimaksudkan untuk memungkinkan pengembang aplikasi "write once, run anywhere" (WORA), yang berarti bahwa kode yang dijalankan pada satu platform tidak perlu dikompilasi ulang untuk di tempat lain. Java saat ini menjadi salah satu bahasa pemrograman yang paling populer digunakan, terutama untuk aplikasi web client-server, dengan 10 juta pengguna. 2.2Karakteristik Java Java memiliki karakter berbeda dengan bahasa pemprograman yang lain. Beberapa karakter tersebut antara lain: 1. Sederhana, semudah C dan seampuh C++ Berlawanan dengan anggapan orangorang bahwa bahasa Java sulit untuk dipelajari, Java gampang untuk dipelajari terutama untuk orang yang sudah mengenal pemrograman tapi belum terlalu terikat pada paradigma pemrograman prosedural.Tentu saja ini berarti bahwa kita harus siap mempelajari salah satu teknologi yang berkembang paling cepat di dunia dalam dua tahun terakhir ini dengan banyak membaca tentunya baik dari buku maupun melalui web. Bahasa pemrograman Java menggunakan Sintaks mirip dengan C++ namun sintaks pada Java telah banyak diperbaiki terutama menghilangkan penggunaan pointer yang rumit dan multiple inheritance.Java juga menggunakan automatic memory allocation dan memory garbage collection. 2. Bergaya C++,
  • Memiliki sintaks seperti bahasa pemrograman C++ sehingga menarik banyak pemrogram C++ untuk pindah ke Java.Saat ini pengguna Java sangat banyak, sebagian besar adalah pemrogram C++ yang pindah ke Java. Universitas-universitas di Amerika Serikat juga mulai berpindah dengan mengajarkan Java kepada murid-murid yang baru karena lebih mudah dipahami oleh murid dan dapat berguna juga bagi mereka yang bukan mengambil jurusan komputer 3. Multiplatform. Kelebihan utama dari Java ialah dapat dijalankan di beberapa platform / sistem operasi komputer, sesuai dengan prinsip tulis sekali, jalankan di mana saja.Dengan kelebihan ini pemrogram cukup menulis sebuah program Java dan dikompilasi (diubah, dari bahasa yang dimengerti manusia menjadi bahasa mesin / bytecode) sekali lalu hasilnya dapat dijalankan di atas beberapa platform tanpa perubahan.Kelebihan ini memungkinkan sebuah program berbasis java dikerjakan diatas operating system Linux tetapi dijalankan dengan baik di atas Microsoft Windows.Platform yang didukung sampai saat ini adalah Microsoft Windows, Linux, Mac OS dan Sun Solaris.Penyebabnya adalah setiap sistem operasi menggunakan programnya sendirisendiri (yang dapat diunduh dari situs Java) untuk meninterpretasikan bytecode tersebut. 4. OOP (Object Oriented Programming - Pemrogram Berorientasi Objek) Java sangat berorientasi objek (OOP) dengan implementasi yang sangat baik sehingga kita bukan hanya belajar bagaimana membuat program yang baik (reusable, scalable, dan maintanable) tetapi juga kita belajar bagaimana cara berfikir yang baik untuk mengenali struktur masalah yang sedang kita hadapi dan memecahkannya secara sistematis dengan pola-pola tertentu (patterns). Bahasa berorientasi objek biasanya mempunyai ciri-ciri sebagai berikut: • Abstraksi yang baik untuk memudahkan pemahaman dan komunikasi. • Enkapsulasi: penyembunyian informasi dari pihak-pihak yang tidak memerlukannya sehingga kompleksitas tetap tertangani dengan baik. • Pewarisan dan polymorphism, teknik yang menyebabkan objek menjadi modular dan mudah untuk dicopot dan dipasang objek yang lain
  • • Komposisi dan Interface, berguna untuk membuat tingkat kopling yang lebih rendah dan struktur hirarki objek-objek yang rapih sehingga kita bias mengintegrasikan komponenkomponen untuk membuat sistem yang besar. 5. Perpustakaan Kelas Yang Lengkap, Java terkenal dengan kelengkapan library/perpustakaan (kumpulan program program yang disertakan dalam pemrograman java) yang sangat memudahkan dalam penggunaan oleh para pemrogram untuk membangun aplikasinya.Kelengkapan perpustakaan ini ditambah dengan keberadaan komunitas Java yang besar yang terus menerus membuat perpustakaan-perpustakaan baru untuk melingkupi seluruh kebutuhan pembangunan aplikasi. 6. Pengumpulan sampah otomatis, Memiliki fasilitas pengaturan penggunaan memori sehingga para pemrogram tidak perlu melakukan pengaturan memori secara langsung (seperti halnya dalam bahasa C++ yang dipakai secara luas). 7. OpenPlatform, Write Once Run Anywhere (WORA), Portabel atau multi platform, program yang kita buat dapat dijalankan di Windows, Linux/Unix, Solaris, dan MacIntosh tanpa perlu diubah maupun di kompilasi ulang.Java adalah juga bahasa yang paling sesuai digunakan bersama dengan XML yang membuat data menjadi portabel, ini karena kelahiran XML tidak terlepas dari dukungan parser-parser berbahasa Java. Selain itu Java turut serta dalam mengkonvergenkan protocol menjadi Open protokol yaitu IP (Internet Protocol) terutama dalam Micro Java Masih ada beberapa hal yang tidak kompatibel antara platform satu dengan platform lain. Untuk J2SE, misalnya SWT-AWT bridge yang sampai sekarang tidak berfungsi pada Mac OS X. 8. Mudah didekompilasi. Dekompilasi adalah proses membalikkan dari kode jadi menjadi kode sumber. Ini dimungkinkan karena kode jadi Java merupakan bytecode yang menyimpan banyak atribut bahasa tingkat tinggi, seperti nama-nama kelas, metode, dan tipe data. Hal yang sama juga terjadi
  • pada Microsoft .NET Platform. Dengan demikian, algoritma yang digunakan program akan lebih sulit disembunyikan dan mudah dibajak/direverse-engineer. 9. Penggunaan memori yang banyak. Penggunaan memori untuk program berbasis Java jauh lebih besar daripada bahasa tingkat tinggi generasi sebelumnya seperti C/C++ dan Pascal (lebih spesifik lagi, Delphi dan Object Pascal).Biasanya ini bukan merupakan masalah bagi pihak yang menggunakan teknologi terbaru (karena trend memori terpasang makin murah), tetapi menjadi masalah bagi mereka yang masih harus berkutat dengan mesin komputer berumur lebih dari 4 tahun. Arsitekturnya yang kokoh dan pemrograman yang aman didukung oleh komunitas Open Source (ketiga terbesar setelah C dan C++ di SourceForge.net dan implementasi bahasa Java sudah menjadi milik umum). Dalam Java program yang kita buat tidak mudah untuk ―hang‖ karena konflik pada memori biasanya diselesaikan dengan mengumpulkan objek-objek yang sudah tak terpakai lagi secara otomatis oleh garbage collector. Penanganan kesalahan juga dipermudah dalam Java dengan konsep Exception.Bukan sekedar bahasa tapi juga platform sekaligus arsitektur. Java mempunyai portabilitas yang sangat tinggi. Ia dapat berada pada smartcard, pager, POS (Point of Service), handphone, PDA, palm, TV, Embedded device (PLC, micro controller), laptop, pc, dan bahkan server). Menyadari akan hal ini (one size doesn’t fit all) Sun membagi arsitektur Java membagi tiga bagian, yaitu: 1. Enterprise Java (J2EE) untuk aplikasi berbasis web, aplikasi sistem tersebar dengan beraneka ragam klien dengan kompleksitas yang tinggi. Merupakan superset dari Standar Java 2. Standar Java (J2SE), ini adalah yang biasa kita kenal sebagai bahasa Java, dan merupakan fokus kita sekarang. 3. Micro Java (J2ME) merupakan subset dari J2SE dan salah satu aplikasinya yang banyak dipakai adalah untuk wireless device / mobile device  Fitur-fitur utama yang lain: Mendukung multi-threading
  • Selalu memeriksa tipe object pada saat run-time Mempunyai automatic garbage collection untuk membersihkan objek yang tidak terpakai dari memori Mendukung exception sebagai salah satu cara penanganan kesalahan Secara singkat karakteristik dijabarkan oleh Prita Ekasari pada bukunya ―Algoritma & Pemprograman 1B‖ berdasarkan white paper resmi dari SUN, Java memiliki karakteristik berikut: 1. Sederhana (Simple) Bahasa pemrograman Java menggunakan Sintaks mirip dengan C++ namun sintaks pada Java telah banyak diperbaiki terutama menghilangkan penggunaan pointer yang rumit dan multiple inheritance.Java juga menggunakan automatic memory allocation dan memory garbage collection. 2. Berorientasi objek (Object Oriented) Java mengunakan pemrograman berorientasi objek yang membuat program dapat dibuat secara modular dan dapat dipergunakan kembali.Pemrograman berorientasi objek memodelkan dunia nyata kedalam objek dan melakukan interaksi antar objek-objek tersebut. 3. Terdistribusi (Distributed) Java dibuat untuk membuat aplikasi terdistribusi secara mudah dengan adanya libraries networking yang terintegrasi pada Java. 4. Interpreted Program Java dijalankan menggunakan interpreter yaitu Java Virtual Machine (JVM). Hal ini menyebabkan source code Java yang telah dikompilasi menjadi Java bytecodes dapat dijalankan pada platform yang berbeda-beda. 5. Robust
  • Java mempuyai reliabilitas yang tinggi. Compiler pada Java mempunyaikemampuan mendeteksi error secara lebih teliti dibandingkan bahasa pemrograman lain. Java mempunyai runtime-Exception handling untuk membantu mengatasi error pada pemrograman. 6. Secure Sebagai bahasa pemrograman untuk aplikasi internet dan terdistribusi, Java memiliki beberapa mekanisme keamanan untuk menjaga aplikasi tidak digunakan untuk merusak sistem komputer yang menjalankan aplikasi tersebut. 7. Architecture Neutral Program Java merupakan platform independent. Program cukup mempunyai satu buah versi yang dapat dijalankan pada platform berbeda dengan Java Virtual Machine. 8. Portable Source code maupun program Java dapat dengan mudah dibawa ke platform yang berbeda-beda tanpa harus dikompilasi ulang. 9. Performance Performance pada Java sering dikatakan kurang tinggi. Namun performance Java dapat ditingkatkan menggunakan kompilasi Java lain seperti buatanInprise, Microsoft ataupun Symantec yang menggunakan Just In Time Compilers (JIT). 10.Multithreaded Java mempunyai kemampuan untuk membuat suatu program yang dapat melakukan beberapa pekerjaan secara sekaligus dan simultan. 11.Dynamic Java didesain untuk dapat dijalankan pada lingkungan yang dinamis.Perubahan pada suatu class dengan menambahkan properties ataupun method dapat dilakukan tanpa menggangu program yang menggunakan class tersebut. 2.3 Aturan dasar Java
  • Aturan dasar dari penggunaan sintaks bahasa Java: Java bersifat case-sensitive. Secara umum Java mengabaikan spasi kosong (karakter yang tidak muncul pada layar, misalnya kosong, tab, baris baru). Brace {} adalah simbol pengelompokkan dalam Java yang menandai awal dan akhir bagian suatu program. Setiap pernyataan Java diakhiri dengan simbol ; . Simbol // membuat sebuah baris komentar, simbol /* ... */ membatasi bagian awal dan akhir suatu komentar. Komentar javadoc khusus digunakan untuk men-generate dokumentasi HTML untuk program Java, dapat menciptakan komentar javadoc dengan memulai baris dengan /** dan mengakhirinya dengan */ . Java memiliki beberapa kata yang dicadangkan dan tidak bisa digunakan dalam ekspresi biasa. Katakata tersebut disebut keyword. Kelas pertama dalam sebuah program Java (disebut kelas pengendali) harus memiliki nama yang sama dengan file dimana ia disimpan. 2.4 Fase-fase pemrograman Java Gambar dibawah ini menjelaskan aliran proses kompilasi dan eksekusi sebuah program Java : Gambar 1.1: Fase dari sebuah Program Java Langkah pertama dalam pembuatan sebuah program berbasis Java adalah menuliskan kode program pada text editor. Contoh text editor yang dapat digunakan antara lain : notepad, vi, emacs dan lain sebagainya. Kode program yang dibuat kemudian tersimpan dalam sebuah berkas berekstensi .java.
  • Setelah membuat dan menyimpan kode program, kompilasi file yang berisi kode program tersebut dengan menggunakan Java Compiler.Hasil dari kompilasi berupa berkas bytecode dengan ekstensi .class. Berkas yang mengandung bytecode tersebut kemudian akan dikonversikan oleh Java Interpreter menjadi bahasa mesin sesuai dengan jenis dan platform yang digunakan. 2.5 Paket Java yang sering digunakan dalam program Java 2.6 Fitur Java
  • 1. Java Virtual Machine (JVM) JVM adalah sebuah mesin imajiner (maya) yang bekerja dengan menyerupai aplikasi pada sebuah mesin nyata.JVM menyediakan spesifikasi hardware dan platform dimana kompilasi kode Java terjadi. Spesifikasi inilah yang membuat aplikasi berbasis Java menjadi bebas dari platform manapun karena proses kompilasi diselesaikan oleh JVM. Aplikasi program Java diciptakan dengan file teks berekstensi .java. Program ini dikompilasi menghasilkan satu berkas bytecode berekstensi .class atau lebih.Bytecode adalah serangkaian instruksi serupa instruksi kode mesin.Perbedaannya adalah kode mesin harus dijalankan pada sistem komputer dimana kompilasi ditujukan, sementara bytecode berjalan pada java interpreter yang tersedia di semua platform sistem komputer dan sistem operasi. 2. Garbage Collection Banyak bahasa pemrogaman lain yang mengijinkan seorang pemrogram mengalokasikan memori pada saat dijalankan. Namun, setelah menggunakan alokasi memori tersebut, harus terdapat cara untuk menempatkan kembali blok memori tersebut supaya program lain dapat menggunakannya. Dalam C, C++ dan bahasa lainnya, adalah pemrogram yang mutlak bertanggung jawab akan hal ini. Hal ini dapat menyulitkan bilamana pemrogram tersebut alpa untuk mengembalikan blok memori sehingga menyebabkan situasi yang dikenal dengan nama memory leaks. Program Java melakukan garbage collection yang berarti program tidak perlu menghapus sendiri objek – objek yang tidak digunakan lagi. Fasilitas ini mengurangi beban pengelolaan memori oleh pemrogram dan mengurangi atau mengeliminasi sumber kesalahan terbesar yang terdapat pada bahasa yang memungkinkan alokasi dinamis. 3. Code Security Code Security terimplementasi pada Java melalui penggunaan Java Runtime Environment (JRE).Java menggunakan model pengamanan 3 lapis untuk melindungi sistem dari untrusted Java Code. Pertama, classloader menangani pemuatan kelas Java ke runtime interpreter. Proses ini menyediakan pengamanan dengan memisahkan kelas – kelas yang berasal dari local disk dengan kelas – kelas yang diambil dari jaringan. Hal ini membatasi aplikasi Trojan karena kelas – kelas yang berasal dari local disk yang dimuat terlebih dahulu. Kedua, bytecode verifier membaca bytecode sebelum dijalankan dan menjamin bytecode memenuhi aturan – aturan dasar bahasa Java.
  • Ketiga, manajemen keamanan menangani keamanan tingkat aplikasi dengan mengendalikan apakah program berhak mengakses sumber daya seperti sistem file, port jaringan, proses eksternal dan sistem windowing. Setelah seluruh proses tersebut selesai dijalankan, barulah kode program di eksekusi. Java juga menyediakan beragam teknik pengamanan lain : a. Bahasa dirancang untuk mempersulit eksekusi kode perusak. Peniadaan pointer merupakan langkah besar pengamanan.Java tidak mengenal operasi pointer.Di tangan pemrogram handal, operasi pointer merupakan hal yang luar biasa untuk optimasi dan pembuatan program yang efisien serta mengagumkan.Namun mode ini dapat menjadi petaka di hadapan pemrogram jahat.Pointer merupakan sarana luar biasa untuk pengaksesan tak diotorisasi.Dengan peniadaan operasi pointer, Java dapat menjadi bahasa yang lebih aman. b. Java memiliki beberapa pengaman terhadap applet. Untuk mencegah program bertindak mengganggu media penyimpanan, maka applet tidak diperbolehkan melakukan open, read ataupun write terhadap berkas secara sembarangan. Karena Java applet dapat membuka jendela browser yang baru, maka jendela mempunyai logo Java dan teks identifikasi terhadap jendela yang dibuka.Hal ini mencegah jendela pop-up menipu sebagai permintaan keterangan username dan password. 4. Applet Program Java yang dapat berjalan di atas browser, yang dapat membuat halaman HTML lebih interaktif. 5. Java Networking Sekumpulan API yang menyediakan fungsi untuk aplikasi-aplikasi jaringan, seperti penyediaan akses untuk TCP, UDP, IP Address dan URL. Tetapi Java Networking tidak menyediakan akses untuk ICMP dikarenakan alas an sekuriti dan pada kondisi umum hanya administrator (root) yang bisa memanfaatkan Protokol ICMP. 6. Java Database Connectivity(JDBC) Menyediakan sekumpulan API yang dapat digunakan untuk mengakses database seperti Oracle,MySQL,PostgreSQL,Microsoft SQL Server. 7. Java Security Java Security menyediakan sekumpulan API untuk mengatur security dari aplikasi Java baik secara High Level datau Low Level, seperti public/private key menegement dan certificates. 8. Java Swing Menyediakan sekumpulan API untuk membangun aplikasi-aplikasi GUI dan model GUI yang diinginkan bisa bermacam-macam. 9. Java RMI
  • Java RMI menyediakan sekumpulan API untuk membangun aplikasi-aplikasi Java yang mirip dengan model RPC (remote Procedure Call), jadi objek-objek Java bisa di call secara remote di Jaringan Komputer. 10. Java 2D/3D Merupakan sekumpulan API untuk membangun grafik-grafik 2D/3D yang menarik dan juga akses ke printer. 11. Java Server Pages (JSP) Berkembang dari Java Servlet yang digunakan untuk menggantikan aplikasi-aplikasi CGI.JSP yang mirip ASP dan PHP merupakan alternatif terbaik untuk solusi aplikasi internet. 12. JNI (Java Native Interface) Merupakan sekumpulan API yang digunakan untuk mengakses fungsi-fungsi pada library (*.dll atau *.so) yang dibuat dengan bahasa pemrograman yang lain seperti C, C++, dan Basic. 13. Java Sound Menyediakan kumpulan API untuk manipulasi Sound. 14. Java IDL + CORBA Menyediakan dukungan Java untuk implementasi CORBA (Common Object Request Broker) yang merupakan model distributed-Object untuk solusi aplikasi besar di dunia Networking. 15. Java Card Java Card utamanya dipakai untuk aplikasi-aplikasi pada smart card, yang sederhana wujudnya seperti SIM Card pada Handphone. 16. JTAPI (Java Telephony API) Sekumpulan API untuk memanfaatkan devices-devices telephony, sehingga cocok untuk aplikasi-aplikasi CTI (Computer Telephony Integration) yang dibutuhkan seperti ACD (Automatic Call Distribution) PCPBX dan lainnya. 2.7 Struktur pemrograman Java Bahasa pemrograman java, merupakan bahasa pemrograman yang diturunkan dari C. Sehingga, sebagian besar syntax-nya hampir mirip dengan C. Dalam bahasa Java juga dikenal sangat case sensitive, sehingga besar kecilnya huruf yang kita ketikkan ke dalam program dapat mempengaruhi program itu sendiri.Java yang sudah disusun menggunakan OOP murni, yaitu pada setiap program harus memiliki sebuah class juga dapat disusun menjadi program procedural.Jadi, supaya benar- benar menjadi program yang berbasis OOP kita harus
  • mengenal struktur java terlebih dahulu. Struktur bahasa pemrograman java, terdiri atas 3 layer (lapisan). Yaitu : 1. Package, yaitu suatu pengelompokan class-class dalam satu paket agar mudah digunakan. Suatu package dapat memiliki satu atau lebih subpackage sehingga dapat membentuk suatu hierarki. 2. Import, yaitu suatu deklarasi yang digunakan untuk menunjukkan nama package yang digunakan dalam suatu program java. Import juga memiliki hierarki seperti package. 3. Class, yaitu merupakan ciri utama program java. Class adalah inti dari program dengan ekstensi Dalam program java, nama suatu class harus sama dengan nama file *.java tersebut. Misal terdapat program hello.java, maka nama class tersebut harus menjadi class hello{}. Class terdiri dari : Nama class Variabel konstruktor Method 2.8 Langkah awal pemrograman Java Untuk membuat program Java, seperti telah disebutkan sebelumnya, Anda membutuhkan JDK. Proses instalasi JDK tersebut sangat mudah dan tidakmembutuhkan pengetahuan tertentu. Namun untuk menggunakannya Anda perlu melakukan beberapa penyesuaian dengan sistem operasi Anda.Umumnya yang perlu Anda lakukan adalah memasukkan path ke direktori JDK Anda ke setting path pada sistem operasi Anda. Misalkan direktori JDK Anda adalah C:jdk1.4 maka pada Windows 98 Anda cukup menambahkan baris perintah SET PATH=C:jdk1.4bin pada file autoexec.bat Anda. Untuk Windows NT/2000/XP Anda cukup menambahkan direktori C:jdk1.4bin pada variabel path di System Environment. Caranya: klik kanan ikonMy Computer, pilih Properties. Kemudian pilih tab Advanced. Lalu klik tombol Environment Variables, cari variabel path,
  • kemudian tambahkan path direktori JDK Anda ke dalam variabel tersebut. Untuk Linux, tambahkan baris perintah SET CLASSPATH=(direktori jdk Anda) ke file profile Anda. Untuk mencoba JDK, ketikkan perintah java dan javac pada shell prompt (atau DOS Command Prompt). Jika perintah tersebut sudah dikenali maka program java atau javac akan menampilkan sintaks penggunaan. Untuk kemudahan dan berbagai fasilitas tambahan Anda dapat menggunakan Integrated Development Environment (IDE) untuk bahasa Java seperti Visual Café dari Symantec atau JBuilder dari Borland. Urutan langkah-langkah yang harus Anda lakukan untuk membuat sebuah program Java sederhana adalah: 1. Membuat source code program dengan editor teks apapun. Ingat, file tersebut harus berekstensi .java dan case sensitive. 2. Mengkompile source code dengan perintah javac. Misalnya: javac HelloWorld.java. Jika berhasil, hasilnya adalah file bytecode berakhiran .class. 3. Mengeksekusi bytecode dengan perintah java. Parameter dari perintah ini adalah nama file hasil kompilasi tanpa ekstensi .class. Contoh: java HelloWorld. 1. Source Code Berikut kode untuk HelloWorld.java: public class HelloWorld { public static void main(String[] args) { System.out.println("Apa Kabar Dunia?"); } } Dan ini sebuah contoh lain, yaitu applet sederhana untuk menampilkan teks di applet. Sebutlah file ini bernama HelloWorldApplet.java: import public java.awt.Graphics; class HelloWorldApplet extends java.applet.Applet
  • { public void paint(Graphics g) { g.drawString("Apa Kabar Dunia?", 5, 25); } } Secara gamblang dapat diperhatikan bahwa struktur kedua program sangat mirip, dan hanya berbeda dalam konteks eksekusi. Kedua program ini akan dibahas lebih lanjut setelah kita membahas cara mengkompile dan mengeksekusi program tersebut. Perlu diingat bahwa bahasa Java bersifat case sensitive, sehingga Anda harus memperhatikan penggunaan huruf besar dan kecil. Selain itu penulisan source code program tidak harus memperhatikan bentuk tertentu, sehingga Anda bisa saja menuliskan semua baris source code tersebut dalam satu baris asal Anda tidak lupa membubuhkan tanda titik koma (;), atau menuliskan tiap kata dalam satu baris tersendiri. Namun dianjurkan Anda mengikuti layout seperti pada contoh agar program Anda mudah dibaca dan dimengerti. 2. Tahap Kompilasi Setelah kedua filedisave dengan nama HelloWorld.java dan HelloWorldApplet.java, kita akan mengkompile kedua program tersebut dengan perintah: prompt>javac HelloWorld.java prompt>javac HelloWorldApplet.java Perlu diperhatikan bahwa direktori aktif Anda saat ini adalah direktori tempat Anda meletakkan file-file program tersebut. Anda tetap dapat mengkompile program Anda dari direktori berbeda dengan perintah: prompt>javac (direktori program)/namafile.java Setelah perintah ini selesai, Anda akan melihat bahwa telah tercipta dua buah file .class, yaitu bytecode hasil kompilasi source code kita.
  • 3. Sintaks Program Sekarang kita akan mencoba membahas elemen-elemen dalam kedua source code tersebut. Pada awal Listing 2 kita menemukan perintah import. Pada tahap awal ini Anda perlu mengetahui bahwa pernyataan tersebut hanya berfungsi mempermudah penulisan metode atau dalam bahasa pemrograman lain disebut prosedur atau fungsi. Jadi Anda hanya perlu menulis Graphics sebagai pengganti java.awt.Graphics, karena kita telah mengimpor java.awt.Graphics. Kemudian di masing-masing listing terdapat pernyataan public class. Pernyataan ini adalah pernyataan pembuka sebuah kelas.Kelas sendiri digunakan untuk menciptakan objek.Ingat bahwa Java berorientasi objek. Kata public di depannya berfungsi agar kelas tersebut dapat diakses oleh semua program lain. Untuk saat ini anggaplah objek sebagai suatu item yang dapat dimanipulasi oleh sebuah program. Dalam Listing 2 terdapat tambahan kata extends. Hal ini berarti kelas yang kita buat akan mewarisi sifat-sifat dari kelas yang kita extends. Dengan kata lain kita menjadikan kelas yang kita extends sebagai himpunan bagian dari kelas kita buat. Kemudian kita menemukan baris pernyataan public static void main(String[] args) dan public void paint(Graphics g). Keduanya adalah pernyataan pembuka sebuah metode.Metode sendiri adalah kumpulan pernyataan untuk melakukan suatu tugas tertentu dalam kelas. Keduanya sebenarnya mempunyai fungsi yang sama namun dalam konteks yang berbeda. Dalam setiap aplikasi harus ada sebuah metode yang bernama main yang akan dieksekusi pertama kali saat program tersebut dieksekusi. Sementara dalam applet, metode yang pertama kali akan dieksekusi ketika applet diload adalah paint. Kata public di depannya mempunyai fungsi yang sama dengan kata public yang ada di depan baris permulaan kelas. Namun nantinya Anda akan menemukan juga bentuk lain seperti private dan protect yang akan kita bahas nanti. Pada Listing 1 terdapat kata static pada pernyataan pembuka metode main.Hal ini berarti metode main tidak mengubah atau menggunakan objek yang diciptakan oleh kelas tersebut,
  • sehingga dapat dikatakan berdiri sendiri dan tidak terikat dengan objek. Dalam metode main dalam aplikasi, parameternya adalah selalu String[] args, di mana args hanyalah sebuah nama dari objek array dari String. Array ini nantinya akan berisi parameter-parameter yang diberikan user sebagai argumen command line. Sementara Anda tidak perlu mengerti mengenai parameter tersebut, cukup diingat bahwa bentuk metode main harus selalu demikian. Kemudian di dalam kedua metode pada kedua listing tersebut, kita menemukan sebuah pernyataan.Anda tentu dapat saja meletakkan lebih dari satu pernyataan dalam sebuah metode. Setiap pernyataan dalam sebuah metode dipisahkan oleh titik koma dan akan dieksekusi satu persatu. Kedua pernyataan pada listing ternyata memanggil sebuah metode lain yaitu metode println dan paint. Tentunya dapat Anda perhatikan bahwa untuk memanggil sebuah metode diperlukan tiga komponen yaitu: 1. Objek yang ingin kita pakai. Dalam hal ini objek System.out dan Graphics g. 2. Nama metode yang ingin kita pakai. Dalam hal ini println dan paint. 3. Sepasang tanda kurung yang berisi informasi tambahan yang diperlukan oleh metode yang dipanggil, yaitu parameter. Dalam Listing 1, pernyataan System.out.println("Apa Kabar Dunia?"); berarti carilah objek out dalam kelas System kemudian panggil metode println dari objek out dengan parameter berupa string "Apa Kabar Dunia?". Sedang dalam Listing 2, pernyataan g.drawString("Apa Kabar Dunia?", 5, 25); berarti carilah objek g kemudian panggil metode drawString pada objek g dengan parameter "Apa Kabar Dunia?‖, 5, 25);. 4. Eksekusi Setelah selesai membahas sintaks dasar Java dalam kedua listing, selanjutnya kita akan mencoba mengeksekusi kedua program ini. Untuk program pertama yang berupa aplikasi biasa, kita tinggal mengetikkan perintah java HelloWorld pada prompt dan pesan Apa Kabar Dunia? akan tampil di layar (atau mungkin di tempat lain, bergantung sistem operasi Anda).
  • Sedangkan untuk applet kita mesti membuat sebuah file HTML sebagai pembungkus— atau pemanggilnya. Berikut diberikan contoh file HTML untuk membungkus applet yang kita buat. <HTML> <HEAD> <TITLE>Coba Applet</TITLE> </HEAD> <BODY> <APPLET CODE="HelloWorldApplet.class" WIDTH=150 HEIGHT=25> </APPLET> </BODY> </HTML> Beri nama helloword.html dan simpanlah di direktori yang sama dengan lokasi filefile .java dan .class sebelumnya. Untuk mengeksekusi applet kita cukup membuka file HTML tersebut di browser yang Java-enabled atau mengetikkan perintahappletviewer namafile.html di prompt. 2.9 Perintah pengoperasian dalam Java OPERATOR JAVA macam-macam Opertor dalam Java • Operator Aritmatika + = Operator penjumlahan (juga sebagai penyambung string) - = Operator pengurangan * = Operator perkalian / = Operator pembagian % = Operator sisa pembagian
  • Operator aritmatika digunakan untuk melakukan operasi matematika, seperti penambahan, pengurangan, pembagian, dan modulo (atau sisa pembagian). Contoh penggunaan : Simbol Nama operator Contoh penggunaan + Operator penjumlahan n = n + 1; - Operator pengurangan n = n - 1; * Operator perkalian / Operator pembagian n = n / 1; % Operator sisa pembagian + Operator penyambung String n = "saya "+"tidur"; n = n * 1; n = n % 1; Contoh kode program package operatoraritmatika; public class OperatorAritmatika { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub
  • int x = 2; int y = 5; int z = 3; int g = 0; g = x + y; System.out.println("Penjumlahan (x+y) : " + g); g = y - x; System.out.println("Pengurangan (y-x) : " + g); g = x * y; System.out.println("Perkalian (x*y) : " + g); g = y / x; System.out.println("Pembagian (y/x) : " + g); g = z % y; System.out.println("Sisa pembagian (z%x) : " + g);
  • g = x + (y * (z/x)); System.out.println("Hasilnya sekarang : " + g); } } • Operator Tunggal + = Operator plus; menyatakan nilai positif (setiap angka tanpa tanda ini akan dianggap sebagai positif) - = Operator minus; menyatakan nilai negatif, dapat pula digunakan untuk menegatifkan suatu bilangan ++ = Operator kenaikan; menambah suatu bilangan dengan 1 -- = Operator penurunan; mengurangkan suatu bilangan dengan 1 ! = Operator lawan; membalik nilai suatu boolean Operator tunggal hanya membutuhkan satu operan untuk melakukan operasinya.Operator ini tidak dapat digunakan untuk variabel final, karena variabel final berupa konstanta yang tidak dapat diubah-ubah.Beberapa jenis operator tunggal diberikan pada tabel di bawah ini. Simbol Nama operator Operasi + Operator plus menyatakan nilai positif
  • - Operator minus menyatakan nilai negatif, dapat pula digunakan untuk menegatifkan suatu bilangan ++ Operator kenaikan menambah suatu bilangan dengan 1 -- Operator penurunan mengurangkan suatu bilangan dengan 1 ! Operator lawan membalik nilai suatu boolean Operator kenaikan dan penurunan dapat diletakkan di belakang atau di depan suatu variabel. Jika diletakkan di depan (++x atau --x), penambahan/pengurangan dilakukan sebelumnya, sedangkan apabila diletakkan di akhir (x++ atau x--) penambahan/pengurangan dilakukan setelahnya. Walau bagaimanapun pada akhirnya keduanya akan menghasilkan x = x+1 atau x = x-1. • Operator Pembanding, Boolean dan Kondisi Operator kondisi (conditional operator) menghasilkan nilai true atau false tergantung dari variabelnya, dalam hal ini operasinya dilakukan pada dua operand. Operator boolean adalah operator kondisi yang kedua operandnya berupa nilai boolean (true atau false), sedangkan Operator Pembanding membandingkan 2 nilai seperti pada operasi matematika. Catatan : Pada objek, seperti String, operasi pembanding akan membandingkan alamat memory tempat objek itu disimpan, bukan membandingkan isinya. Untuk membandingkan isi String, gunakan equals(), equalsIgnoreCase(), dan compareTo() seperti dibahas pada bagian sebelumnya. Simbol Nama operator Contoh == Sama dengan b = (1 == 2);
  • != Tidak sama dengan b = (1 == 2); > Lebih besar >= Lebih besar atau sama dengan < Lebih kecil <= Lebih kecil atau sama dengan b = (1 <= 2); && Conditional AND b = true && false; || Conditional OR b = true || false; ! NOT b = !true; ?: Bentuk pendek dari if-then-else b = (1 > 2); b = (1 >= 2); b = (1 < 2); Operator boolean AND Operator kondisi AND menghasilkan "true" apabila kedua operandnya bernilai "true". Jika salah satunya atau keduanya "false", operator ini menghasilkan "false". Berikut ini tabel kebenaran operasi AND. Op1 atau Exp1Op2 atau Exp2Hasil true true true true false false false true false false false false
  • Operator &&akan mengevaluasi Op2 (di sebelah kanan) HANYA jika operand 1 bernilai "true". Seperti terlihat dari tabel di atas, apabila Op1 (di sebelah kiri) bernilai "false", hasilnya akan selalu "false" tidak tergantung pada isi dari Op2. Operator kondisi OR Operator kondisi OR menghasilkan "true" jika salah satu operandnya bernilai "true". Jika keduanya "false", operator ini menghasilkan "false". Berikut ini table kebenaran oeprasi OR. Op1 atau Exp1Op2 atau Exp2Hasil true true true true false true false true true false false false Operator || akan mengevaluasi Op2 (di sebelah kanan) HANYA jika operand 1 bernilai "false". Seperti terlihat dari tabel di atas, apabila Op1 (di sebelah kiri) bernilai "true", hasilnya akan selalu "true" tidak tergantung pada isi dari Op2. Operator NOT Operator NOT ("!") melakukan operasi boolean NOT pada operand atau ekspresi tunggal. Operator ini mengecek nilai boolean dari suatu operand atau expresi kemudian membalik nilainya (dari true ke false atau false ke true).
  • BAB III PENUTUP 3.1 Simpulan Dalam sistem pemrograman khuusnya pada Java bahasa pemrograman Java menggunakan Sintaks mirip dengan C++ namun sintaks pada Java telah banyak diperbaiki terutama menghilangkan penggunaan pointer yang rumit dan multiple inheritance.Java juga menggunakan automatic memory allocation dan memory garbage collection. Java adalah sebuah platform teknologi pemrograman yang dikembangkan oleh Sun Microsystem.J2ME atau Java Micro Edition adalah sebuah teknologi yang telah banyak digunakan dalam pengembangan aplikasi pada ponsel dewasa ini, mulai dari aplikasi yang berupa permainan sampai dengan aplikasi ponsel sebagai pendukung aplikasi yang lebih besar seperti aplikasi enterprise.Nama J2ME digunakan sebagai ―payung‖ untuk aneka teknologi java untuk device micro diantaranya adalah Personal Java, Java Card, MIDP. 3.2 Saran Penggunaan Java sebagai bahasa pemrograman memiliki keuntungan tersendiri, dikarenakan Java mempunyai keunggulan JavaScript adalah ―bahasa web-browser‖. Tanpa JavaScript, konten yang ditampilkan dalam browser akan tetap statis, tidak dinamis dan interaktif. Bahasa yang dulu tidak populer ini, dalam beberapa tahun terakhir menjadi salah satu bahasa penting yang wajib dikuasai oleh web developer. Bahkan saat ini JavaScript juga makin populer sebagai bahasa pemrograman server menggunakan program yang disebut NodeJS yang berbasis V8 JavaScript Engine buatan Google Chrome. Jadi mempelajari Java adalah hal yang penting bagi seorang programmer, namun alangkah baiknya bila kita harus memahami perintah-perintah operasi, sintak-sintak dari sistem pemrograman Java.
  • DAFTAR PUSTAKA http://informaticunsil.blogspot.com/2012/01/fitur-fitur-dari-java.html, Diakases pada 5 Oktober 2013http://www.master.web.id/mwmag/issue/04/content/tutorial-java-1/tutorial-java-1.html, Diakases pada 5 Oktober 2013 http://endahdumboo.blogspot.com/2012/08/edisi-bagian-bagian-java.html, Diakases pada 5 Oktober 2013 http://id.wikipedia.org/wiki/Java.html, Diakases pada 5 Oktober 2013 "Java SE 6 Update 23". Oracle Corporation. 2010-12-08. Diakses pada 5 Oktober 2013. "Java SE 6 Update 24". Oracle Corporation. 2011-02-15. Diakses pada 5 Oktober 2013.. "Java SE 6 Update 25". Oracle Corporation. 2011-04-11. Diakses pada 5 Oktober 2013. "Java SE 6 Update 26". Oracle Corporation. 2011-06-07. Diakses pada 5 Oktober 2013. Oracle Java SE Critical Patch Update Advisory – June 2011 Diakses pada 5 Oktober 2013. "Java SE 6 Update 27". Oracle Corporation. 2011-08-16. Diakses pada 5 Oktober 2013. "Java SE 6 Update 29". Oracle Corporation. 2011-10-18. Diakses pada 5 Oktober 2013. Oracle Java SE Critical Patch Update Advisory – October 2011 Diakses pada 5 Oktober 2013. http://octacuby.blogspot.com/2012/05/makalah-java.html, Diakses pada 11 Okktober 2013 https://dl.dropboxusercontent.com/s/yfpy42k8umihi5n/MengenalJavaScript.pdf, Diakses pada 11 Oktober 2013