TUGAS 2
Information Hiding dan Encapsulation
Encapsulasi merupakan implementasi
penyembunyian informasi (information hiding). Tujuannya menyembunyikan
informasi data (field) objek sehingga tidak terlihat dari luar. Dengan demikian
informasi tersebut tidak dapat diakses sembarangan.
Dalam bahasa
Java enkapsulasi dapat dilakukan pada class, metode dan field. Penerapan
enkapsulasi sendiri dapat dilakukan secara bertingkat menggunakan acces
modifier yang terdiri atas private, public dan protected.
Contoh Program yang saya buat adalah Program Segitiga,
dimana atribut yang dihide adalah :
private double alas;
private double tinggi ;
PEMBAHASAN
1.1. Contoh Pemrograman Java
//Class
Segitiga.java
public
class Segitiga {
private double alas; //ini adalah atribut
yang di hide
private double tinggi; //ini adalah atribut
yang di hide
public
Segitiga(){
alas = 0;
tinggi = 0;
}
private
double luas(double a, double t){
return ((a*t)/2);
}
public
void setAlas(double alas){
&nbrp; this.alas = alas;
}
public
void setTinggi(double tinggi){
this.tinggi = tinggi;
}
public
double getAlas(){
return alas;
}
public
double getTinggi(){
return tinggi;
}
public
double getLuas(){
return luas(alas, tinggi);
}
}
Dalam program ini ada method Setter() dan method Getter()
contohnya adalah setAlas, dan getAlas
Method setter berfungsi untuk menentukan sebuah informasi, nilai atau
value, dan getter untuk mendapatkan informasi dari suatu kelas.
//Class
MainSegitiga.java
public
class MainSegitiga {
public static void main(String[] Arg){
Segitiga sg = new Segitiga();
sg.setAlas(10);
sg.setTinggi(12);
System.out.println("Alas :"+ sg.getAlas());
System.out.println("Tinggi :"+ sg.getTinggi());
System.out.println("Luas :"+ sg.getLuas());
}
}
Alas saya input langsung = 10 dan Tinggi = 12
Rumus Mencari Luas Segitiga = ((Alas *
Tinggi)/2) jadi 10x12 = 120 / 2 = 60.
Output
Program :
1.2. Contoh
Pemrograman C#
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Segitiga
{
public class Segitiga {
private double alas;
private double tinggi;
public Segitiga() {
alas = 0;
tinggi = 0;
}
private double luas(double a, double
t) {
return ((a*t)/2);
}
public void setAlas(double alas) {
this.alas =
alas;
}
public void setTinggi(double
tinggi) {
this.tinggi =
tinggi;
}
public double getAlas() {
return alas;
}
public double getTinggi() {
return tinggi;
}
public double getLuas() {
return luas(alas, tinggi);
}
public static void Main(string[]
args) {
Segitiga sg = new
Segitiga();
sg.setAlas(10);
sg.setTinggi(12);
Console.WriteLine("Alas
:"+ sg.getAlas());
Console.WriteLine("Tinggi
:"+ sg.getTinggi());
Console.WriteLine("Luas
:"+ sg.getLuas());
Console.ReadKey(true);
}
}
}
1.3. Contoh
Pemrograman C++
#include
<iostream>
using
namespace std;
class
Adder {
public:
Adder(int
i = 0) {
total =
i;
}
void
addNum(int number)
{
total +=
number;
}
int
getTotal() {
return
total;
};
private:
int
total;
};
int main(
) {
Adder a;
a.addNum(10);
a.addNum(20);
a.addNum(30);
cout
<< "Total " << a.getTotal() <<endl;
return 0;
}
Tidak ada komentar:
Posting Komentar