Pertanyaan Yang Sering Muncul Saat Interview Menjadi Java Developer

Omjebs > Tech > Pertanyaan Yang Sering Muncul Saat Interview Menjadi Java Developer
laptop office internet technology

Pertanyaan Yang Sering Muncul Saat Interview Menjadi Java Developer

Ketika melamar pekerjaan sebagai programmer, banyak perusahaan yang ingin tahu bagaimana konsep dasar kita terhadap bahasa pemograman yang kita kuasai.

Contohnya anda melamar sebagai Java programmer, banyak pertanyaan yang sering dilontarkan oleh user/recruiter kepada kita.

1.Konsep Dasar OOP

OOP Merupakan hal yang harus dikuasai saat ingin melamar menjadi Java programmer. Karena Java sendiri merupakan bahasa yang didesain untuk OOP.

OOP (Object Oriented Programming) atau dalam bahasa indonesia dikenal dengan pemrograman berorientasikan objek (PBO) merupakan sebuah paradigma atau teknik pemrograman yang berorientesikan Objek.

Pada OOP, Fungsi dan variabel dibungkus dalam sebuah objek atau class yang dapat saling brinteraksi, sehingga membentuk sebuah program.

Konsep OOP

  • Abstrak Class
    1. Kelas merupakan deskripsi abstrak informasi dan tingkah laku dari sekumpulan data.
    2. Kelas dapat diilustrasikan sebagai suatu cetak biru(blueprint) atau prototipe yang digunakan untuk menciptakan objek.
    3. Kelas merupakan tipe data bagi objek yang mengenkapsulasi data dan operasi pada data dalam suatu unit tunggal.
    4. Kelas mendefinisikan suatu struktur yang terdiri atas data kelas (data field), prosedur atau fungsi (method), dan sifat kelas (property).
  • Encapsulation
    1. Istilah enkapsulasi sebenarnya adalah kombinasi data dan fungsionalitas dalam sebuah unit tunggal sebagai bentuk untuk menyembunyikan detail informasi.
    2. Proses enkapsulasi memudahkan kita untuk menggunakan sebuah objek dari suatu kelas karena kita tidak perlu mengetahui segala hal secara rinci.
    3. Enkapsulasi menekankan pada antarmuka suatu kelas, atau dengan kata lain bagaimana menggunakan objek kelas tertentu.
    4. Contoh: kelas mobil menyediakan antarmuka fungsi untuk menjalankan mobil tersebut, tanpa kita perlu tahu komposisi bahan bakar, udara dan kalor yang diperlukan untuk proses tersebut.
  • Inheritance
    1. Kita dapat mendefinisikan suatu kelas baru dengan mewarisi sifat dari kelas lain yang sudah ada.
    2. Penurunan sifat ini bisa dilakukan secara bertingkattingkat, sehingga semakin ke bawah kelas tersebut menjadi semakin spesifik.
    3. Sub kelas memungkinkan kita untuk melakukan spesifikasi detail dan perilaku khusus dari kelas supernya.
    4. Dengan konsep pewarisan, seorang programmer dapat menggunakan kode yang telah ditulisnya pada kelas super berulang kali pada kelas-kelas turunannya tanpa harus menulis ulang semua kodekode itu.
  • Polymorphism
    1. Polimorfisme merupakan kemampuan objekobjek yang berbeda kelas namun terkait dalam pewarisan untuk merespon secara berbeda terhadap suatu pesan yang sama.
    2. Polimorfisme juga dapat dikatakan kemampuan sebuah objek untuk memutuskan method mana yang akan diterapkan padanya, tergantung letak objek tersebut pada jenjang pewarisan.
    3. Method overriding.
    4. Method name overloading.

2. Apa yang dimaksud dengan pass by reference dan pass by value di Java?

Pass by reference berarti, melewati alamat itu sendiri daripada melewati nilainya. Pass by value berarti melewati salinan dari nilai (value).

3. Design Pattern

Secara umum, design pattern terbagi menjadi tiga, yaitu:

Creational Pattern: melingkupi instansiasi dari objek dan semua yang menyediakan cara untuk membagi client dari objek yang diinstansiasi.

Beberapa Jenis Creational Patter:

Singleton

Builder

Prototype

Abstract Factory

Factory Method

Behavioral Pattern: melingkupi bagaimana kelas dan objek berinteraksi serta mendistribusikan tanggung jawab.

Beberapa jenis Behavioral Pattern:

Template method

Strategy

Observer

State

Command

Structural Pattern: membantu dalam mengatur kelas atau objek menjadi struktur yang besar

Jenis -Jenis Structural Pattern:

Faced

Proxy

Composite

Bridge

Decorator

4. Access Modifier

Secara umum ada 3 macam modifier yang digunakan dalam Java: publicprivate, dan protected.

Apabila kita tidak menggunakan tiga kata kunci tersebut, maka member atau class itu tidak menggunakan modifier (no modifier).

Masing-masing modifier akan menentukan di mana saja member bisa diakses.

Berikut ini tabel jangkauan untuk masing-masing modifier:

ModifierClassPackageSubclassWorld
publicYYYY
protectedYYYN
no modifierYYNN
privateYNNN

Keterangan:

  • Y artinya bisa diakses;
  • N artinya tidak bisa diakses;
  • Subclass artinya class anak;
  • World artinya seluruh package di aplikasi.
0 0 vote
Article Rating
Subscribe
Notify of
0 Comments
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x
()
x