TM 8 Flashcards
Definisikan apa yang disebut Encapsulation? Jelaskan latar belakang dibalik munculnya ide atau gagasan mengapa kita membutuhkan encapsulation. Uraikan bagaimana encapsulation di sediakan di C++?
Encapsulation adalah suatu proses untuk mengizinkan programmer untuk mengelompokkan data dan subroutines yang dioperasikan dalam satu tempat dan menyembunyikan detail dari user.
Benefits dari Encapsulation:
- Agar lebih mudah di mengerti dan di maintain
- Mengatur bagaimana data diakses dan dimodifikasi
- Membuat Class mudah digunakan oleh clients
- Meningkatkan Reusability
- Encapsulation membuat design program lebih fleksible.
Encapsulation di C++ dapat memiliki private, protected dan public members. Agar kita tahu bagaimana data atau function tersebut diakses atau dimodifikasi.
Bagaimana object C++ class dibentuk? Dimana object Java class dibentuk?
C++:
#include
using namespace std;
class Box { public: double getVolume(void) { return length * breadth * height; } void setLength(int n) { length = n; } void setBreadth(int n) { breadth = n; } void setHeight(int n) { height = n; }
private: double length; double breadth; double height; };
int main() { Box kotak; kotak.setLength(3); kotak.setBreadth(5); kotak.setHeight(2); cout << kotak.getVolume() << endl; return 0; }
Object Java Class disimpan dalam Heap.
Apa yang dimaksud dengan friend function dan friend class?
friend function adalah fungsi yang digunakan untuk mengakses ke anggota private dan protected member ke beberapa unit atau fungsi yang tidak berhubungan.
friend class adalah class yang memiliki akses terhadap private data dari sebuah kelas yang membuat class tersebut menjadi friend class.
Uraikan satu alasan yang paling tepat mengapa Java tidak mempunyai friend function dan friend class?
Karena friend function dan friend class memiliki kemungkinan pada suatu program tersebut untuk mengakses ke class member function dari luar, sehingga akan berpengaruh pada sisi keamanan dalam bahasa Java. Karena itulah Java tidak memiliki Friend function dan friend class