tugas mingguan ke-3
Java
Java menurut definisi dari Sun Microsystem
adalah nama untuk sekum-pulan teknologi yang membuat perangkat lunak dan
menjalankan perangkat lunak pada komputer standalone ataupun pada lingkungan
jaringan. Java2 adalah generasi kedua dari Java platform. Java berdiri di atas
sebuah mesin intepreter yang diberi nama Java Virtual Machine (JVM).
JVM inilah yang akan membaca bytecode dalam file .class
dari suatu program sebagai representasi langsung program yang berisi bahasa
mesin. Oleh karena itu bahasa Java disebut sebagai bahasa pemrograman yang portable,
karena dapat dijalankan pada berbagai sistem operasi, asalkan pada sistem
operasi tersebut terdapat JVM.
Platform Java terdiri dari sekumpulan library, compiler, debugger
dan alat lain yang dipaket dalam Java Development Kit (JDK). Java 2 adalah
generasi yang sekarang sedang berkembang dari platform Java. Agar sebuah
program Java dapat dijalankan, maka file dengan ekstensi .java harus dikompilasi
menjadi file bytecode. Untuk menjalankan file byte-code tersebut
dibutuhkan JRE (Java Runtime Environment) yang
memungkinkan pemakai untuk menjalankan program Java, hanya menjalankan tidak
membuat kode baru lagi. JRE terdiri dari JVM dan library Java yang digunakan.
Platform Java memiliki tiga buah edisi
yang berbeda :
¨ J2EE (Java 2 Enterprise Edition)
¨ J2SE (Java 2 Second Edition)
¨ J2ME (Java 2 Micro Edition)
|
1.2. J2EE (JAVA 2 ENTERPRISE EDITION)
|
J2EE adalah kelompok dari beberapa API
(Application Programming Interface) dari Java dan teknologi selain Java. J2EE
dirancang untuk membuat aplikasi yang rumit. J2EE sering dianggap sebagai middle-ware
atau teknologi yang berjalan di server, namun sebenarnya J2EE tidak hanya
terbatas untuk itu. Faktanya J2EE juga mencakup teknologi yang dapat digunakan
di semua lapisan dari sebuah sistem informasi.
Implementasi J2EE menyediakan kelas dasar
dan API dari Java yang mendukung pengembangan dan rutin standard untuk aplikasi
client maupun server, termasuk aplikasi yang berjalan di web browser.
|
1.3. J2SE (JAVA 2 SECOND EDITION)
|
J2SE adalah inti/ dasar dari bahasa
pemrograman Java. JDK (Java Development Kit) adalah salah satu tool dari J2SE
untuk mengkom-pilasi dan menjalankan program Java. Tool J2SE yang salah satunya
adalah JDK 1.5 dapat diunduh pada http://java.sun.com/j2se/,
dimana JDK merupakan tool open source dari Sun.
|
1.4. J2ME (JAVA 2 MICRO EDITION)
|
J2ME adalah lingkungan pengembangan yang
dirancang untuk mele-takan perangkat lunak Java pada barang elektronik beserta
perangkat pendukungnya. Pada J2ME, jika perangkat lunak berfungsi baik pada
sebuah perangkat, maka belum tentu juga berfungsi baik pada perang-kat yang
lainnya.
J2ME membawa Java ke dunia informasi,
komunikasi, dan perangkat komputasi selain perangkat komputer desktop yang
biasanya lebih kecil dibandingkan perangkat komputer desktop. J2ME biasa
digunakan pada telepon selular, pager, personal digital assistants (PDA) dan
sejenisnya.
J2ME adalah bagian dari J2SE, karena itu
tidak semua librabry yang ada pada
J2SE dapat digunakan pada J2ME. Tetapi J2ME mempunyai beberapa library khusus
yang tidak dimiliki J2SE. Arsitektur J2ME dapat dilihat seperti pada gambar
berikut ini
|
Profile
|
|
|
Configuration
|
Kumpulan
Library
|
|
JVM
|
|
|
Sistem Operasi
|
|
Teknologi J2ME juga memiliki beberapa
keterbatasan, terutama jika diaplikasikan pada ponsel. J2ME sangat tergantung
pada perangkat (device) yang digunakan, bisa dari segi merek ponsel dan
dukungan terhadap teknologi J2ME. Misalnya, jika sebuah ponsel tidak memiliki
kamera, maka jelas J2ME pada ponsel tersebut tidak dapat mengakses kamera.
Keterbatasan lainnya adalah pada ukuran aplikasi, karena memori pada ponsel
sangat terbatas. Sebagian ponsel tidak mengijin-kan aplikasi J2ME menulis pada
file, karena alasan keamanan.
Configuration merupakan Java Library minimum dan kemampuan yang
dimiliki oleh para pengembang J2ME, maksudnya adalah sebuah moblile device dengan kemampuan Java
akan dioptimalkan agar sesuai. Configuration hanyalah mengatur hal-hal
tentang kesamaan sehingga dapat dijadikan ukuran kesesuaian antar device.
Misalnya sebuah lampu sepeda dapat digunakan oleh berjenis-jenis sepeda.
Dalam J2ME telah didefinisikan dua buah
konfigurasi yaitu :
¨ CLDC (Connected Limited Device
Configuration)
Untuk perangkat
kecil.
¨ CDC (Connected Device Configuration)
Untuk perangkat
yang lebih besar.
Profile berbeda dengan configuration, profile
membahas sesuatu yang spesifik untuk sebuah perangkat. Sebagai contoh misalnya,
sebuah sepeda dengan merek tertentu tentu mempunyai ciri spesifik dari sepeda
lainnya.
Dalam J2ME terdapat dua buah profile
yaitu MIDP (Mobile Information
Device Profile) dan Foundation Profile. Keterhubungan
antara configuration dan profile yang ada pada J2ME beserta jenis mesin virtualnya
dapat dilihat pada gambar dibawah ini.
CLDC (Connected Limited Device
Configuration) adalah
perangkat dasar dari J2ME berupa library dan API yang diimplementasikan pada
J2ME, seperti yang digunakan pada telepon selular, pager dan PDA. Perangkat
tersebut sangat terbatas pada memori, sumber daya dan kemampuan memproses.
Spesifikasi CLDC pada J2ME adalah
spesifikasi minimal dari package, kelas, dan sebagian fungsi JVM yang dikurangi
agar dapat diimplemen-tasikan dengan keterbatasan sumber daya pada alat-alat
tersebut. JVM yang digunakan disebut KVM
(Kilobyte
Virtual Machine).
CDC (Connected Device Configuration) merupakan komunitas proses pada Java yang
memiliki standardisasi. CDC terdiri dari virtual machine dan library dasar
untuk dipergunakan pada profile industri. Implementasi CDC pada J2ME adalah
source code yang menyediakan sambungan dengan macam-macam platform.
Perbandingan antara CLDC dengan CDC sebagai berikut :
|
CLDC
|
CDC
|
|
¨ Mengimplementasikan seba gian dari J2SE
¨ JVM yang digunakan adalah KVM
¨ Digunakan pada perangkat genggam
(handphone, two-way pager, dan PDA) denga memori terbatas antara 160-512KB
¨ Prosessor : 16/ 32 bit
|
¨ Mengimplementasikan selu-ruh fitur J2SE
¨ JVM yang digunakan adalah CVM
¨ Digunakan pada perangkat genggam
(internet TV, Nokia communicator, car TV) dgn memori minimal 2MB
¨ Prosessor : 32 bit
|
MIDP (Mobile Information Device Profile) adakal spesifikasi untuk sebuah profil
J2ME. MIDP memiliki lapisan di atas CLDC, API tam-bahan untuk daur hidup
aplikasi, antarmuka, jaringan, dan penyimpan-an persisten.
Pada saat ini terdapat MIDP 1.0 dan MIDP
2.0, fitur tambahan pada MIDP 2.0 adalah terdapat API untuk multimedia,
terdapat dukungan memainkan tone, tone sequence, dan file WAV walaupun tanpa
adanya Mobile Media API (MMAPI).
KVM (Kilobyte Virtual Machine) adalah paket JVM yang dirancang untuk
perangkat yang kecil. KVM mendukung sebagian dari fitur-fitur JVM, tidak
mendukung operasi floating-point dan finalisasi objek. KVM diimplementasikan
dengan menggunakan C, sehingga sangat mudah beradaptasi pada tipe platform yang
berbeda
CVM (C-Virtual Machine) adalah paket JVM yang digunakan pada CDC.
CVM mempunyai seluruh fitur-fitur dari virtual machine yang dirancang untuk
perangkat yang memerlukan fitur-fitur Java 2 Virtual Machine.
MIDlet adalah aplikasi yang ditulis untuk
MIDP. Aplikasi MIDlet adalah bagian dari kelas javax.microedition.midlet. MIDlet
yang didefinisikan pada MIDP. MIDlet berupa sebuah kelas abstrak yang merupakan
sub kelas dari bentuk dasar aplikasi sehingga antaramuka antara aplikasi J2ME
dan aplikasi manajemen pada perangkat dapat terbentuk.
JAD (Java Application Descriptor) digunakan
untuk mendeskripsikan isi aplikasi untuk keperluan pemetaan. File JAD bersisi
deskripsi file JAR (Java Archive) dan pemetaan atribut MIDlet, sedangkan file
JAR berisi kumpulan kelas dan resource.
OTA (Over The Air) mengacu pada beberapa teknologi jaringan
tanpa kabel. Dengan menggunakan OTA, provider MIDlet dapat menginstal MIDlet
pada web server dan menyediakan link untuk mengunduh via WAP atau internet
microbrowser.
J2ME WTK (J2ME Wireless Tool Kit) adalah alat yang menyediakan lingkungan
emulator, dokumentasi, beserta contoh-contoh aplikasi Java untuk perangkat
kecil (small device). J2ME WTK berbasiskan pada CLDC dan MIDP. J2ME WTK adalah
program yang meniru kerja ponsel yang mendukung MIDP atau yang biasa disebut
emulator. Oleh karena itu, belum tentu MIDlet yang berjalan di emulator juga
berjalan pada ponsel yang sebenarnya, karena juga tergantung pada kemampuan dan
kapasitas ponsel yang digunakan.
Exception Handling
Pengertian Exception
Suatu
program apabila mengalami kesalahan akan menghasilkan suatu runtime errors seperti
gagal membuka file, suatu program melakukan akses diatas range array
dan lain-lain. ketika runtime errors tersebut terjadi, aplikasi akan
membuat suatu exception. Java exception merupakan
instance dari class Throwable. Throwable class terdapat
dalam java.lang package
Jenis-jenis Exception
§ Exception class merupakan
kesalahan yang disebabkan oleh program dan kesalahan external. Kesalahan
jenis ini dapat ditangkap dan diatasi oleh program. Exception terdiri
dari banyak subclass
§ Error class merupakan class
yang berhubungan dengan kesalahan pada internal system. Jika terjadi
kesalahan jenis ini maka hanya dapat dilakukan bagaimana memberitahu
kepada pemakai dan melakukan pengakhiran program.
Cara menggunakan Exception
Java exception dibagi
menjadi tiga buah operasi yaitu :
1. Claiming an exception
Claiming
an exception dimaksudkan dengan menyatakan exception apa
saja yang mungkin terjadi dalam suatu main() ataupun dalam method. Untuk system
errors dan runtime errors tidak perlu dilakukan klaim karena kedua
macam kesalahan ini dapat terjadi dimana saja.
Untuk
melakukan claiming an exception dilakukan dengan menggunakan throws
keyword. Contoh :
public void myMethod() throws IOException
{
...
}
untuk
melakukan klaim terhadap banyak exception dapat dilakukan dengan
menambahkan exception dipisahkan dengan koma ( , ).
method_declaration
throws Exception1, Exception2, ...Exception n
2. Throwing an exception
Throwing
an exception dimaksudkan dengan apabila suatu kesalahan terjadi
maka method berisi statement yang melakukan claiming an exception tersebut
membuat suatu exception object yang dilempar ke dalam sistem.
Untuk
melakukan throwing exception kita menggunakan keyword throw didalam
method yang telah melakukan claim exception.
throw ExceptionObjectInstance;
3. Catching an exception
Catching
an exception dimaksudkan apabila exception object yang
dilempar kedalam sistem akan ditangkap untuk diatasi dalam exception handler.
Metode pencarian handler ini dilakukan secara backward yaitu
pencarian dimulai dengan method yang dieksekusi sampai ke pemanggil method
tersebut.
Untuk
melakukan catching an exception dapat dilakukan digunakan suatu blok
trycatch.
try {
statements;
// statements that may throw exceptions
}
catch (Exception1 ex) {
handler
for Exception1;
}
catch (Exception2 ex) {
handler
for Exception2;
}
...
catch(ExceptionN ex) {
handler
for ExceptionN;
}
jika
tidak terjadi suatu exception pada statements maka blok catch akan
dilewati. Jika ada suatu exception yang dikenali pada blok catch maka
exception akan diatasi oleh handler statement untuk exception tersebut.
Sedangkan jika ada suatu exception yang tidak dikenali maka java keluar
dari method dan mengirim exception ke method sebelumnya yang memanggil
method tersebut. Hal ini dilakukan sampai method pemanggil awal dicapai dan
bila masih belum terdapat handler dari exception ini maka program
terhenti dan menampilkan pesan ke java console. Exception object membawa
informasi penting mengenai exception yang terjadi.
Membuat Exception Class
Selain
menggunakan exception class yang sudah ada pada java, exception class
dapat diturunkan menjadi suatu exception class yang baru. Cara
membuatnya adalah dengan menurunkan exception class dan meng-override
method toString() atau getLocalizedMessage().
Perhatikan contoh berikut :
Pada ExceptionTest.java
public class ExceptionTest {
public
static void main(String [] args) {
int
x = 2;
int
y = 3;
try
{
if((x==2)
&& (y==3))
throw
new MyException(x,y);
System.out.println(x/y);
}
catch (MyException ex) {
System.out.println(ex.toString());
}
System.out.println("this
never executed");
}
}
Pada MyException.java
class MyException extends
Exception {
int
x;
int
y;
MyException(int
x,int y) {
super("MyException");
this.x
= x;
this.y
= y;
}
public
String toString() {
return(""+x+"
divide by "+y);
}
}
Rethrowing Exception
Ketika
suatu exception terjadi dalam suatu method, maka alir program akan
keluar dari method jika suatu tidak ditangkap pada method tersebut. Jika ingin
melakukan beberapa operasi yang harus dilakukan sebelum keluar dari method maka
exception dapat ditangkap terlebih dahulu baru kemudian dilempar kembali
ke handler yang sebenarnya.
Strukturnya adalah sebagai
berikut :
try {
statements;
}
catch(TheException ex) {
perform
operations before exits;
throw
ex;
}
Klausa finally
Finally
digunakan apabila menginginkan menjalankan suatu operasi tanpa
dipengaruhi apakah terjadi exception atau tidak. Dengan finally suatu
operasi tidak akan mengalami peloncatan alur.
Struktur try-cacth-finally adalah
sebagai berikut :
try {
statements;
}
catch(TheException ex) {
handling
ex statements;
}
finally {
finalStatements;
}
Perhatikan tiga kasus berikut :
1. Jika tidak ada exception
dalam blok try-catch, maka finalStatements akanselalu dieksekusi dan
statement selanjutnya setelah blok try-catch dieksekusi.
2. Jika salah satu statement
dalam blok try-catch menyebabkan exception dan ditangkap oleh
blok catch . Statement selanjutnya dalam blok try akan
diloncati, kemudian finalStatements. Jika exception tidak di lempar
ulang dengan menggunakan keyword throw maka statement setelah
blok try-catch akan dieksekusi. Akan tetapi sebaliknya maka eksekusi
akan dikembalikan ke method pemanggilnya.
3. Jika salah satu statement
dalam blok try-catch menyebabkan exception dan tidak ada blok
catch yang memenuhi exception tersebut maka statement dalam
blok try akan diloncati dan finalStatements dijalankan dan eksekusi akan
dikembalikan ke method pemanggilnya.
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.
Garbage
Collection adalah suatu mekanisme yang dilaksanakan dengan algoritma tersendiri
untuk melacak state dari object(object masih terpakai atau tidak) dan untuk
melakukan penghapusan object. Garbage Collection terus berlangsung selama
program kita berjalan. Pada saat-saat tertentu Garbage Collection akan
melakukan pencatatan state dari suatu object. Dan apabila object tersebut sudah
tidak terpakai lagi(misalnya tidak ada variabel yang merujuk kepada object
tersebut) maka object ini kemudian akan dianggap sampah dan apabila program
memerlukan memory tambahan maka object tersebut akan dihapus dan memory-nya
dibebaskan. Yang melaksanakan semua mekanisme ini disebut sebagai Garbage
Collector(Istilah lainnya Garbage Collector adalah sebuah bagian dari CLR yang
menjalankan mekanisme Garbage Collection).
Jadi
pada C#, object yang di-null-kan tidak langsung dihapus dari memory. Itu semua
terserah dari Garbage Collector dan bagaimana Algoritma Garbage Collection itu
dilaksanakan. Kita tidak dapat mengetahui secara pasti kapan suatu object
dihapus dari memory, tetapi ada suatu
keadaan dimana ketika object dihapus dari memory dan kita ingin program kita
melaksanakan sesuatu. Untuk itu maka C# punya yang namanya Destructor.
Destructor
di C# tidak lebih dari sebuah method yang akan dipanggil oleh CLR sesaat
sebelum object dihapus dari memory. Makanya Destructor di C# namanya harus
didahului dengan tanda ~, misalnya ~SomeClass. Tujuannya supaya program kita
tidak bisa memanggil Destructor secara langsung. Jadi Destructor di C# bisa
dikatakan sangat berbeda dengan destructor di C. Oleh karena itu Destructor di
C# disebut juga Finalize Method.
Modular
Type Checking for Hierarchically Extensible Data Types and Functions
Salah satu pendekatan yang
menjanjikan untuk menambahkan object-oriented (OO) fasilitas untuk bahasa fungsional
seperti ML adalah untuk menggeneralisasi datatype yang ada dan konstruksi
fungsi menjadi hirarkis dan extensible, sehingga varian datatype mensimulasikan
kelas dan kasus fungsi mensimulasikan metode. Pendekatan ini memungkinkan
datatypes ada untuk dengan mudah diperluas dengan kedua operasi baru dan varian
baru, menyelesaikan konflik lama antara gaya fungsional dan OO. Namun, desain
sebelumnya didasarkan pada pendekatan ini telah dipaksa untuk menyerah modular
typechecking, membutuhkan seluruh Program pemeriksaan untuk memastikan
keselamatan jenis. Kami menjelaskan ML Extensible (EML), bahasa ML-seperti yang
mendukung hirarkis, datatypes extensible dan fungsi sambil menjaga murni
modular typechecking. Untuk mencapai hasil ini, sistem tipe EML yang
memberlakukan beberapa persyaratan pada datatype dan diperpanjang fungsi, namun
EML masih mampu mengekspresikan idiom fungsional dan OO tradisional. Kami telah
diformalkan versi inti EML dan terbukti suara jenis sistem yang terkait, dan
kami telah mengembangkan prototipe untuk juru bahasa.
Secure
Code/Security Code
Hari ini sistem komputer yang terhubung sangat
sering terkena kode yang berasal dari berbagai sumber yang mungkin tidak
diketahui. Kode dapat dilampirkan ke e-mail, yang terkandung dalam dokumen,
atau di-download melalui Internet. Sayangnya, banyak pengguna komputer telah
mengalami langsung dampak dari kode mobile berbahaya, termasuk virus dan worm,
yang dapat merusak atau menghancurkan data dan waktu biaya dan uang. Mekanisme
keamanan yang paling umum memberikan hak kepada pengguna berdasarkan kredensial
logon mereka (biasanya password) dan membatasi sumber daya (sering direktori
dan file) bahwa pengguna diperbolehkan untuk mengakses. Namun, pendekatan ini
gagal untuk mengatasi beberapa masalah: pengguna mendapatkan kode dari berbagai
sumber, beberapa di antaranya mungkin tidak dapat diandalkan, kode dapat
mengandung bug atau kerentanan yang memungkinkan untuk dimanfaatkan oleh kode
berbahaya, dan kode kadang-kadang melakukan hal-hal bahwa pengguna tidak tahu
itu akan dilakukan. Akibatnya, sistem komputer bisa rusak dan data pribadi
dapat bocor ketika pengguna berhati-hati dan dapat dipercaya menjalankan
perangkat lunak berbahaya atau kesalahan-penuh. Mekanisme sistem operasi
keamanan yang paling mengharuskan setiap potongan kode harus benar-benar
dipercaya dalam rangka untuk menjalankan, kecuali mungkin untuk script pada
halaman web. Oleh karena itu, masih ada kebutuhan untuk mekanisme keamanan yang
berlaku secara luas yang memungkinkan kode yang berasal dari satu sistem
komputer untuk mengeksekusi dengan perlindungan pada sistem yang lain, bahkan
ketika tidak ada hubungan kepercayaan antara sistem.
Untuk membantu melindungi sistem komputer dari kode
ponsel berbahaya, untuk memungkinkan kode dari asal tidak diketahui untuk
menjalankan dengan perlindungan, dan untuk membantu mencegah kode terpercaya
dari mengorbankan keamanan sengaja atau tidak sengaja, Framework. NET
menyediakan mekanisme keamanan yang disebut kode keamanan akses. Kode keamanan
akses memungkinkan kode bisa dipercaya untuk berbagai derajat tergantung di
mana kode berasal dan pada aspek lain dari identitas kode itu. Kode akses
keamanan juga memberlakukan berbagai tingkat kepercayaan pada kode, yang
meminimalkan jumlah kode yang harus dipercaya sepenuhnya dalam rangka untuk
menjalankan. Menggunakan kode keamanan akses dapat mengurangi kemungkinan bahwa
kode Anda dapat disalahgunakan oleh kode berbahaya atau kesalahan-penuh. Hal
ini dapat mengurangi kewajiban Anda karena Anda dapat menentukan seperangkat
operasi kode Anda harus diizinkan untuk melakukan serta operasi kode Anda tidak
boleh diizinkan untuk melakukan. Kode akses keamanan juga dapat membantu
meminimalkan kerusakan yang dapat terjadi akibat kerentanan keamanan dalam kode
Anda.Semua kode dikelola yang menargetkan runtime bahasa umum menerima manfaat
keamanan kode akses, bahkan jika kode yang tidak membuat kode akses panggilan
keamanan tunggal. Namun, semua aplikasi harus membuat permintaan kode akses,
seperti yang dijelaskan dalam Dasar-Dasar Keamanan Kode Akses.
Fase – Fase Pemrograman Java :
Gambar dibawah ini menjelaskan
aliran proses kompilasi dan eksekusi 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 adalah 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.
Adapun cara penulisan program dalam java
diantaranya adalah:
1. Harus disimpan berekstensi *.java
2. Nama file harus sama dengan nama
class public, misalnya nama filenya myHello.java, maka nama
class public juga harus myHello
Contoh:
public class
myHello {
//harus sama dengan nama file (myHello.java)
}
3. Comment sebaiknya sebaiknya
ditulis untuk menjelaskan sebuah class atau method. Comment ditulis untuk tujuan dokumentasi.
Contoh:
public static void
main(String[]args){
//untuk menampilkan
kata myfirs java
System.out.println(“Hello
this is my first java”);
}
4. Java
statement adalah suatu baris yang diakhiri dengan titik koma.
Contoh:
System.out.println(“Hello
this is my first java”);
5. Block adalah satu atau beberapa
statement yang berada diantara tanda kurung kurawal { dan diakhiri dengan
kurung kurawal }.
Contoh:
public static void
main(String[]args){
System.out.println(“Hello
this is my first java”);
System.out.println(“Java
is very good”);
}
Komentar
Posting Komentar