Senin, 11 Agustus 2014

Bahasa Pemrograman

Bahasa Pemrograman


     Perangkat lunak bahasa pemrograman (language software) merupakan program yang digunakan untuk menerjemahkan perintah-perintah yang ditulis dalam bahasa program ke dalam bahasa mesin (machine languange), sehingga dapat diterima dan dimengerti oleh komputer. Apabila languange software tidak tersedia, maka pembuat program harus menulis programnya langsung dengan bahasa mesin yang berbentuk bilangan-bilangan binary. Suatu instruksi program yang ditulis dalam bahasa mesin dapat berbentuk seperti 000100110010. Tanpa mengetahui arti tertentu dari masing-masing bagian dari bilangan binary tersebut secara persis, maka akan sangat sulit untuk mengerti dengan benar maksud dari instruksi tersebut.


Instruksi yang berbentuk bilangan binary disebut dengan object code. Sedangkan kumpulan dari instruksi-instruksi yang membentuk suatu program dalam bahasa mesin disebut dengan object program. Tiap-tiap instruksi object code terdiri dari operation code (op code) dan open and. Penulisan program dengan bahasa mesin dirasakan terlalu sulit dan memakan banyak waktu, maka dikembangkan languange software sebagai alternatif penulisan program yang lebih mudah. Penerjemah bahasa pemrograman dibedakan menjadi 3 (tiga) macam, yaitu assembler, kompiler, dan interpreter.

  1. Asembler adalah program yang digunakan untuk menerjemahkan kode sumber dalam bahasa rakitan (assembly) ke dalam bahasa mesin.
  2. Kompiler adalah program penerjemah yang mengonversi semua kode sumber selain dalam bahasa rakitan menjadi kode objek. Hasil berupa kode objek inilah yang dapat dijalankan oleh komputer. Proses untuk melakukan penerjemahan ini biasa disebut kompilasi.
  3. Intepreter adalah program yang menerjemahkan satu per satu instruksi dalam kode sumber kemudian menjalankan instruksi yang telah diterjemahkan tersebut.
Perangkat lunak bahasa pemrograman (language software) merupakan program yang digunakan untuk menerjemahkan perintah-perintah yang ditulis dalam bahasa program ke dalam bahasa mesin sehingga dapat diterima dan dimengerti oleh komputer. Pada dasarnya bahasa komputer dapat dibedakan menjadi empat macam, yaitu bahasa mesin dan bahasa assembly (kedua bahasa ini termasuk bahasa tingkat rendah/low level language), bahasa tingkat tinggi (high level language), dan bahasa generasi keempat.

1) Bahasa mesin


Bahasa mesin termasuk ke dalam bahasa tingkat rendah (low level language) karena sifat dari bahasa mesin lebih berorientasi pada mesin. Bahasa ini hanya akan dipahami oleh komputer itu sendiri. Bahasa ini berupa kode-kode yang terdiri dari sekumpulan angka yang ada di dalam komputer yang biasanya diwakili oleh kode angka 1 (satu) dan 0 (nol). Kode ini merupakan sinyal elektronik yang memberitahu komputer apa yang harus dikerjakan. Dalam penggunaannya biasanya intruksi dituliskan dalam bentuk bahasa pemrograman yang akan disampaikan ke kompiler, assembler, atau interpreter yang bertugas untuk menerjemahkan bahasa pemrograman tadi ke bahasa mesin.

Assembler merupakan sebuah program. Program ini mengambil informasi yang dituliskan oleh programmer dalam bahasa assembly dan menerjemahkannya ke sebuah program yang dapat dieksekusi komputer. output assembler harus diproses oleh linker untuk menghasilkan program akhir.

2) Bahasa assembly


Bahasa asembly adalah bahasa pemrograman yang menggunakan bahasa rakitan. Bahasa assembly kebanyakan digunakan untuk pengendalian hardware yang diwujudkan dalam kependekan kata-kata sebagai pengganti kode-kode biner, misalnya JNZ (jump non zero) yang artinya lompatlah jika tidak sama dengan nol. Kelanjutan dari bahasa assembly adalah sebuah program yang berguna untuk mengambil informasi yang dituliskan oleh seorang programmer dalam bahasa assembly serta menerjemahkannya ke dalam sebuah program yang dapat dieksekusi oleh komputer, program ini dinamakan assembler. Output assembler harus diproses oleh linker untuk menghasilkan program akhir.

3) Bahasa tingkat tinggi (high level languange)

Bahasa tingkat tinggi memiliki arti bahwa bahasa ini lebih mudah dimengerti oleh banyak orang karena memang dirancang untuk orang yang awam. Bahasa pemrograman yang termasuk dalam bahasa tingkat tinggi adalah sebagai berikut.

a) BASIC (Beginners All-purposes Symbolic Instruction Code)

Bahasa program ini dikembangkan pada tahun 1965 di Darmouth College. Penciptanya adalah John Kemeny dan Thomas Kurtz. BASIC dipergunakan dalam aplikasi matematika. Selain itu, BASIC juga digunakan dalam beberapa aplikasi lainnya seperti akuntasi, permainan, file simulasi, dan lain-lain.

Keunggulan BASIC terletak pada kemudahan dalam pemakaiannya, sedangkan kelemahannya adalah tidak mendukung operasi bilangan kompleks dan penanganan terhadap berkas sangat terbatas sehingga tidak cocok untuk aplikasi bisnis.

b) LOGO

Bahasa ini dikembangkan untuk pendidikan dan simulasi pengajaran pada anak-anak dalam menyelesaikan masalah dan melakukan pemrograman. Ditemukan pada tahun 1967 oleh Seymour Papert dengan menggunakan LISP, yaitu satu jenis bahasa pemrograman untuk kecerdasan buatan. Logo sangat mudah digunakan untuk membuat gambar, sehingga banyak digunakan dalam menghasilkan laporan-laporan bisnis dalam bentuk grafik.

c) COBOL (Common Business Oriented Language)

Program jenis ini sering digunakan dalam dunia bisnis dan komersial, mulai dikembangkan pada tahun 1959. Namun sampai saat ini, program ini masih banyak digunakan pada jenis komputer minicomputer dan mainframe. COBOL memiliki keunggulan-keunggulan sebagai berikut.
  1.  Memiliki kode untuk semua flatform yang sama, sehingga tidak tergantung pada mesin.
  2.  Menggunakan kata-kata bahasa Inggris, sehingga sangat mudah dipahami oleh programmer.
  3.  Penanganan masukan dan keluaran mudah dilakukan.
  4.  Penanganan terhadap berkas sudah tersedia dan bahkan mendukung berbagai macam tipe-tipe berkas seperti sekuensial dan indeks.

Kelemahan dari bahasa ini adalah struktur penulisan program yang sangat banyak dan sangat kaku sehingga membuat programmer menjadi lelah dan bosan.

d) PASCAL

Bahasa ini ditemukan oleh Nicklaus Wirth tahun 1971. Bahasa ini dibuat untuk pengajaran pemrograman. Bahasa ini sangat populer di kalangan mahasiswa ilmu komputer dan teknik. Pascal memiliki keunggulan dibandingkan Fortran maupun Basic, yaitu sangat mudah dipelajari serta memiliki dukungan fungsi-fungsi matematika yang sangat lengkap. Namun Pascal juga memiliki kelemahan, yaitu tidak dapat mendukung operasi bilangan kompleks dan tidak mendukung sarana aplikasi bisnis. Keberadaan Pascal dapat pula dijadikan bahasa dasar dalam pembuatan kode perangkat lunak Delphi (software untuk pengembangan program di lingkungan Windows). Pascal juga digunakan sebagai landasan pembuatan kode pada Kylix, yaitu software pengembang program di lingkungan Linux.

e) Fortran (Formula Translator)

Fortran merupakan bahasa tingkat tinggi yang pertama kali diciptakan. Bahasa ini mulai dikembangkan pada tahun 1956 oleh John Backus di IBM. Fortran digunakan dalam bidang aplikasi matematika, yaitu dalam hal perumusan dan perhitungan sehingga menjadi andalan keunggulan dari bahasa ini. Namun Fortran memiliki kelemahan, yaitu operasi masukan dan keluarannya sangat kaku dan sulit dipahami. Untuk membuat bahasa fortran, seorang programmer tidak harus mengetahui bahasa mesin, tetapi harus memahami tata bahasa dan peraturan bahasa fortran.

f) Algol (Algoritma Language)

Algol merupakan bahasa automatic yang cocok untuk memecahkan permasalahan yang membutuhkan perhitungan numerik untuk beberapa pengolahan logic.

g) PL/1 (Programming Language)

Programming language merupakan bahasa komputer yang dapat digunakan dalam segala bahasa. Pada kenyataannya bahasa ini sulit dipelajari dan hanya dapat digunakan pada mesin IBM.

h) RPG (Report Program Generation)

RPG adalah program untuk pengolahan laporan. Bahasa ini sangat populer di lingkungan minicomputer dan mainframe IBM. RPG diluncurkan pertama kali pada tahun 1964.

i) APL (Aritmathic Programming Language)

APL adalah bahasa komputer untuk memecahkan soal-soal matematika (ilmu hitung). Diperkenalkan dan diciptakan oleh Kenneth Iverson pada tahun 1962. Bahasa ini menggunakan keyboard khusus yang berisikan simbol-simbol yang kompleks yang memungkinkan untuk melakukan penyelesaian matematika yang kompleks.

4) Bahasa pemrograman generasi keempat


Bahasa pemrograman generasi keempat meliputi Microsoft Visual Basic, Visual J++, dan Visual C++ yang dikembangkan dari keluarga besar bahasa tingkat tinggi untuk memudahkan pemrograman.

Bahasa pemrograman, atau sering diistilahkan juga dengan bahasa komputer, adalah teknik komando/instruksi standar untuk memerintah komputer. Bahasa pemrograman ini merupakan suatu himpunan dari aturan sintaks dan semantik yang dipakai untuk mendefinisikan program komputer. Bahasa ini memungkinkan seorang programmer dapat menentukan secara persis data mana yang akan diolah oleh komputer, bagaimana data ini akan disimpan/diteruskan, dan jenis langkah apa secara persis yang akan diambil dalam berbagai situasi.
Menurut tingkat kedekatannya dengan mesin komputer, bahasa pemrograman terdiri dari:
Bahasa Mesin, yaitu memberikan perintah kepada komputer dengan memakai kode bahasa biner, contohnya 01100101100110
Bahasa Tingkat Rendah, atau dikenal dengan istilah bahasa rakitan (bah.Inggris Assembly), yaitu memberikan perintah kepada komputer dengan memakai kode-kode singkat (kode mnemonic), contohnya MOV, SUB, CMP, JMP, JGE, JL, LOOP, dsb.
Bahasa Tingkat Menengah, yaitu bahasa komputer yang memakai campuran instruksi dalam kata-kata bahasa manusia (lihat contoh Bahasa Tingkat Tinggi di bawah) dan instruksi yang bersifat simbolik, contohnya {, }, ?, <<, >>, &&, ||, dsb.
Bahasa Tingkat Tinggi, yaitu bahasa komputer yang memakai instruksi berasal dari unsur kata-kata bahasa manusia, contohnya begin, end, if, for, while, and, or, dsb.
Sebagian besar bahasa pemrograman digolongkan sebagai Bahasa Tingkat Tinggi, hanya bahasa C yang digolongkan sebagai Bahasa Tingkat Menengah dan Assembly yang merupakan Bahasa Tingkat Rendah.

Pengertian dan Klasifikasi Bahasa Pemrograman - Sebelum anda mengetahui Klasifikasi Bahasa Pemrograman, ada baiknya anda tahu Pengertian Bahasa Pemrograman. Bahasa Pemrograman adalah teknik komando/instruksi standar untuk memerintah komputer yang merupakan suatu himpunan dari aturan sintaks dan semantik yang dipakai untuk mendefinisikan program komputer.

Bahasa ini memungkinkan seorang programmer dapat menentukan secara persis data mana yang akan diolah oleh komputer, bagaimana data ini akan disimpan/diteruskan, dan jenis langkah apa secara persis yang akan diambil dalam berbagai situasi.

Menurut tingkat kedekatannya dengan mesin komputer, bahasa pemrograman terdiri dari:
Bahasa Mesin, yaitu memberikan perintah kepada komputer dengan memakai kode bahasa biner, contohnya 100101100110
Bahasa Tingkat Rendah, atau dikenal dengan istilah bahasa rakitan (bah.Inggris Assembly), yaitu memberikan perintah kepada komputer dengan memakai kode-kode singkat (kode mnemonic), contohnya MOV, SUB, CMP, JMP, JGE, JL, LOOP, dsb.
Bahasa Tingkat Menengah, yaitu bahasa komputer yang memakai campuran instruksi dalam kata-kata bahasa manusia (lihat contoh Bahasa Tingkat Tinggi di bawah) dan instruksi yang bersifat simbolik, contohnya {, }, ?, <<, >>, &&, ||, dsb.
Bahasa Tingkat Tinggi, yaitu bahasa komputer yang memakai instruksi berasal dari unsur kata-kata bahasa manusia, contohnya begin, end, if, for, while, and, or, dsb.
Sebagian besar bahasa pemrograman digolongkan sebagai Bahasa Tingkat Tinggi, hanya bahasa C yang digolongkan sebagai Bahasa Tingkat Menengah dan Assembly yang merupakan Bahasa Tingkat Rendah.

  • Klasifikasi Bahasa Pemrograman

Untuk Klasifikasi Bahasa Pemrograman dibagi menjadi 5 bagian

1. Generasi Pertama
Bahasa yang berorientasi pada mesin. Program disusun menggunakan bahasa mesin/kode mesin. Bahasa Mesin adalah bahasa tingkat rendah yang hanya dipahami oleh komputer. Bahasa mesin ini sangat sulit dipahami oleh orang awam sehingga programmer harus menguasai operasi komputer secara teknis.

Abstraksi bahasa ini adalah kumpulan kombinasi kode biner "0" dan "1" yang sangat tidak alamiah bagi kebanyakan orang - kecuali insinyur pembuat mesin komputer. Karena tidak alamiah bagi kebanyakan orang, bahasa mesin juga disebut bahasa tingkat rendah.

2. Generasi Kedua
Bahasa pemrograman yang menggunakan bahasa rakitan / Assembly. Bahasa Assembly adalah bahasa pemrograman yang menggunakan instruksi yang sama seperti pada bahasa mesin, tetapi instruksi dan variable yang digunakan mempunyai nama sehingga mempermudah proses pemrograman. Karena tidak lagi menggunakan deretan kode biner untuk melakukan pemrograman.

3. Generasi Ketiga
Bahasa pemrograman yang menggunakan pendekatan prosedural. Instruksi program ditulis menggunakan kata-kata yang biasa digunakan oleh manusia. Contoh : WRITE (untuk menampilkan kelayar)
READ (untuk membaca data masukan dari keyboard). Bahasa pada generasi ini disebut juga Bahasa beraras tinggi / High Level Language.
Contoh bahasa pemrogaman :PASCAL, FORTRAN, C, COBOL, BASIC dll.

Pada generasi bahasa pemrograman terakhir sekarang ini, kedua cara interpretasi dan kompilasi digabungkan dalam satu lingkungan pengembangan terpadu (IDE = integrated development environment). Cara interpretasi memudahkan dalam pembuatan program secara interaktif dan cara kompilasi menjadikan eksekusi program lebih cepat.

Pertama program dikembangkan interaktif, kemudian setelah tidak ada kesalahan keseluruhan program dikompilasi. Contoh bahasa program seperti ini adalah Visual BASIC yang berbasis BASIC dan Delphi yang berbasis PASCAL.

Bahasa tingkat tinggi bersifat portable. Program yang dibuat menggunakan bahasa tingkat tinggi pada suatu mesin komputer bersistem operasi tertentu, hampir 100% bisa digunakan pada berbagai mesin dengan aneka sistem operasi. Kalaupun ada perbaikan sifatnya kecil sekali.

4. Generasi keempat
Merupakan Bahasa Non-Prosedural. Bahasa pemrograman Generasi Ke-4 dirancang untuk mengurangi waktu pemrogram untuk membuat program sehingga pembuatan program dibuat dengan waktu lebih cepat.
Program ini dapat digunakan oleh pemakai yang kurang mengenal hal-hal teknis pemrograman tanpa perlu bantuan seorang programmer professional.

Contoh : Membuat program database sederhana dengan Microsoft Access.

Bahasa generasi ke-4 disebut juga dengan Very High Level Language atau Problem Oriented Language (bahasa yang berorientasi pada masalah) karena memungkinkan pemakai menyelesaikan masalah dengan sedikit penulisan kode pemrograman dibandingkan dengan bahasa prosedural.

Fasilitas yang tersedia :
Program Generator (untuk membuat aplikasi mudah).
Report Generator (untuk membuat laporan dengan mudah dan cepat)
Bahasa Query (SQL).
Dengan adanya fasilitas ini programmer sedikit dalam menuliskan kode instruksi.
Contoh Bahasa Generasi ke-4: Oracle, Microsoft Access dsb.

5. Generasi Ke Lima
Merupakan bahasa pemrograman yang ditujukan untuk menangani kecerdasan buatan (artificial intelligence) (AI). AI adalah disiplin dari ilmu komputer yang mempelajari cara komputer meniru kecerdasan manusia.
Contoh Aplikasi :
Pemrosesan Bahasa Alami è mengatur komputer agar bisa berkomunikasi dengan manusia melalui bahasa manusia.
Aplikasi Sistem Pakar è program komputer yang dapat menghasilkan pemikiran yang setara dengan seorang pakar.
Contoh Bahasa Pemrograman : PROLOG dan LISP.

Perbedaan COMPILER Dengan INTERPRETER

Perbedaan COMPILER Dengan INTERPRETER




Interpreter adalah perangkat lunak yang mampu mengeksekusi code program (yang ditulis oleh programmer) lalu menterjemahkannya ke dalam bahasa mesin, sehingga mesin melakukan instruksi yang diminta oleh programmer tersebut. Perintah-perintah yang dibuat oleh programmer tersebut dieksekusi baris demi baris, sambil mengikuti logika yang terdapat di dalam kode tersebut. Proses ini sangat berbeda dengan compiler, dimana pada compiler, hasilnya sudah langsung berupa satu kesatuan perintah dalam bentuk bahasa mesin, dimana proses penterjemahan dilaksanakan sebelum program tersebut dieksekusi.
Sedangkan Compiler sendiri adalah program sistem yang digunakan sebagai alat bantu dalam pemrogaman.Perangkat lunak yang melakukan proses penterjemahan code (yang dibuat programmer) ke dalam bahasa mesin. Hasil dari terjemahan ini adalah bahasa mesin. Pada beberapa compiler, output berupa bahasa mesin dilaksanakan dengan proses assembler yang berbeda.
Untuk lebih jelas mengenai perbedaan antara Interpreter dengan Compiler, ada baiknya saya jelaskan lebih terperinci mengenai dua hal ini.

Perbedaan antara Compiler dengan Interpreter :
1. Jika hendak menjalankan program hasil kompilasi dapat dilakukan tanpa butuh kode sumber. Kalau interpreter butuh kode sumber.
2. Jika dengan kompiler, maka pembuatan kode yang bisa dijalankan mesin dilakukan dalam 2 tahap terpisah, yaitu parsing ( pembuatan kode objek ) dan linking ( penggabungan kode objek dengan library ) . Kalau interpreter tidak ada proses terpisah.
3. JIka compiler membutuhkan linker untuk menggabungkan kode objek dengan berbagai macam library demi menghasilkan suatu kode yang bisa dijalankan oleh mesin. Kalau interpreter tidak butuh linker untuk menggabungkan kode objek dengan berbagai macam library.
4. Interpreter cocok untuk membuat / menguji coba modul ( sub-routine / program-program kecil ). Maka compiler agak repot karena untuk mengubah suatu modul / kode objek kecil, maka harus dilakukan proses linking / penggabungan kembali semua objek dengan library yang diperlukan.
5. Pada kompiler bisa dilakukan optimisasi / peningkatan kualitas kode yang bisa dijalankan. Ada yang dioptimasi supaya lebih cepat, ada yang supaya lebih kecil, ada yang dioptimasi untuk sistem dengan banyak processor. Kalau interpreter susah atau bahkan tidak bisa dioptimasikan.

pengertian kompiler & interpreter


pengertian kompiler


Bertahun tahun pemrograman bahasa tingkat tinggi (high level languange-HLL) telah dikenal luar di lingkungan pemrograman komputer karena kemudahan dalam pembuatannya. Beberapa tahun terakhir ada dua faktor yang menjadi perhatian dalam pengembangan program, yaitu : protabilitas dan pemeliharaan program. Seperti diketahui komputer tidak ‘mengenal’ HLL, sehingga diperlukan suatu konversi ke dalam bahasa mesin.
Compiler adalah suatu program yang melakukan proses translasi dari HLL ke dalam bahasa mesin di komputer. Disamping program translasi, compiler juga mempunyai beberapa fungsi penting, seperti diagnostik, contohnya kemampuan pendeteksian error/kesalahan. Pelannggaran spesifikasi HLL akan terdeteksi dan dilaporkan kepada programmer oleh compiler agar seger diperbaiki hingga mempermudah pembentukan machine language equivalent.

pengertian Interpreter


Interpreter adalah Perangkat lunak yang mampu mengeksekusi code program (yang ditulis oleh programmer) lalu menterjemahkannya ke dalam bahasa mesin, sehingga mesin melakukan instruksi yang diminta oleh programmer tersebut. Perintah-perintah yang dibuat oleh programmer tersebut dieksekusi baris demi baris, sambil mengikuti logika yang terdapat di dalam kode tersebut.
Proses ini sangat berbeda dengan compiler, dimana pada compiler, hasilnya sudah langsung berupa satu kesatuan perintahdalam bentuk bahasa mesin, dimana proses penterjemahan dilaksanakan sebelum program tersebut dieksekusi.
Interpreter atau dalam bahasa Indonesia dikenal sebagai Juru Bahasa berbeda dengan Translator atau penterjemah dalam segi media yang dipakai untuk menerjemahkan. Interpreter akan menterjemahkan bahasa sumber ke dalam bahasa sasaran secara langsung atau orally sementara translator akan menerjemahkan bahasa sumber ke bahasa sasaran secara tertulis.
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.

compiler dan interpreter:Mereka berdua sama seperti mereka mencapai tujuan yang sama, tetapi inheren berbeda tentang bagaimana mereka mencapai tujuan itu. Kode dikompilasi mengambil program (source) ditulis dalam beberapa jenis bahasa pemrograman, dan kemudian akhirnya menerjemahkannya ke dalam kode obyek atau bahasa mesin. Kode dikompilasi melakukan pekerjaan jauh lebih efisien, karena menghasilkan program bahasa mesin lengkap, yang kemudian dapat dieksekusi. Penafsir menerjemahkan instruksi satu per satu waktu, dan kemudian mengeksekusi instruksi tersebut segera. Compiler sendiri merupakan program komputer yang ditulis biasanya dalam beberapa implementasi bahasa.  


Compiler dan interpreter keduanya apa yang kita sebut penerjemah. Tujuan mereka adalah untuk menerjemahkan kode pemrograman bahasa sumber seperti (C + +, VB, Java, perakitan dan sebagainya) ke dalam bahasa tingkat rendah (bahasa mesin) yang dimengerti oleh komputer.

Bagaimana penerjemah berbeda:

Compiler menerjemahkan kode sorce sekaligus.

Interpreter menerjemahkan kode sumber satu baris seluruh pada suatu waktu.

Assembler adalah program utilitas yang digunakan untuk menerjemahkan pernyataan bahasa assembly ke dalam kode mesin komputer target.


Sumber : http://endimulyadi210.blogspot.com/

Pengertian OOP

Pengertian OOP

OOP (Object Oriented Programming) adalah suatu metode pemrograman yang berorientasi kepada objek. Tujuan dari OOP diciptakan adalah untuk mempermudah pengembangan program dengan cara mengikuti model yang telah ada di kehidupan sehari-hari. Jadi setiap bagian dari suatu permasalahan adalah objek, nah objek itu sendiri merupakan gabungan dari beberapa objek yang lebih kecil lagi. Saya ambil contoh Pesawat, Pesawat adalah sebuah objek. Pesawat itu sendiri terbentuk dari beberapa objek yang lebih kecil lagi seperti mesin, roda, baling-baling, kursi, dll. Pesawat sebagai objek yang terbentuk dari objek-objek yang lebih kecil saling berhubungan, berinteraksi, berkomunikasi dan saling mengirim pesan kepada objek-objek yang lainnya. Begitu juga dengan program, sebuah objek yang besar dibentuk dari beberapa objek yang lebih kecil, objek-objek itu saling berkomunikasi, dan saling berkirim pesan kepada objek yang lain.
Dalam pemograman berorientasi Objek dikenal Ada beberapa pengertian dasar yang harus kita ketahui yaitu: 
1.Class, dimana class adalah merupakan penggambaran dari sebuah objec atau benda,sifat objek, dan juga apa yang bisa dilakukan oleh objek tersebut.
  • Sebagai contoh adalah pengambaran yang real dalam kehidupan kita adalah tentang dunia transportasi. Tentunya kita semua  mengetahui bahwa sangatlah banyak jenis alat transportasi yang ada seperti motor, mobil,pesawat terbang,kapal laut, dan lain sebagainya.Kemudian marilah kita anggap berbagai alat transportasi tersebut sebagai  suatu class. Maka motor tentunya mempunyai no polisi,tahun pembuatan,merk dll demikian juga dengan alat transportasi yang lainnya, oleh karenanya hal ini bisa disebut sebagai properties. Selanjutnya motor itu sendiri bisa berjalan maju, berjalan mundur,belok kiri, belok kanan yang mana kegiatan ini disebut method.
  • contoh :
    public class ApaMotormu {
    public static void main(String[] args){
    Motor punyaku=new Motor();
    punyaku.motorku();
    }
    }
2.Object, adalah merupakan suatu bentuk dari class.
Kalau kita mengikuti analogi di atas, maka object dari class HEWAN adalah Burung, KAMBING, AYAM, KUDA. Mereka adalah CONTOH dari class HEWAN. Semua dari mereka adalah HEWAN yang mempunyai nama, kaki, Jenis makanan dst. Dan bisa berlari, bersuara, berkembang biak dll.
contoh :
public class Peliharaanmu{
public static void main(String[] args){
Hewan punyaku=new Hewan();
punyaku.hewanku();
}
}
3.Inheritance, yaitu salah satu bentuk teknis untuk membuat sebuah class lebih spesifik lagi.
Sebagai contoh dari kasus ini menurut analogi di atas. Misalkan kita akan membuat class yang lebih spesifik dari ORANG yaitu siswa/student. Maka class ini mempunyai properti tambahan sekolah tempat dia belajar. Akan tetapi, semua properti sebagai orang ada juga pada class siswa ini.
Contoh:
Public Class ORANG_TUA
‘variabel untuk menampung nama bapak
Private XBapak As String
‘variabel untuk menampung nama ibu
Private XIbu As String
‘property (atribut/informasi) class
Public Property Nama_Bapak() As String
‘Get : hanya ijinkan akses data
Get
Return XBapak
End Get
‘Set : mengijinkan ubah data
Set(ByVal value As String)
XBapak = value
End Set
End Property

‘property (atribut/informasi) class
Public Property Nama_Ibu() As String
Get
Return XIbu
End Get
Set(ByVal value As String)
XIbu = value
End Set
End Property
End Class
Turunkan dengan inheritance :
Public Class ANAK_WANITA

‘membuat turunan dari base class
Inherits ORANG_TUA
Private XWanita As String
Private XUsia_W As String

Public Property Nama_Wanita() As String
Get
Return XWanita
End Get
Set(ByVal value As String)
XWanita = value
End Set
End Property
Public Property Usia_Wanita() As Byte
Get
Return XUsia_W
End Get
Set(ByVal value As Byte)
XUsia_W = value
End Set
End Property
End Class

4.Encapsulation, yaitu mengemas suatu objek sehingga pada saat kita akan memakai objek tersebut kita tidak perlu lagi tahu tentang detail bagaimana suatu action itu terjadi.
Contoh dalam hal ini, misal siswa (suatu object) sedang menulis (method). Maka detail dari tentang cara siswa itu menulis (bagaimana otot tangan itu  bekerja untuk menulis, bagaimana sistem saraf pusat  memerintahkan untuk menulis) kita tidak perlu mengerti. Kita hanya melihat si siswa sedang menulis.

Contoh :
class Siswa
{
String nama;
String nim;
void isiData ( String namaku,String nimku )
{
nama = namaku;
nim = nimku;
}
String ambilNama()
{
return nama;
}
String ambilNim()
{
return nim;
}
}
public class Mahasiswa
{
public static void main ( String [] args)
{
Siswa mahasiswa_itn = new Siswa(); //membuat variable instant
mahasiswa_itn.isiData(“Dina Damayanti”,”0412585″);
System.out.println( “Nama : ” + mahasiswa_itn.ambilNama());
System.out.println( “Nim : ” + mahasiswa_itn.ambilNim());
}
}



5.Polymorphism, yaitu suatu object bisa bertindak lain terhadap message/method yang sama.
Misalkan kita punya satu class hewan dan diturunkan menjadi dua class hewan berkaki dua dan hewan berkaki empat. Ketika hewan berkaki dua melakukan method makan maka yang dilakukan adalah makan dengan paruhnya, dan ketika hewan berkaki empat juga makan maka dia akan menggunakan mulutnya. Keduanya melakukan aksi yang sama yaitu makan akan tetapi perlakuannya lain..

Contoh :
class Binatang
{
public void info()
{
System.out.println(” Info tentang Hewan : “);
}
}
class Herbivora extends Binatang
{
public void info()
{
System.out.println (“Info pada herbivora: Memakan makanan berupa tumbuh – tumbuhan”);
}
}
class Kelinci extends Herbivora
{
public void info()
{
System.out.println(“Info pada Kelinci: Memakan makanan berupa wortel”);
}
}
public class Polimorfisme
{
public static void main(String[] args)
{
Herbivora herbivora;
Kelinci kelinciku;
Binatang hewan;
herbivora=new Herbivora();
kelinciku=new Kelinci();
hewan=herbivora;
hewan.info();
hewan=kelinciku;
hewan.info();
}
}