Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

Pemrograman Berorientasi Objek “Pengenalan Bahasa JAVA”

Presentasi serupa


Presentasi berjudul: "Pemrograman Berorientasi Objek “Pengenalan Bahasa JAVA”"— Transcript presentasi:

1 Pemrograman Berorientasi Objek “Pengenalan Bahasa JAVA”
Pendidikan Teknik Informatika Dan Komputer UNIVERSITAS NEGERI SEMARANG

2 Tujuan Membahas secara singkat tentang sejarah JAVA dan definisi teknologi JAVA serta fase-fase dalam program JAVA.

3 Latar Belakang JAVA Pada 1991, sekelompok insinyur Sun dipimpin oleh Patrick Naughton dan James Gosling ingin merancang bahasa komputer untuk perangkat konsumer seperti cable TV Box. Perangkat tersebut tidak memiliki banyak memori, bahasa harus berukuran kecil dan mengandung kode yang liat. Kebutuhan untuk fleksibilitas, kecil, liat dan kode yang netral terhadap platform mengantar tim mempelajari implementasi Pascal yang pernah dicoba. Orang – orang di proyek Green berbasis C++ dan bukan Pascal maka kebanyakan sintaks diambil dari C++, serta mengadopsi orientasi objek dan bukan prosedural Mulanya bahasa yang diciptakan diberi nama ”Oak” oleh James Gosling yang mendapat inspirasi dari sebuah pohon yang berada pada seberang kantornya, namun dikarenakan nama Oak sendiri merupakan nama bahasa pemrograman yang telah ada sebelumnya, kemudian SUN menggantinya dengan JAVA.

4 Latar Belakang JAVA Nama JAVA sendiri terinspirasi pada saat mereka sedang menikmati secangkir kopi di sebuah kedai kopi yang kemudian dengan tidak sengaja salah satu dari mereka menyebutkan kata JAVA yang mengandung arti asal bijih kopi. Produk pertama proyek Green adalah Star 7 (*7), sebuah kendali jarak jauh yang sangat cerdas. Dikarenakan pasar masih belum tertarik dengan produk konsumer cerdas maka proyek Green harus menemukan pasar lain dari teknologi yang diciptakan. Pada saat yang sama, implementasi WWW dan Internet sedang mengalami perkembangan pesat. Di lain pihak, anggota dari proyek Green juga menyadari bahwa Java dapat digunakan pada pemrograman internet, sehingga penerapan selanjutnya mengarah menjadi teknologi yang berperan di web.

5 Java Pada Teknologi Web

6 Java Mengadopsi Kelebihan Bahasa Lain
Java telah mengakomodasi hampir seluruh fitur penting bahasa – bahasa pemrograman yang ada semenjak perkembangan komputasi modern manusia : 1. Dari SIMULA, bahasa pada tahun 65-an, bahasa yang paling mempengaruhi Java sekaligus C++. Dari bahasa ini diadopsi bentukan – bentukan dasar dari pemrograman berorientasi objek. 2. Dari LISP – bahasa tahun 55-an. Diadopsi fasilitas garbage collection, serta kemampuan untuk meniru generic list processing, meski fasilitas ini jarang yang memanfaatkannya.

7 Java Mengadopsi Kelebihan Bahasa Lain
3. Dari Algol – bahasa pada tahun 60-an, diambil struktur kendali yang dimilikinya. 4. Dari C++, diadopsi sintaks, sebagian semantiks dan exception handling 5. Dari bahasa Ada, diambil strongly type, dan exception handling. 6. Dari Objective C, diambil fasilitas interface. 7. Dari bahasa SmallTalk, diambil pendekatan single-root class hiérarchie, dimana objek adalah satu kesatuan hirarki pewarisan 8. Dari bahasa Eiffel, fasilitas assertion yang mulai diterapkan di sebagian JDK 1.4

8 Apa itu Teknologi JAVA? Sebuah Bahasa Pemrograman
Sebagai sebuah bahasa pemrograman, Java dapat membuat seluruh bentuk aplikasi, desktop, web dan lainnya, Sebuah Development Environment Sebagai sebuah peralatan pembangun, teknologi Java menyediakan banyak tools : compiler, interpreter, penyusun dokumentasi, paket kelas dan sebagainya. Sebuah Aplikasi Aplikasi dengan teknologi Java secara umum adalah aplikasi serbt a guna yang dapat dijalankan pada seluruh mesin yang memiliki Java Runtime Environment (JRE). Sebuah Deployment Environment JRE, yang terdapat pada paket J2SDK, mengandung kelas – kelas untuk semua paket teknologi Java yang meliputi kelas dasar dari Java, komponen GUI dan sebagainya. Komponen yang lain terdapat pada Web Browser.

9 Karakteristik JAVA Sederhana Berorientasi Objek Terdistribusi
Sintaknya mirip C++ Menghilangkan pointer yang rumit Menghilangkan multiple inheritance Menggunakan automatic memory allocation dan memory garbage collection Berorientasi Objek Murni berorientasi objek (program yang reusable) Terdistribusi Aplikasi terdistribusi secara mudah dengan adanya libraries networking yang terintegrasi

10 Karakteristik JAVA Interpreted Robust
Program Java dijalankan menggunakan interpreter yaitu Java Virtual Machine (JVM) sehingga hasil terjemahan source code JAVA yang berupa bytecodes dapat dijalankan pada platform yang berbeda-beda Robust Compiler pada Java mempunyai kemampuan mendeteksi error secara lebih teliti dibandingkan bahasa pemrograman lain serta mempunyai runtime-Exception handling untuk membantu mengatasi error pada pemrograman

11 Karakteristik JAVA Secure Architecture Neutral Portable
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. Architecture Neutral Program cukup mempunyai satu buah versi yang dapat dijalankan pada platform berbeda dengan Java Virtual Machine. Portable Source code maupun program Java dapat dengan mudah dibawa ke platform yang berbeda-beda tanpa harus dikompilasi ulang

12 Karakteristik JAVA Performance Multithreaded Dynamic
Performance Java dapat ditingkatkan menggunakan kompilasi Java lain seperti buatan Inprise, Microsoft ataupun Symantec yang menggunakan Just In Time Compilers (JIT). Multithreaded Fasilitas pemrograman paralel (dapat melakukan beberapa pekerjaan sekaligus) Dynamic Perubahan pada suatu class dengan menambahkan properties ataupun method dapat dilakukan tanpa menggangu program yang menggunakan class tersebut

13 Fase – Fase Pemrograman JAVA

14 Contoh Source Code JAVA
public class Hello { /** * My first java program */ public static void main(String[] args) { //Menampilkan kata "Hello world" dilayar System.out.println("Hello world!"); }

15 Penjelasan Source Code
Public : program bersifat umum Static : karakteristik tetap pada kelas ini Void : fungsi kelas ini tidak mengembalikan suatu nilai Main : fungsi utama String[] args : fungsi kelas ini dapat menerima argumen ketika dijalankan dan argumen ini adalah string yang berbentuk larik atau bisa lebih dari satu argumen

16 Contoh Source Code JAVA (Applet)
import java.awt.*; import java.applet.*; public class AppletHallo extends java.applet.Applet { /** Initialization method that will be called after the applet is loaded * into the browser. */ Font f = new Font("Tahoma",Font.BOLD,18); public void init() { // TODO start asynchronous download of heavy resources } public void paint(Graphics g) { g.setFont(f); g.setColor(Color.blue); g.drawString("Hallo Semua Penghuni Dunia",5,25);

17 Implementasi Applet <html> <head> </head>
<body bgcolor="000000"> <center> <applet code = "AppletHallo.class" width = "500" height = "300" > </applet> </center> </body> </html>

18 Komentar Pada Program Menambahkan komentar 1 baris digunakan tanda “ // ” Cth : //Menampilkan kata "Hello world" dilayar Menambahkan komentar lebih dari 1 baris digunakan tanda “ /* bla bla bla */ “ /* Ini Komentar beberapa kalimat ini komentar kedua */

19 Keyword, Variabel, dan Tipe Data (1)
Keyword adalah pengidentifikasi yang telah dipesan untuk didefinisikan sebelumnya oleh java untuk tujuan tertentu. Anda tidak dapat menggunakan keyword sebagai nama variabel anda, class, method dsb. Berikut ini adalah daftar dai kata kunci dalam java (Java Keywords).

20 Keyword, Variabel, dan Tipe Data (2)

21 Keyword, Variabel, dan Tipe Data (3)
Variabel pada Java terdiri dari : Variabel Class yang dikenal sebagai property yang merupakan state dari objek Cthnya : Public Class hello () { // Kode } Variabel Kode Cthnya : int a;

22 Keyword, Variabel, dan Tipe Data (4)
Aturan pokok dalam deklarasi variabel Setiap variabel harus diawali dengan abjad/huruf Karakter kedua boleh huruf, angka atau simbol Tidak memakai tanda baca (? ! + - * & dsb) Tidak boleh ada spasi di dalamnya. Kata bisa dipisah dengan menggunakan underscore “_” Bukan kata kunci Sebaiknya nama variabel cukup deskriptif, menyatakan arti dan tujuannya

23 Keyword, Variabel, dan Tipe Data (5)
Deklarasi variable : <tipe> <nama variable>; Tipe Data Tipe data pada Java dapat dibedakan atas 2 kategori, yaitu Tipe data primitif

24 Keyword, Variabel, dan Tipe Data (6)
Type Default Range boolean False - char \u0000 \u0000 to \uFFFF byte -128 s/d 127 short s/d 32767 int s/d long s/d float 0.0 1.4E-45 s/d E+38 double 4.9E-324 s/d E+308

25 Keyword, Variabel, dan Tipe Data (7)
Tipe data kompleks String : untuk menyatakan tipe deretan karakter, misalnya nama, alamat, dsb. Cth : String pesan = “Halo”; Array : misalnya int [ ] x = new int [5]; Karakter khusus \n : pindah ke baris baru \t : pindah tabulasi ke kanan \b : backspace \r : return \f : halaman baru Konstanta Pendefinisian konstanta melalui kata kunci final Cth : final double PI = 3.14

26 Keyword, Variabel, dan Tipe Data (8)
Perubahan tipe data Java menyediakan beberapa fungsi/metode untuk keperluan karakter, antara lain : isDigit() : memeriksa apakah karakter tersebut adalah digit angka isJavaLetter() : memeriksa apakah karakter ini adalah unicode isLowerCase() : memeriksa apakah karakter ini asalah huruf kecil toLowerCase() : mengubah karakter ke huruf kecil toUpperCase() : mengubah karakter ke huruf besar

27 Keyword, Variabel, dan Tipe Data (9)
Berikut ini perubahan tipe data yang diperbolehkan Dari Tipe Ke Tipe byte short, char, int, long, float, double short int, long, float, double char int long, float, double, char long float, double float double

28 Keyword, Variabel, dan Tipe Data (10)
Contoh perubahan tipe data Double to integer double b = 10.5 int a = (int) b; // hasilnya adalah 10 Integer to double int a = 5; double b = a/2; // hasilnya 2, bukan 2.5 double b = (double) a/2; // hasilnya 2.5

29 Keyword, Variabel, dan Tipe Data (11)
Menampilkan Data Variabel Untuk mengeluarkan nilai dari variabel yang diinginkan, kita dapat menggunakan perintah sebagai berikut : System.out.println() System.out.print() Apa yang membedakan diantara perintah System.out.println() and System.out.print()? Yang pertama menambahkan baris baru pada akhir data untuk dikeluarkan, sementara selanjutnya tidak.

30 Keyword, Variabel, dan Tipe Data (12)
Perhatikan pernyataan tersebut, System.out.print("Hello "); System.out.print("world!"); Pernyataan tersebut akan menghasilkan output berikut ini pada layar : Hello world! Sekarang perthatikan pernyataan berikut, System.out.println("Hello "); System.out.println("world!"); Pernyataan ini akan menghasilkan output sebagai berikut pada layar, Hello world!

31 Operator dan Ekspresi (1)
Operator Aritmatika + penjumlahan 3+4 - pengurangan 7-5 * perkalian a*b / pembagian c/d % sisa pembagian 8%3

32 Operator dan Ekspresi (2)
Operator Penugasan x=y=z=0; variabel x,y,z semua diberi nilai 0 x += y; x = x + y x -= y; x = x – y x *= y; x = x * y x /= y; x = x / y x %=y; x = x % y

33 Operator dan Ekspresi (3)
Operator Increment dan Decrement

34 Operator dan Ekspresi (3)
Lazimnya dalam Pascal ditulis dengan a := a + 1; Namun dalam Java lazimnya ditulis a++; // walaupun a = a + 1; juga bisa dipakai Cth : a++ int i = 10; int a = 3; int k = 0; k = a++ + i; //akan menghasilkan k = 3+10 = 13

35 Operator dan Ekspresi (4)
int i = 10; int a = 3; int k = 0; k = ++a + i; //akan menghasilkan k = 4+10 = 14 a ?? --a ??

36 Operator dan Ekspresi (5)
Operator Relasi

37 Operator dan Ekspresi (6)
Operator Logika Operator logika memiliki satu atau lebih operand boolean yang menghasilkan nilai boolean.Ada enam operator logika yaitu: && (logika AND), & (boolean logika AND), || (logika OR), | (boolean logika inclusive OR), ^ (boolean logika exclusive OR), dan ! (logika NOT).

38 Operator dan Ekspresi (7)
Simbol AND && dan & OR || dan | XOR ^ NOT !

39 Operator dan Ekspresi (8)
Perbedaan dasar antara operator && dan & adalah bahwa && mensupports short-circuit evaluations (atau evaluasi perbagian), sementara operator & tidak. && akan mengevaluasi pernyataan exp1, dan segera mengembalikan nilai false dan menyatakan bahwa exp1 bernilai false. Jika exp1 bernilai false, operator tidak akan pernah mengevaluasi exp2 karena hasil operasi operator akan menjadi false tanpa memperhatikan nilai dari exp2. Sebaliknya, operator & selalu mengevaluasi kedua nilai dari exp1 dan exp2 sebelum mengembalikan suatu nilai jawaban. Demikian pula dengan operator || dan |

40 Operator dan Ekspresi (9)

41 Operator dan Ekspresi (10)
Operator Kondisi (?:) operator kondisi ?: adalah operator ternary. Hal ini berarti bahwa operator ini digunakan dalam tiga bentuk pernyataan kondisional argumen yang digunakan bersama-sama. Struktur pernyataan yang menggunakan operator kondisi adalah, exp1?exp2:exp3 Dimana nilai exp1 adalah suatu pernyataan boolean yang memiliki hasil yang salah satunya harus berupa nilai true atau false. Jika exp1 bernilai true, exp2 merupakan hasil operasi . Jika bernilai false, kemudian exp3 merupakan hasil operasinya.

42 Operator dan Ekspresi (11)

43 Input Dari Keyboard (1) Java menyediakan dua peralatan standard untuk melakukan operasi input-output, yaitu : System.in (keyboard) sebagai peralatan input System.out (monitor) sebagai peralatan output

44 Input Dari Keyboard (2) Java mempersyaratkan operasi input-output berada di antara instruksi exception try { } catch { }, untuk memastikan reliabilitas dari program, sehingga ketika ada hambatan dari peralatan input-output maka program tidak berhenti di tengah jalan menunggu perbaikan peralatan tetapi akan melewati input-output yang bermasalah dengan sebuah kesalahan tertentu yang dinyatakan dalam eksepsi. Jadi, kode dalam try { } akan mencoba peralatan input-output, bila ada masalah maka eksepsi yang ditulis pada catch { } akan dilaksanakan/ditayangkan

45 Input Dari Keyboard (3) Cara input dari keyboard yang dibahas terdiri dari 2 (dua) yaitu Tanpa menggunakan libraries (dikhususkan pada pembacaan karakter) Menggunakan libraries Input mode console menggunakan paket java.io Input mode visual (GUI) menggunakan paket javax.swing

46 Input Dari Keyboard (4) Tanpa menggunakan libraries (pembacaan karakter) Cth pembacaan dengan satu karakter : class bacaHuruf { public static void main(String[] args) { char input = (char) -1; try { input = (char) System.in.read(); } catch (Exception e) {System.out.println(“error “ + e);)

47 Input Dari Keyboard (5) Menggunakan libraries (1) Input mode console
Mengunakan paket java.io dengan menambahkan import java.io.* sebelum public class utama. Cth class yang dipakai dalam membaca input string new DataInputStream(..) new BufferedReader(new InputStreamReader(..) dll

48 Input Dari Keyboard (6) Menggunakan libraries (2) Input mode visual
Terdapat 2 mode visual yang digunakan yaitu GUI klasik (menggunakan import.java.awt.* dan applet)  awt (abstract window toolkit) GUI modern (menggunakan import.javax.swing.*)

49 Input Dari Keyboard (7) Konversi Input
Input yang masuk melalui keyboard akan selalu dibaca tipe data karakter (char) atau kalimat (string). Untuk mengkonversinya diperlukan kode-kode tertentu yaitu:

50 Input Dari Keyboard (8) String ke int
Misalkan input dari keyboard dinyatakan dengan a, maka int angka = 0; string a = “ ”; angka = Integer.parseInt(a); ii. int angka = 0; angka = Integer.valueOf(a).intValue();

51 Input Dari Keyboard (9) String ke float
Misalkan input dari keyboard dinyatakan dengan a, maka float angka ; string a = “ ”; angka = Float.parseFloat(a); ii. float angka ; angka = Float.valueOf(a).floatValue();

52 Input Dari Keyboard (10) String ke double
Misalkan input dari keyboard dinyatakan dengan a, maka double angka ; string a = “ ”; angka = Double.parseDouble(a); ii. double angka ; angka = Double.valueOf(a).doubleValue();

53 Instruksi Seleksi atau Pernyataan Berkondisi (1)
Pada instruksi seleksi dan penyataan berkondisi akan memuat Operator Relasi Operator Logika Operator – operator tersebut akan dipadukan dengan instruksi seleksi (if/else) dan instruksi selektif multialternatif (switch)

54 Instruksi Seleksi atau Pernyataan Berkondisi (2)
Pernyataan if/else Pernyataan if merupakan pernyataan berkondisi yang digunakan untuk memilih alternatif berdasarkan suatu persyaratan. Apabila persyaratan dipenuhi maka suatu alternatif dikerjakan dan bila tidak dipenuhi maka alternatif lain yang dikerjakan.

55 Instruksi Seleksi atau Pernyataan Berkondisi (3)
Secara garis besar digambarkan sebagai berikut : if (kondisi/persyaratan) { //Blok pernyataan yang dijalankan kalau kondisi benar } else //Blok pernyataan yang dijalankan kalau kondisi salah

56 Instruksi Seleksi atau Pernyataan Berkondisi (4)
Apabila kondisi/persyaratan lebih dari 2 dapat digunakan if bersarang (nested if). Secara garis besar dapat digambarkan sebagai berikut : if (kondisi/persyaratan) { //Blok pernyataan yang dijalankan kalau kondisi benar } Else //Blok pernyataan yang dijalankan kalau kondisi pertama salah { … }

57 Instruksi Seleksi atau Pernyataan Berkondisi (5)
Kesalahan umum ketika menggunakan statement if-else: Kondisi pada statement if bukan merupakan nilai boolean. Cth : int number = 0; if (number) {…} Menggunakan = daripada == untuk operator perbandingan. if (number = 0) {…} //salah if (number == 0 ) {…} //benar Menulis elseif daripada else if.

58 Instruksi Seleksi atau Pernyataan Berkondisi (6)
Pernyataan Switch Fungsi switch hampir sama dengan if bersarang (nested if) digunakan untuk memilih berdasarkan banyak pilihan/alternatif di mana dari masing-masing pilihan akan menghasilkan pernyataan atau aksi yang berlainan sesuai pilihan yang dilakukan. Fungsi switch lebih tepat digunakan untuk kondisi/persyaratan tunggal tanpa operator logika, operator relasi ‘==‘ dan lebih dari satu kondisi/persyaratan sejenis

59 Instruksi Seleksi atau Pernyataan Berkondisi (7)
Secara garis besar dapat digambarkan sebagai berikut : switch (ekspresi) { case nilaiSatu : Pernyataan – 1; Break; case nilaiDua : Pernyataan – 2; Break; case nilaiTiga : Pernyataan – 3; Break; case nilaiEmpat : Pernyataan – 4; Break; default : pernyataan lain; Break; Untuk menghindari program mengeksekusi statement pada case berikutnya, kita menggunakan statement break sebagai statement akhir.

60 String (1) Menggabungkan String Mencek Awal dan Akhir String Cth :
String kata1 = “Teknik ”; String kata2 = “Informatika”; String katagabung = kata1+kata2; Mencek Awal dan Akhir String String kalimat = "Awal dari String"; boolean cek1,cek2; cek1 = kalimat.startsWith("awal"); cek1 = kalimat.endsWith(“String");

61 String (2) Membandingkan String Membandingkan String (2)
Cth : String kata1 = “STMIK JURUSAN TI”; String kata2 = “stmik jurusan ti”.toUpperCase(); String cek = kata1.equals(kata2)?”sama”:”tidaksama”; Membandingkan String (2) Pola : <variabel 1>.compareTo(<variabel 2>) compareTo akan menghasilkan negatif ( < 0 ) bila variabel 1 lebih kecil dari variabel 2 compareTo akan menghasilkan positif ( > 0 ) bila variabel 1 lebih besar dari variabel 2 compareTo akan menghasilkan netral/sama ( = 0) bila variabel 1 sama dengan variabel 2

62 String (3) Mendapatkan Panjang String
Cth : String panjang = “Ini panjangnya 17”; System.out,println(panjang.length()); Mendapatkan Substring dari String String kalimat = “Teknik Informatika WD” String sub1 = kalimat.subString(4); String sub2 = kalimat.subString(4,10); Pola : subString(int posisiawal) subString(int posisiawal, int posisiakhir)

63 String (4) Memodifikasi String Cth 1:
String kalimat = “Ini-String-awal”; String kalimatbaru = kalimat.replace(‘-’,’ ‘); Cth 2: String kalimat = “ String lain “; String kalimatbaru = kalimat.trim();

64 Pengertian Array Array adalah nama sekumpulan variabel yang memiliki tipe data yang sama. Array menggunakan indeks integer untuk menentukan urutan elemen-elemennya. Elemen pertama array memiliki indeks 0, elemen kedua memiliki indeks 1, elemen ketiga memiliki indeks 2, dan seterusnya.

65 Deklarasi Array (1) <tipe data><dimensi array><identifier/variabel> Array 1 dimensi <tipe data>[] <identifier/variabel> Cth : Int[] bilangan atau Int bilangan[] String[] nama char[] karakter Array 2 dimensi <tipe data>[][] <identifier/variabel> Int[][] bilangan atau Int bilangan[][] String[][] nama char[][] karakter

66 Deklarasi Array (2) Array Multidimensi <tipe data>[][][] <identifier/variabel> Cth : Int[][][] bilangan atau Int bilangan[][][] char[][][] kata

67 Mendefinisikan Array Mendefinisikan array dapat dilakukan dengan berbagai cara : Int[] a = new Int[100]; Angka 100 menunjukkan variabel a dapat menyimpan 100 nilai integer yang dapat diakses melalui indeks 0 sampai indeks ke 99. Namun jika didefinisikan demikian, variabel a belum memiliki nilai. Int[] a = {0,2,5,6,7,8,3,6,9,2}

68 Pengaksesan Sebuah Elemen Array
Misalnya : Int[] b = {0,2,5,6,7,8,3,6,9,2} b[0] = 0 b[1] = 2 b[2] = 5 b[3] = 6 b[4] = 7 b[5] = 8 b[6] = 3 b[7] = 6 b[8] = 9 b[9] = 2

69 Panjang Array Untuk mengetahui banyaknya elemen dari array dapat dilakukan dengan cara. Misal : public class contoharray { public static void main( String[] args ){ int[] umur = new int[100]; for( int i=0; i<umur.length; i++ ) System.out.print( umur[i] ); } //umur.length = 100

70 Membuat Array Karakter dari String
Metode yang dapat dipakai : toCharArray() Misal : String teks = “Koq gitu sih”; char[] arrayteks = teks.toCharArray(); getChars(posisi awal, posisi akhir, variabel baru, posisi indeks pertama untuk menyimpan karakter pertama dalam integer) char[] karakter = new char[4]; Teks.getChars(4,8,karakter,0);

71 Mendapatkan String dari Array Karakter
Metode yang dipakai : copyValueOf() Misal : char[] nama = {‘T’,’U’,’K’,’I’,’Y’,’E’,’M’}; String teks = String.copyValueOf(nama);

72 Sekolah Tinggi Manajemen Informatika dan Komputer
Pemrograman Berorientasi Objek “Konsep OOP (Object Oriented Programming)” Sekolah Tinggi Manajemen Informatika dan Komputer WIDYA DHARMA

73 Class dan Objek (1) Paradigma Objek
Paradigma adalah suatu cara pandang atau cara berpikir. Paradigma objek dapat diartikan cara pandang yang memandang segala sesuatu sebagai objek.

74 Class dan Objek (2) Class
Secara sederhana, komponen class dalam JAVA adalah : class NamaClass { data member/variabel/field konstruktor method/behavior/aksi/fungsi }

75 Komponen Class Data member/variabel/field
Berisikan tipe data yang disertai nama variabel. Cth : String kalimat; Konstruktor Cara khusus untuk membangun atau memanggil objek dari definisi class. Method/behavior/aksi/fungsi Komponen yang memberikan nilai atau keluaran jika menerima parameter sebagai input datanya.

76 Access Attribute Attribute Hak Akses tidak disebutkan
dari class dalam package sama Public dari class di mana saja Private tidak dapat diakses dari luar class Protected dari class dalam package sama dan sub class Contoh penggunaan access attribute : private String kata; protected int tinggi; public double angka;

77 Istilah Lain Static : dapat diakses secara langsung tanpa perlu membuat objek.

78 Data Member/Variabel/Field (1)
Dalam class terdapat 2 (dua) macam variabel yaitu : instance variabel Variabel kosong yang dapat diisi dengan nilai yang berbeda-beda. class variabel Variabel yang memiliki nilai yang dapat di-share atau digunakan oleh setiap objek di mana nilai variabel yang diakses oleh setiap objek adalah sama.

79 Data Member/Variabel/Field (2)
Pendeklarasian variabel bisa dilakukan dengan berbagai cara : String kata; static String kata = “Mobil”; private String kata; public String kata; private static String kata = “Mobil”;

80 Konstruktor (1) Aturan deklarasi konstruktor :
Konstruktor harus dinamai sama dengan nama class Konstruktor dapat didefinisikan lebih dari satu dalam satu class Konstruktor dapat didefinisikan tanpa parameter atau dengan satu maupun banyak parameter Konstruktor tidak mengembalikan nilai Konstruktor dipanggil dengan operator new

81 Konstruktor (2) Contoh pemanggilan konstruktor :
Namaclass objekbaru = new Namaclass(); Namaclass objekbaru = new Namaclass(tipedata parameter1, tipedata parameter2, …);

82 Method (1) Struktur dasar method :
<Tipedata yang dikembalikan> namamethod(tipedata parameter1,…, tipedata parameterN)

83 Method (2) Tiga komponen method adalah : Tipe data yang dikembalikan
Apabila method mengembalikan String maka mengawali definisi method dengan String dan apabila method tidak mengembalikan nilai sama sekali maka kita menggunakan keyword void. namamethod Parameter Tidak harus berparameter, namun jika berparameter harus didahului tipe data dan diakhiri variabel

84 Method (3) Contoh pendeklarasian method : void setgaji(double gajinya)
{ gaji = gajinya; } double getgaji() return gaji;

85 Enkapsulasi Enkapsulasi merupakan aspek pemrograman berorientasi objek yang berguna untuk menyembunyikan informasi class dari luar (data hiding) di mana kita tidak dapat mengubah atau mengakses data member atau variabel secara langsung. Jadi, untuk menerapkan enkapsulasi, data member/variabel perlu dideklarasikan dengan private dan deklarasi method-method untuk mendapatkan nilai dari variabel.

86 Inheritance / Pewarisan
Inheritance adalah proses pewarisan data dan method dari satu kelas kepada kelas yang lain. Pewarisan ini bersifat menyeluruh, sehingga semua data dan method yang dimiliki oleh kelas utama akan diturunkan kepada kelas baru. Kelas yang mewariskan disebut Kelas Super (Super Class)/ Kelas Induk. Kelas yang diwariskan disebut subkelas (Sub Class)/Kelas Anak.

87 Inheritance (2) Mengapa menggunakan inheritance? Bersifat reusable
Kemudahan dalam me-manage kelas yang memiliki data member dan method yang sama.

88 Inheritance (3) Overriding Data dan Method
Overriding adalah kemampuan suatu subkelas untuk memodifikasi data member dan method dari kelas induknya. Tujuan utamanya adalah melakukan tambahan atau perubahan jika kelas Super tidak memiliki method khusus yang dimiliki sub kelas

89 Inheritance (4) Keyword yang sering dipakai : extends
Fungsi : menyatakan bahwa suatu kelas merupakan perluasan dari kelas Induk. super Fungsi : memanggil konstruktor yang ada pada kelas Induk.

90 Polimorfisme Polimorfisme : kemampuan dari suatu variabel referensi objek untuk memiliki aksi/method yang berbeda bila method yang sama dipanggil, di mana aksi method tergantung dari tipe objeknya.


Download ppt "Pemrograman Berorientasi Objek “Pengenalan Bahasa JAVA”"

Presentasi serupa


Iklan oleh Google