SlideShare uma empresa Scribd logo
1 de 28
Baixar para ler offline
Ridwan Montezari
    montezari@gmail.com
Dasar
Pemrograman Java
Sejarah Java
 Proyek penelitian Sun Microsystem bernama Green pada
 tahun 1991.
 Oleh James Gosling diberi nama Oak.
 Nama Oak diganti menjadi Java dan diperkenalkan oleh
 Sun Microsystem pada tahun 1995
                              1995.
Karakteristik Java
 Simple
    Merupakan pemodelan dari bahasa C++ dengan memperbaiki beberapa karakteristik
    dari C++ seperti penambahan fungsionalitas dan pengurangan kompleksitas
    (menghilangkan multiple inheritance).
 Multiplatform
          f
    Bahasa Java dapat diterjemahkan oleh java interpreter pada berbagai macam sistem
    operasi (linux, windows, dll) .
 Object Oriented
    Bahasa Java membagi program menjadi objek‐objek yang kemudian memodelkan
    sifat dan tingkah laku masing‐masing objek dan selanjutnya mengatur interaksi antar
    objek.
 Multithreaded
    Thread adalah proses yang dapat dikerjakan oleh suatu program dalam suatu waktu
    sehingga dapat mengerjakan beberapa proses dengan waktu yang hampir
    bersamaan.
 Distributed
    Java dib t untuk membuat aplikasi t di t ib i l bih mudah d
    J    dibuat t k       b t lik i terdistribusi lebih   d h dengan t
                                                                     tersedianya
                                                                          di
    Networking Library yang terintegrasi pada Java.
Perkembangan Java
 Saat ini Sun Microsystem membagi menjadi 4 jenis edisi :
    Java Card
       Digunakan pada peralatan elektronik yang memiliki memori sangat terbatas. Exp : Smart
       Card.
    J2ME (
         (Java 2 Micro Edition)
                        d     )
       Digunakan untuk penerapan pada peralatan mobile device. Exp : Handphone, Pocket PC,
       PDA.
    J2SE (Java 2 Standard Edition)
       Digunakan untuk aplikasi aplikasi dekstop dan applet (aplikasi java yang dapat dijalankan di
                       aplikasi‐aplikasi
       browser web).
    J2EE (Java 2 Enterprise Edition)
       Digunakan untuk aplikasi skala besar (Enterprise) , aplikasi server dan aplikasi terdistribusi.
 Setiap edisi java terdiri dari 2 komponen utama :
    Java Application Programming Interface (Java API).
       Terdiri dari kumpulan library yang digunakan untuk keperluan pemrograman.
    Java Run Time Environment (JRE).
       Linkungan yang membuat aplikasi java dapat berjalan Salah satu komponen terpenting JRE
                                                  berjalan.
       adalah Java Virtual Machine (JVM).
Fase Kompilasi dan Eksekusi
Java Virtual Machine (JVM)
 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 l
 b k t i .class atau l bih
                     t 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.
Garbage Collection
 Pengelolaan alokasi memory untuk pencegahan
 Memory leaks.
 Tidak
 Tid k perlu menghapus sendiri objek – objek yang
            l      h         di i bj k   bj k
 tidak digunakan lagi.
 Fasilitas ini mengurangi beban pengelolaan memori
 oleh pemrogram dan mengurangi atau mengeliminasi
 sumber kesalahan terbesar yang terdapat pada bahasa
                            y g        p p
 yang memungkinkan alokasi dinamis.
Code Security
 Terimplementasi pada Java melalui penggunaan Java Runtime
 Environment (JRE).
 J
 Java menggunakan model pengamanan 3 lapis untuk
         gg               p g              p
 melindungi sistem dari untrusted Java Code :
   class‐loader : menangani pemuatan kelas Java ke runtime
   interpreter. Proses ini menyediakan pengamanan dengan
   memisahkan k l –kelas yang b
        i hk kelas k l               berasal d i l l disk d
                                           l dari local di k dengan k l
                                                                    kelas
   – kelas yang diambil dari jaringan.
   bytecode verifier : membaca bytecode sebelum dijalankan dan
   menjamin bytecode memenuhi aturan – aturan dasar bahasa Java     Java.
   manajemen keamanan menangani keamanan tingkat aplikasi
   dengan mengendalikan apakah program berhak mengakses sumber
   daya seperti sistem file, port jaringan, proses eksternal dan sistem
      y    p               ,p j        g ,p
   windowing.
Java Development Kit (JDK)
 Merupakan seperangkat aplikasi dan library yang digunakan
 untuk mengembangkan program dengan bahasa java.
 Komponen utama dalam pemrograman java yang didalamnya
 terdapat :
   java => interpreter
   javac =>compiler
   javadoc => documentation generator
   jdb => debugger
   appletviewer => run and debug Java applets without a web browser.
   dll
 Instalasi pada Windows
   Set PATH dan JAVA_HOME pada Environment Variable
     set PATH=%PATH%;<your JavaBin directory>
     set JAVA_HOME=<your Java directory>
Contoh Program Java Sederhana
    class Message{
      public static void main(String[] args){
              System.out.println("Hello World!");
      }
    }
 public static void main(String[] args)
    Baris kode diatas mendeklarasikan method dengan nama main. Java akan mencari
    method ini sebagai titik awal eksekusi program.
    public => access specifier yang menentukan visibility level.
    static => method main() yang dipanggil tanpa harus terlebih dahulu membuat
    instance dari class Message
                        Message.
    void => method main() tidak mengembalikan nilai apapun setelah dieksekusi.
    Main => nama method.
    String[] args =>method main menerima variabel dengan nama args dengan tipe
    String b i
    St i sebagai parameter. T d [] b
                           t Tanda berarti args merupakan variabel array.
                                            ti             k     i b l
Identifier
 Nama yang digunakan untuk mengedintifikasikan
 elemen program, misalnya variabel, konstanta, nama
 kelas dll
       dll.
 Aturan :
   Tidak boleh diambil dari keyword atau true false null
                                         true, false, null.
   Boleh menggunakan huruf, angka, garis bawah, atau
   tanda dolar ($).
Keyword
 Kata yang mempunyai arti khusus sehingga tidak
 dapat digunakan sebagai identifier.
 Contoh :
 C     h
   class
   extends
   public
   dll
Komentar
 Baris tunggal : //
 Baris banyak : /* …… */
 Baris terdokumentasi : /** ….. */
Tipe Data
 Terdapat beberapa tipe data dasar atau primitif :
   Numerik bulat (byte,short,long,int)
   Numerik pecahan (float, double)
   Logika (boolean)
   Karakter (char)
 Contoh:
 int idx = 2;
 int hasil = idx*10;
Operator
 Dilakukan untuk melakukan pengolahan data
   increment/decrement : ++,‐‐
   penambahan : +
   pengurangan : ‐
   perkalian : *
   pembagian : /
   perbandingan : < <=,>,> ,==,!
                    <,< > >=   !=
   kondisi : &&, ||
   Assignment : =
       g
Operator Shorthand
 Bertujuan untuk menyingkatkan penulisan
               Operator            Contoh       Ekuivalen
          +
          +=              i += 5
                            +               i = i+5;
          ‐=              i ‐= 5            i = i‐5;
          *=              i *= 5            i = i*5;
          /=              i /= 5            i = i/5;
          %=
          %               i% 5
                           %=               i = i%
                                                i%5;



 Contoh
Variable dan Konstanta
 Variabel adalah suatu nama yang digunakan untuk
 menyimpan suatu nilai dari tipe data tertentu.
 Nilainya bersifat dinamis
                   dinamis.
   int bilangan;
 Konstanta : variable yang nilainya tidak dapat berubah
 (nilainya statis).
   final double PI = 3.14;
                     3 4
Increment dan Decrement
 Modus operasi penambahan / pengurangan 1 nilai.
            Operator           Nama
          ++var        Preincrement
          var++        Postincrement
          ‐‐var        Predecrement
          var‐‐        Postdecrement

 Contoh
Enumerasi
 Tipe data yang didefinisikan oleh programmer.
 Membuat daftar nilai‐nilai dalam jumlah terbatas.
 Contoh :
   enum hari {senin, selasa, rabu, kamis, jumat,sabtu,
   minggu}
Control Flow Statement
 if statement (if‐then atau if‐then‐else)
 switch statement
If Statement
Switch Statement
Looping Statement
 for statement
 while dan do‐while statement
for statement
while dan do‐while statement
Casting
 Casting diperlukan jika akan
 memaksakan/penyesuaian dari satu tipe data ke tipe
 data lainnya atau dari suatu tipe objek (class) atau ke
 tipe objek (class) lainnya
Array
 Variabel yang menyimpan sejumlah data
 Data yang tersimpan pada array mempunyai index.
 Fungsi “length” untuk mengetahui jumlah elemen pada array.
         length

Mais conteúdo relacionado

Mais procurados

Mobile Application 2 Pertemuan 3 Dasar Kotlin Object Oriented Programming
Mobile Application 2 Pertemuan 3 Dasar Kotlin Object Oriented ProgrammingMobile Application 2 Pertemuan 3 Dasar Kotlin Object Oriented Programming
Mobile Application 2 Pertemuan 3 Dasar Kotlin Object Oriented ProgrammingAkhmad Khanif Zyen
 
Jeni Intro1 Bab10 Membuat Class Sendiri
Jeni Intro1 Bab10 Membuat Class SendiriJeni Intro1 Bab10 Membuat Class Sendiri
Jeni Intro1 Bab10 Membuat Class SendiriIndividual Consultants
 
Tugas Praktikum Pemrograman Berorientasi Objek
Tugas Praktikum Pemrograman Berorientasi ObjekTugas Praktikum Pemrograman Berorientasi Objek
Tugas Praktikum Pemrograman Berorientasi ObjekPungkas Soebarkah
 
4 abstract class, interface
4 abstract class, interface4 abstract class, interface
4 abstract class, interfaceRobbie AkaChopa
 
Modul Pemrograman Berorientasi Objek
Modul Pemrograman Berorientasi ObjekModul Pemrograman Berorientasi Objek
Modul Pemrograman Berorientasi ObjekWahyu Widodo
 
Pewarisan, Polimorfisme, dan Interface
Pewarisan, Polimorfisme, dan InterfacePewarisan, Polimorfisme, dan Interface
Pewarisan, Polimorfisme, dan InterfaceIbrahim Naki
 
Laporan Modul 1 Praktikum Pemrograman Berbasis Objek
Laporan Modul 1 Praktikum Pemrograman Berbasis ObjekLaporan Modul 1 Praktikum Pemrograman Berbasis Objek
Laporan Modul 1 Praktikum Pemrograman Berbasis ObjekKuncara Laksana
 
Java (Netbeans) Polymorphism - Object Oriented Programming (OOP)
Java (Netbeans) Polymorphism - Object Oriented Programming (OOP)Java (Netbeans) Polymorphism - Object Oriented Programming (OOP)
Java (Netbeans) Polymorphism - Object Oriented Programming (OOP)Melina Krisnawati
 
Konsep (class & object)
Konsep (class & object)Konsep (class & object)
Konsep (class & object)Rizki Ramdani
 
Jeni Intro1 Bab11 Pewarisan, Polimorfisme, Dan Interface
Jeni Intro1 Bab11 Pewarisan, Polimorfisme, Dan InterfaceJeni Intro1 Bab11 Pewarisan, Polimorfisme, Dan Interface
Jeni Intro1 Bab11 Pewarisan, Polimorfisme, Dan InterfaceIndividual Consultants
 
Object Oriented Programming Concept
Object Oriented Programming Concept Object Oriented Programming Concept
Object Oriented Programming Concept EsterLumba
 
Pemograman berorientasi objek
Pemograman berorientasi objekPemograman berorientasi objek
Pemograman berorientasi objekNamira Namirah
 
Pemrograman Berorientasi Objek "Pengenalan JAVA"
Pemrograman Berorientasi Objek "Pengenalan JAVA"Pemrograman Berorientasi Objek "Pengenalan JAVA"
Pemrograman Berorientasi Objek "Pengenalan JAVA"Asnita Meydelia C K
 
Pemrograman Berorientasi Objek "Pengenalan Dasar Pemrograman JAVA"
Pemrograman Berorientasi Objek "Pengenalan Dasar Pemrograman JAVA"Pemrograman Berorientasi Objek "Pengenalan Dasar Pemrograman JAVA"
Pemrograman Berorientasi Objek "Pengenalan Dasar Pemrograman JAVA"Asnita Meydelia C K
 

Mais procurados (17)

Mobile Application 2 Pertemuan 3 Dasar Kotlin Object Oriented Programming
Mobile Application 2 Pertemuan 3 Dasar Kotlin Object Oriented ProgrammingMobile Application 2 Pertemuan 3 Dasar Kotlin Object Oriented Programming
Mobile Application 2 Pertemuan 3 Dasar Kotlin Object Oriented Programming
 
Jeni Intro1 Bab10 Membuat Class Sendiri
Jeni Intro1 Bab10 Membuat Class SendiriJeni Intro1 Bab10 Membuat Class Sendiri
Jeni Intro1 Bab10 Membuat Class Sendiri
 
Tugas Praktikum Pemrograman Berorientasi Objek
Tugas Praktikum Pemrograman Berorientasi ObjekTugas Praktikum Pemrograman Berorientasi Objek
Tugas Praktikum Pemrograman Berorientasi Objek
 
4 abstract class, interface
4 abstract class, interface4 abstract class, interface
4 abstract class, interface
 
Modul Pemrograman Berorientasi Objek
Modul Pemrograman Berorientasi ObjekModul Pemrograman Berorientasi Objek
Modul Pemrograman Berorientasi Objek
 
Pewarisan, Polimorfisme, dan Interface
Pewarisan, Polimorfisme, dan InterfacePewarisan, Polimorfisme, dan Interface
Pewarisan, Polimorfisme, dan Interface
 
11. inheritance
11. inheritance11. inheritance
11. inheritance
 
Laporan Modul 1 Praktikum Pemrograman Berbasis Objek
Laporan Modul 1 Praktikum Pemrograman Berbasis ObjekLaporan Modul 1 Praktikum Pemrograman Berbasis Objek
Laporan Modul 1 Praktikum Pemrograman Berbasis Objek
 
Modul 2 pbo
Modul 2 pboModul 2 pbo
Modul 2 pbo
 
12. polymorphisme
12. polymorphisme12. polymorphisme
12. polymorphisme
 
Java (Netbeans) Polymorphism - Object Oriented Programming (OOP)
Java (Netbeans) Polymorphism - Object Oriented Programming (OOP)Java (Netbeans) Polymorphism - Object Oriented Programming (OOP)
Java (Netbeans) Polymorphism - Object Oriented Programming (OOP)
 
Konsep (class & object)
Konsep (class & object)Konsep (class & object)
Konsep (class & object)
 
Jeni Intro1 Bab11 Pewarisan, Polimorfisme, Dan Interface
Jeni Intro1 Bab11 Pewarisan, Polimorfisme, Dan InterfaceJeni Intro1 Bab11 Pewarisan, Polimorfisme, Dan Interface
Jeni Intro1 Bab11 Pewarisan, Polimorfisme, Dan Interface
 
Object Oriented Programming Concept
Object Oriented Programming Concept Object Oriented Programming Concept
Object Oriented Programming Concept
 
Pemograman berorientasi objek
Pemograman berorientasi objekPemograman berorientasi objek
Pemograman berorientasi objek
 
Pemrograman Berorientasi Objek "Pengenalan JAVA"
Pemrograman Berorientasi Objek "Pengenalan JAVA"Pemrograman Berorientasi Objek "Pengenalan JAVA"
Pemrograman Berorientasi Objek "Pengenalan JAVA"
 
Pemrograman Berorientasi Objek "Pengenalan Dasar Pemrograman JAVA"
Pemrograman Berorientasi Objek "Pengenalan Dasar Pemrograman JAVA"Pemrograman Berorientasi Objek "Pengenalan Dasar Pemrograman JAVA"
Pemrograman Berorientasi Objek "Pengenalan Dasar Pemrograman JAVA"
 

Semelhante a Network Programming 2 - Dasar Pemrograman Java

Semelhante a Network Programming 2 - Dasar Pemrograman Java (20)

JAVA
JAVAJAVA
JAVA
 
PPT JAVA
PPT JAVAPPT JAVA
PPT JAVA
 
JAVA
JAVAJAVA
JAVA
 
1-2 Pengenalan Java.pptx
1-2 Pengenalan Java.pptx1-2 Pengenalan Java.pptx
1-2 Pengenalan Java.pptx
 
Laporan i
Laporan iLaporan i
Laporan i
 
Object oriented programming menggunakan java
Object oriented programming menggunakan javaObject oriented programming menggunakan java
Object oriented programming menggunakan java
 
Ppt java
Ppt javaPpt java
Ppt java
 
Modul praktikum java pemrograman berorientasi objek
Modul praktikum java pemrograman berorientasi objekModul praktikum java pemrograman berorientasi objek
Modul praktikum java pemrograman berorientasi objek
 
Kk 14
Kk 14Kk 14
Kk 14
 
Makalah java
Makalah javaMakalah java
Makalah java
 
Modul pbo baru
Modul pbo baruModul pbo baru
Modul pbo baru
 
Pertemuan 1
Pertemuan 1Pertemuan 1
Pertemuan 1
 
Makalah java
Makalah javaMakalah java
Makalah java
 
Makalah java
Makalah javaMakalah java
Makalah java
 
1_Pengenalan_Java.pdf
1_Pengenalan_Java.pdf1_Pengenalan_Java.pdf
1_Pengenalan_Java.pdf
 
1_Pengenalan_Java.pdf
1_Pengenalan_Java.pdf1_Pengenalan_Java.pdf
1_Pengenalan_Java.pdf
 
Makalah java
Makalah javaMakalah java
Makalah java
 
Makalah java
Makalah javaMakalah java
Makalah java
 
Makalah java
Makalah javaMakalah java
Makalah java
 
150 Rahasia Pemrograman Java
150 Rahasia Pemrograman Java150 Rahasia Pemrograman Java
150 Rahasia Pemrograman Java
 

Mais de Lia Rusdyana Dewi

Network programming 04- Exception dan Stream
Network programming 04- Exception dan StreamNetwork programming 04- Exception dan Stream
Network programming 04- Exception dan StreamLia Rusdyana Dewi
 
Network Programming 1 - Teori Dasar Network Programming
Network Programming 1 - Teori Dasar Network ProgrammingNetwork Programming 1 - Teori Dasar Network Programming
Network Programming 1 - Teori Dasar Network ProgrammingLia Rusdyana Dewi
 
Materi Kuliah Metodologi Penelitian - Metode Pengumpulan Data
Materi Kuliah Metodologi Penelitian - Metode Pengumpulan DataMateri Kuliah Metodologi Penelitian - Metode Pengumpulan Data
Materi Kuliah Metodologi Penelitian - Metode Pengumpulan DataLia Rusdyana Dewi
 
Materi Kuliah Metodologi Penelitian 3 - Langkah-langkah Penelitian
Materi Kuliah Metodologi Penelitian 3 - Langkah-langkah PenelitianMateri Kuliah Metodologi Penelitian 3 - Langkah-langkah Penelitian
Materi Kuliah Metodologi Penelitian 3 - Langkah-langkah PenelitianLia Rusdyana Dewi
 
Materi Kuliah Metodologi Penelitian 2
Materi Kuliah Metodologi Penelitian 2 Materi Kuliah Metodologi Penelitian 2
Materi Kuliah Metodologi Penelitian 2 Lia Rusdyana Dewi
 
Materi Kuliah Metodologi Penelitian 1 - Pengenalan Metode Penelitian
Materi Kuliah Metodologi Penelitian 1 - Pengenalan Metode PenelitianMateri Kuliah Metodologi Penelitian 1 - Pengenalan Metode Penelitian
Materi Kuliah Metodologi Penelitian 1 - Pengenalan Metode PenelitianLia Rusdyana Dewi
 
Data Link Control - Line configuration
Data Link Control - Line configurationData Link Control - Line configuration
Data Link Control - Line configurationLia Rusdyana Dewi
 
Perancangan Sistem Secara Umum
Perancangan Sistem Secara UmumPerancangan Sistem Secara Umum
Perancangan Sistem Secara UmumLia Rusdyana Dewi
 
Metodologi Pengembangan Sistem
Metodologi Pengembangan SistemMetodologi Pengembangan Sistem
Metodologi Pengembangan SistemLia Rusdyana Dewi
 
Pendekatan - pendekatan Pengembangan Sistem
Pendekatan - pendekatan Pengembangan SistemPendekatan - pendekatan Pengembangan Sistem
Pendekatan - pendekatan Pengembangan SistemLia Rusdyana Dewi
 

Mais de Lia Rusdyana Dewi (20)

Network programming 04- Exception dan Stream
Network programming 04- Exception dan StreamNetwork programming 04- Exception dan Stream
Network programming 04- Exception dan Stream
 
Network Programming 1 - Teori Dasar Network Programming
Network Programming 1 - Teori Dasar Network ProgrammingNetwork Programming 1 - Teori Dasar Network Programming
Network Programming 1 - Teori Dasar Network Programming
 
Materi Kuliah Metodologi Penelitian - Metode Pengumpulan Data
Materi Kuliah Metodologi Penelitian - Metode Pengumpulan DataMateri Kuliah Metodologi Penelitian - Metode Pengumpulan Data
Materi Kuliah Metodologi Penelitian - Metode Pengumpulan Data
 
Materi Kuliah Metodologi Penelitian 3 - Langkah-langkah Penelitian
Materi Kuliah Metodologi Penelitian 3 - Langkah-langkah PenelitianMateri Kuliah Metodologi Penelitian 3 - Langkah-langkah Penelitian
Materi Kuliah Metodologi Penelitian 3 - Langkah-langkah Penelitian
 
Materi Kuliah Metodologi Penelitian 2
Materi Kuliah Metodologi Penelitian 2 Materi Kuliah Metodologi Penelitian 2
Materi Kuliah Metodologi Penelitian 2
 
Materi Kuliah Metodologi Penelitian 1 - Pengenalan Metode Penelitian
Materi Kuliah Metodologi Penelitian 1 - Pengenalan Metode PenelitianMateri Kuliah Metodologi Penelitian 1 - Pengenalan Metode Penelitian
Materi Kuliah Metodologi Penelitian 1 - Pengenalan Metode Penelitian
 
Data Link Control - Line configuration
Data Link Control - Line configurationData Link Control - Line configuration
Data Link Control - Line configuration
 
Peng Wimax
Peng WimaxPeng Wimax
Peng Wimax
 
Ansis 8 - Use Case Diagram
Ansis 8 - Use Case DiagramAnsis 8 - Use Case Diagram
Ansis 8 - Use Case Diagram
 
Evaluating dalam Manajemen
Evaluating dalam ManajemenEvaluating dalam Manajemen
Evaluating dalam Manajemen
 
Dss
DssDss
Dss
 
Sistem Pendukung Keputusan
Sistem Pendukung KeputusanSistem Pendukung Keputusan
Sistem Pendukung Keputusan
 
Pengenalan Wifi
Pengenalan WifiPengenalan Wifi
Pengenalan Wifi
 
Pengenalan Sistem
Pengenalan SistemPengenalan Sistem
Pengenalan Sistem
 
Definisi Analisa Sistem
Definisi Analisa SistemDefinisi Analisa Sistem
Definisi Analisa Sistem
 
Perancangan Sistem Secara Umum
Perancangan Sistem Secara UmumPerancangan Sistem Secara Umum
Perancangan Sistem Secara Umum
 
Metodologi Pengembangan Sistem
Metodologi Pengembangan SistemMetodologi Pengembangan Sistem
Metodologi Pengembangan Sistem
 
Pendekatan - pendekatan Pengembangan Sistem
Pendekatan - pendekatan Pengembangan SistemPendekatan - pendekatan Pengembangan Sistem
Pendekatan - pendekatan Pengembangan Sistem
 
Analisa Sistem
Analisa SistemAnalisa Sistem
Analisa Sistem
 
Penjadwalan Proses
Penjadwalan ProsesPenjadwalan Proses
Penjadwalan Proses
 

Network Programming 2 - Dasar Pemrograman Java

  • 1. Ridwan Montezari montezari@gmail.com
  • 3. Sejarah Java Proyek penelitian Sun Microsystem bernama Green pada tahun 1991. Oleh James Gosling diberi nama Oak. Nama Oak diganti menjadi Java dan diperkenalkan oleh Sun Microsystem pada tahun 1995 1995.
  • 4. Karakteristik Java Simple Merupakan pemodelan dari bahasa C++ dengan memperbaiki beberapa karakteristik dari C++ seperti penambahan fungsionalitas dan pengurangan kompleksitas (menghilangkan multiple inheritance). Multiplatform f Bahasa Java dapat diterjemahkan oleh java interpreter pada berbagai macam sistem operasi (linux, windows, dll) . Object Oriented Bahasa Java membagi program menjadi objek‐objek yang kemudian memodelkan sifat dan tingkah laku masing‐masing objek dan selanjutnya mengatur interaksi antar objek. Multithreaded Thread adalah proses yang dapat dikerjakan oleh suatu program dalam suatu waktu sehingga dapat mengerjakan beberapa proses dengan waktu yang hampir bersamaan. Distributed Java dib t untuk membuat aplikasi t di t ib i l bih mudah d J dibuat t k b t lik i terdistribusi lebih d h dengan t tersedianya di Networking Library yang terintegrasi pada Java.
  • 5. Perkembangan Java Saat ini Sun Microsystem membagi menjadi 4 jenis edisi : Java Card Digunakan pada peralatan elektronik yang memiliki memori sangat terbatas. Exp : Smart Card. J2ME ( (Java 2 Micro Edition) d ) Digunakan untuk penerapan pada peralatan mobile device. Exp : Handphone, Pocket PC, PDA. J2SE (Java 2 Standard Edition) Digunakan untuk aplikasi aplikasi dekstop dan applet (aplikasi java yang dapat dijalankan di aplikasi‐aplikasi browser web). J2EE (Java 2 Enterprise Edition) Digunakan untuk aplikasi skala besar (Enterprise) , aplikasi server dan aplikasi terdistribusi. Setiap edisi java terdiri dari 2 komponen utama : Java Application Programming Interface (Java API). Terdiri dari kumpulan library yang digunakan untuk keperluan pemrograman. Java Run Time Environment (JRE). Linkungan yang membuat aplikasi java dapat berjalan Salah satu komponen terpenting JRE berjalan. adalah Java Virtual Machine (JVM).
  • 7. Java Virtual Machine (JVM) 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 l b k t i .class atau l bih t 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.
  • 8. Garbage Collection Pengelolaan alokasi memory untuk pencegahan Memory leaks. Tidak Tid k perlu menghapus sendiri objek – objek yang l h di i bj k bj k tidak digunakan lagi. Fasilitas ini mengurangi beban pengelolaan memori oleh pemrogram dan mengurangi atau mengeliminasi sumber kesalahan terbesar yang terdapat pada bahasa y g p p yang memungkinkan alokasi dinamis.
  • 9. Code Security Terimplementasi pada Java melalui penggunaan Java Runtime Environment (JRE). J Java menggunakan model pengamanan 3 lapis untuk gg p g p melindungi sistem dari untrusted Java Code : class‐loader : menangani pemuatan kelas Java ke runtime interpreter. Proses ini menyediakan pengamanan dengan memisahkan k l –kelas yang b i hk kelas k l berasal d i l l disk d l dari local di k dengan k l kelas – kelas yang diambil dari jaringan. bytecode verifier : membaca bytecode sebelum dijalankan dan menjamin bytecode memenuhi aturan – aturan dasar bahasa Java Java. manajemen keamanan menangani keamanan tingkat aplikasi dengan mengendalikan apakah program berhak mengakses sumber daya seperti sistem file, port jaringan, proses eksternal dan sistem y p ,p j g ,p windowing.
  • 10. Java Development Kit (JDK) Merupakan seperangkat aplikasi dan library yang digunakan untuk mengembangkan program dengan bahasa java. Komponen utama dalam pemrograman java yang didalamnya terdapat : java => interpreter javac =>compiler javadoc => documentation generator jdb => debugger appletviewer => run and debug Java applets without a web browser. dll Instalasi pada Windows Set PATH dan JAVA_HOME pada Environment Variable set PATH=%PATH%;<your JavaBin directory> set JAVA_HOME=<your Java directory>
  • 11. Contoh Program Java Sederhana class Message{ public static void main(String[] args){ System.out.println("Hello World!"); } } public static void main(String[] args) Baris kode diatas mendeklarasikan method dengan nama main. Java akan mencari method ini sebagai titik awal eksekusi program. public => access specifier yang menentukan visibility level. static => method main() yang dipanggil tanpa harus terlebih dahulu membuat instance dari class Message Message. void => method main() tidak mengembalikan nilai apapun setelah dieksekusi. Main => nama method. String[] args =>method main menerima variabel dengan nama args dengan tipe String b i St i sebagai parameter. T d [] b t Tanda berarti args merupakan variabel array. ti k i b l
  • 12. Identifier Nama yang digunakan untuk mengedintifikasikan elemen program, misalnya variabel, konstanta, nama kelas dll dll. Aturan : Tidak boleh diambil dari keyword atau true false null true, false, null. Boleh menggunakan huruf, angka, garis bawah, atau tanda dolar ($).
  • 13. Keyword Kata yang mempunyai arti khusus sehingga tidak dapat digunakan sebagai identifier. Contoh : C h class extends public dll
  • 14. Komentar Baris tunggal : // Baris banyak : /* …… */ Baris terdokumentasi : /** ….. */
  • 15. Tipe Data Terdapat beberapa tipe data dasar atau primitif : Numerik bulat (byte,short,long,int) Numerik pecahan (float, double) Logika (boolean) Karakter (char) Contoh: int idx = 2; int hasil = idx*10;
  • 16. Operator Dilakukan untuk melakukan pengolahan data increment/decrement : ++,‐‐ penambahan : + pengurangan : ‐ perkalian : * pembagian : / perbandingan : < <=,>,> ,==,! <,< > >= != kondisi : &&, || Assignment : = g
  • 17. Operator Shorthand Bertujuan untuk menyingkatkan penulisan Operator Contoh Ekuivalen + += i += 5 + i = i+5; ‐= i ‐= 5 i = i‐5; *= i *= 5 i = i*5; /= i /= 5 i = i/5; %= % i% 5 %= i = i% i%5; Contoh
  • 18. Variable dan Konstanta Variabel adalah suatu nama yang digunakan untuk menyimpan suatu nilai dari tipe data tertentu. Nilainya bersifat dinamis dinamis. int bilangan; Konstanta : variable yang nilainya tidak dapat berubah (nilainya statis). final double PI = 3.14; 3 4
  • 19. Increment dan Decrement Modus operasi penambahan / pengurangan 1 nilai. Operator Nama ++var Preincrement var++ Postincrement ‐‐var Predecrement var‐‐ Postdecrement Contoh
  • 20. Enumerasi Tipe data yang didefinisikan oleh programmer. Membuat daftar nilai‐nilai dalam jumlah terbatas. Contoh : enum hari {senin, selasa, rabu, kamis, jumat,sabtu, minggu}
  • 21. Control Flow Statement if statement (if‐then atau if‐then‐else) switch statement
  • 24. Looping Statement for statement while dan do‐while statement
  • 26. while dan do‐while statement
  • 27. Casting Casting diperlukan jika akan memaksakan/penyesuaian dari satu tipe data ke tipe data lainnya atau dari suatu tipe objek (class) atau ke tipe objek (class) lainnya
  • 28. Array Variabel yang menyimpan sejumlah data Data yang tersimpan pada array mempunyai index. Fungsi “length” untuk mengetahui jumlah elemen pada array. length