SlideShare una empresa de Scribd logo
1 de 17
BAB I
STRUKTUR

1.1. TUJUAN
Tujuan pembelajaran dalam bab ini yaitu:
1.

Mengetahui pengertian dan pengaksesan struktur

2.

Mampu mengelompokkan sejumlah data dengan tipe yang berlainan.

3.

Mengetahui pengertian kelas dan cara pengaksesannya.

1.2.DASAR TEORI
1.2.1. Struktur
Struktur adalah pengelompokan variabel-variabel yang
bernaung dalam satu nama yang sama. Variabel-variabel yang
membentuk suatu struktur, selanjutnya disebut sebagaielemen dari
struktur atau field. Dengan demikian dimungkinkan suatu struktur
dapat berisielemen-elemen data berbeda tipe seperti char, int, float,
double, dan lain-lain.
Tipe data struct secara umum adalah untuk menyimpan paket
(sekumpulan) data ke dalam satu buah nama variabel saja.
Kumpulan data tersebut diikat sedemikian rupa menjadi satu.
Kumpulan data di dalam sebuah struct bisa mempunyai tipe data
dasar yang beraneka ragam. Kumpulan data dalam sebuah struct
sangat dianjurkan membentuk sebuah kesatuan makna berkaitan
dengan nama struct-nya. Misal, jika struct-nya bernama segitiga
maka isi struct-nya antara lain: alas, tinggi, luas dan keliling. Konsep
yang lebih lanjut dapat juga dalam sebuah struct terdapat struct lagi
(nested struct).
1.2.2.

Struct untuk Array
Array adalah struktur data yang terdiri dari item berurutan, di
mana semua itemnya bertipe sama. Dalam Java, item dalam array

1
2

selalu dinomori dari nol hingga nilai maksimum tertentu, yang
nilainya ditentukan pada saat array tersebut dibuat. Misalnya, suatu
array berisi 100 bilangan bulat, yang dinomori dari nol hingga 99.
Item dalam array bisa bertipe salah satu tipe Java primitif. Item-item
ini bisa juga berupa referensi ke objek, sehingga, misalnya kita bisa
membuat array yang berisi semua komponen dalam applet.Bagian ini
akan membahas bagaimana array dibuat dan digunakan pada Java.
Juga mencakup kelas standar java.util.ArrayList. Suatu objek bertipe
ArrayList sangat mirip dengan array dari Object, akan tetapi ia bisa
bertambah ukuran secara dinamis.

1.2.3.

Analogi Struktur dan Kelas
Dalam paradigma pemrograman berorientasi obyek dikenal
kelas dan obyek. Kelas merupakan blue print dari obyek – obyek
yang akan dibuat. Analogi kelas dan obyek seperti rancangan model
rumah dan pembangunan rumah-rumah, adapun proses pembuatan
obyek dari kelas dikenal dengan instantiasi.
Pembuatan obyek dari kelas dengan instantiasi. Sebagai
contoh kita ambil kelas manusia. Kelas manusia mempunyai atribut :
nama. Selain itu kelas manusia juga mempunyai method : tampilkan
nama, kerja, makan.
Method Abstrac
Method Abstrac adalah method yang belum mempunyai
implementasi.

Pendefinisian

method

abstract

adalah

dengan

menambahkan keyword abstract, seperti contoh dibawah ini :
Abstract void berangkat_kerja ();
Sebuah kelas menyerupai sebuah struktur yang merupakan
tipe data sendiri, misalkan tipe data titik yang terdiri dari koordinat x
dan y. Bahasa Java telah menggunakan sebuah kelas untuk
3

menyatakan tipe data titik karena bahasa pemrograman Java
merupakan bahasa pemrograman berorientasi objek murni sehingga
tidak mengenal struktur tapi mengenal apa yang disebut dengan
kelas.
Perbedaan sebuah kelas dengan sebuah struktur adalah
sebuah kelas dapat berdiri sendiri dan dapat digunakan untuk
berbagai keperluan kelas-kelas yang lain, sedangkan sebuah struktur
tidak dapat berdiri sendiri. Sebuah kelas lebih fleksibel untuk
digunakan oleh kelas lain tanpa harus membongkar kode program
utama, sedangkan jika digunakan struktur maka kode program harus
dibongkar unuk disalin bagian strukturnya ke kode program utama
yang lain. Sebuah file dapat terdiri dari berbagai kelas, namun
biasanya pada bahasa pemrograman Java sebuah file hanya terdiri
dari satu kelas yang disimpan dengan nama kelas, misal file List.java
berisi kelas List. Namun jika kelas yang dibuat misalnya public class
nama_kelas, maka kelas itu harus disimpan dalam satu file hanya
untuk satu kelas. Setelah dilakukan kompilasi maka pada Java akan
ada sebuah file .class yang berisi bytecode dari setiap kelas. Jika
sebuah file terdiri dari dua kelas maka setelah dikompilasi akan
dihasilkan dua buah file .class yang nantinya akan dibaca oleh
interpreter Java saat program dieksekusi.
Sebuah kelas saat program dieksekusi dan perintah new
dijalankan, maka akan dibuat sebuah objek. Objek adalah elemen
pada saat runtime yang akan diciptakan, dimanipulasi dan
dihancurkan saat eksekusi sehingga sebuah objek hanya ada saat
sebuah program dieksekusi, jika masih dalam bentuk kode, disebut
sebagai kelas jadi pada saat runtime (saat sebuah program
dieksekusi), yang kita punya adalah objek, di dalam teks program
yang kita lihat hanyalah kelas.
4

1.3. ANALISA PRAKTIKUM
1.3.1. Struktur
Struktur bermanfaat untuk mengelompokkan sejumlah data
dengan tipe yang berlainan.
Contoh deklarasi struktur :
1. struct mahasiswa
{
2. int nim;
3. char nama[50];
4. char alamat[75];
};

Keterangan :
1. Struct adalah definisi dari struktur yang dimana mahasiswa
menjadi bagian dari strukturnya.
2. Untuk nim memakai int karena nim berupa angka jadi
memakai tipe data integer.
3. Untuk nama memakai char karena nama berupa huruf jadi yang
dipakai adalah tipe data karakter dengan nilai 50 karena sebagai
batasan kalau nama dapat dimasukkan sampai 50 huruf.
4. Sama seperti char nama. Alamat pun memakai tipe data char
dengan nilai 75 sebagai pendeklarasiaannya.

1.3.2. Pengaksesan Struktur
1. Bentuk 1
1 #include<iostream.h>
2 #include<conio.h>
3 #include<string.h>
4 void main()
{
5

5 struct mahasiswa
{
6 int nim;
7 char nama[50];
8 char alamat[75];
};
9

mahasiswa satu;

10 satu.nim=8;
11 strcpy(satu.nama,"Mahendra Data");
strcpy(satu.alamat,"Jl. Manyar No.5
Semarang");
12 cout<<satu.nim<<" "<<satu.nama<<"
"<<satu.alamat<<endl<<end

13 getche();
}
Dan hasilnya adalah :

Gambar 1.1. Hasil eksekusi struktur bentuk 1

Keterangan :
1. Untuk no. 1 hingga No. 3 adalah header dari file program.
2. No. 4 adalah void main yang merupakan void utama yang
merupakan fungsi utama dari program.
3. No. 5 struct mahasiswa untuk pendeklarasian dengan
jenis mahasiswa.
6

4. No. 6 int nim memakai int karena nim berupa angka jadi
memakai tipe data integer sebagai pendeklarasiaannya.
5. No. 7 char nama[50]maksudnya untuk nama memakai
char karena nama berupa huruf jadi yang dipakai adalah tipe
data karakter dengan nilai 50 karena sebagai batasan kalau
nama dapat dimasukkan sampai 50 huruf.
6. No. 8 char alamat[75]maksudnya Sama seperti char
nama. Alamat pun memakai tipe data char dengan nilai 75
sebagai pendeklarasiaannya.
7. No. 9 mahasiswa satumaksudnya adalah objeknya.
8. No. 10 satu.nim=8maksudnya adalah sebagai keterangan
dari objek.
9. No. 11 strcpymempunyai fungsi untuk menginputkan data
yang dideklarasikan didalamnya.
10. No. 12 cout<<perintahuntuk menampilkan program dalam
hasil eksekusi.
11. No. 13 getche();bermaksud untuk fungsi balik program
dalam

borland

c++

dan

jika

memakai

turbo

c++

getche()tidak diperlukan.

2. Bentuk 2
#include<iostream.h>
#include<conio.h>

1

#include<string.h>
struct mahasiswa

2

{
int nim;
char nama[50];

3

char alamat[75];
};
void main()

4
7

{
mahasiswa satu;

5

satu.nim=8;

6

strcpy(satu.nama,"Mahendra Data");
strcpy(satu.alamat,"Jl. Manyar No.5
Semarang");

7

cout<<satu.nim<<" "<<satu.nama<<"
"<<satu.alamat<<endl<<endl;

8

getche();
}
Dan hasil eksekusinya adalah :

Gambar 1.2. Hasil eksekusi struktur bentuk 2.

Keterangan :
1. Untuk no. 1 adalah header dari file program.
2. struct mahasiswa bermaksud untuk mendeklarasikan
struktur mahasiswa.
3. Inputan pada struct mahasiswa yang akan ditampilkan dalam
hasil eksekusi. Dimana yang digunakan adalah script char
(untuk tipe data karakter) int (tipe data bilangan bulat) .
4. void main yang merupakan void utama yang merupakan
fungsi utama dari program.
5. mahasiswa satumaksudnya adalah objeknya.
8

6. satu.nim=8maksudnya adalah sebagai keterangan dari
objek.
7. strcpymempunyai fungsi untuk menginputkan data yang
dideklarasikan didalamnya.
8. cout<<perintah untuk menampilkan program dalam hasil
eksekusi.

3. Bentuk 3
#include<iostream.h>
#include<conio.h>

1

#include<string.h>
struct mahasiswa

2

{
int nim;
char nama[50];

3

char alamat[75];
}satu;

4

void main()

5

{
satu.nim=8;
strcpy(satu.nama,"Mahendra Data");
strcpy(satu.alamat,"Jl.

Manyar

No.5

Semarang");
cout<<satu.nim<<"
"<<satu.alamat<<endl<<endl;
getche();
}

"<<satu.nama<<"
9

Dan hasilnya adalah :

Gambar 1.3. Hasil eksekusi struktur bagian 3.

Keterangan :
1. Untuk no. 1 adalah header dari file program.
2. Pada scirpt No. 2 struct mahasiswa bermaksud untuk
mendeklarasikan struktur mahasiswa.
3. Script No. 3 Inputan pada struct mahasiswa yang akan
ditampilkan dalam hasil eksekusi.
4. No. 4, satu;merupakan inisialisasi.
5. No. 5, void main yang merupakan void utama yang
merupakan fungsi utama dari program.

4. Bentuk 4
1

#include<iostream.h>
#include<conio.h>
#include<string.h>

2

void main()
{

3

struct mahasiswa
{

4

char nim[8];
char nama[10];
int umur;
};
10

5

mahasiswa amir={"9651001","Amir",20};
mahasiswa amat={"9651002","Amat",22};
mahasiswa tuti={"9651003","Tuti",19};
cout<<"Mahasiswa pertama :
"<<amir.nim<<endl;

6

cout<<"Mahasiswa pertama :

"<<amir.nama<<endl;
cout<<"Mahasiswa pertama :
"<<amir.umur<<endl;
cout<<endl;
cout<<"Mahasiswa kedua :
"<<amat.nim<<endl;
cout<<"Mahasiswa kedua :
"<<amat.nama<<endl;
cout<<"Mahasiswa kedua :
"<<amat.umur<<endl<<endl;

getche();
}
Dan hasilnya adalah :

Gambar 1.4. Hasil eksekusi struktur bentuk 4
11

Keterangan :
1. Untuk no. 1 adalah header dari file program.
2. No.2, void main yang merupakan void utama yang
merupakan fungsi utama dari program.
3. No.

3,

struct

mahasiswa

bermaksud

untuk

mendeklarasikan struktur mahasiswa.
4. No. 4, Inputan pada strcut mahasiswa yang akan ditampilkan
dalam hasil eksekusi.
5. No. 5, Input yang akan ditampilkan saat fungsikarakternya
dipanggil pada saat eksekusi berlangsung.
6. No. 6, cout<<perintahuntuk menampilkan program dalam
hasil eksekusi.

1.3.3. Struct Untuk Array
Contoh Source code Struct untuk ARRAY ini adalah seperti berikut :
#include<stdio.h>
#include<iostream.h>
#include<conio.h>

1

#include<string.h>
struct orang

2

{
char nama[50];

3

int umur;
};
void main()

4

{
orang saya[3];

5

int i,x;

6

for(i=0;i<=2;i++)

7

{
cout<<"Nama orang ke "<<(i+1)<<" adalah :";
12

cin>>saya[i].nama;
cout<<"Umur orang ke "<<(i+1)<<"adalah :";
cin>>saya[i].umur;

8

}
cout<<endl;

9

for(x=0;x<=2;x++)
{
cout<<"Nama

orang

ke

"<<(x+1)<<"adalah

ke

"<<(x+1)<<"adalah

:"<<saya[x].nama<<endl;
cout<<"Umur

orang

:"<<saya[x].umur<<endl<<endl;
}
getche();
}
Dan hasil eksekusinya adalah :

Gambar 1.5. Hasil eksekusi struct untuk array.

Keterangan :
1. Untuk no. 1 adalah header dari file program.
13

2. No.2, struct berarti menunjukkan definisi fungsi struktur
yang digunakan dalam program tersebut. Dan orang
menunjukkan struktur tag-nya.
3. No. 3, Inputan pada strcut orangyang akan dimasukkan dalam
hasil eksekusi.
4. No.4,

void

main yang merupakan void utama yang

merupakan fungsi utama dari program.
5. No.5, orang saya[3] hanya sebagai istilah, dan jumlah
orangnya ada 3 dan sebagai pendeklarasian tipe data array pada
program tersebut.
6. No. 6, i dan x masuk dalam bilangan integer karena
masukkannya berupa angka.
7. No. 7, for(i=0;i<=2;i++) yang dimana i=0 adalah nilai
awal dari variabel. i<=2 berarti angka masukkan nanti kurang
dari 2. Sedangkan i++ sebagai pengatur kenaikan nilai variabel
pengendali loop.
8. No.8,

cout<<perintahuntuk menampilkan program dalam

hasil eksekusi.
9. No.9,

cout<<endl;berfungsi

agar

hasil

eksekusi

selanjutnya diberi jarak satu enter.

1.3.4. Analogy Struct Dalam Kelas
Kelas merupakan struktur dari objek, yang contohnya sebagai
berikut :
#include<iostream.h>
#include<conio.h>

1

#include<string.h>

struct buku
{

2
14

char judul[35];
char pengarang[25];

3

int jumlah;
};
void main()

4

{
clrscr();

5

buku novel;

6

strcpy(novel.judul,"Meriam Benteng
Navarone");

7

strcpy(novel.pengarang,"Alistair Maclean");
novel.jumlah=12;

8

cout<<novel.judul<<endl;
cout<<novel.pengarang<<endl;

9

cout<<novel.jumlah<<endl;
getche();
}
Dan hasilnya adalah :

Gambar 1.6. Hasil eksekusi untuk analogi struktur

Keterangan :
1. Untuk no. 1 adalah header dari file program.
2. struct

berarti

menunjukkan

bukumenunjukkan struktur tag-nya.

definisi

struktur.

Dan
15

3. Inputan pada struct buku yang akan dimasukkan dalam hasil
eksekusi.
4. void main yang merupakan void utama yang merupakan
fungsi utama dari program.
5. clrscratau clear screen berfungsi untuk membersihkan layar.
6. buku novel merupakan objek.
7. strcpymempunyai fungsi untuk menginputkan data yang
dideklarasikan didalamnya.
8. novel.jumlah=12;untuk mendefinisikan bahwa jumlah
adalah 12.
9. cout<<untuk menampilkan program dalam hasil eksekusi.

Dan jika dijadikan kelas, maka hasilnya sebagai berikut :
#include<iostream.h>
#include<conio.h>

1

#include<string.h>
class buku

2

{
public:

3

char judul[35];
char pengarang[25];

4

int jumlah;
};
void main()
{
clrscr();
buku novel;

5
16

strcpy(novel.judul,"Meriam Benteng Navarone");
strcpy(novel.pengarang,"Alistair Maclean");
novel.jumlah=12;
cout<<novel.judul<<endl;
cout<<novel.pengarang<<endl;
cout<<novel.jumlah<<endl<<endl;
getche();
}
Dan hasil eksekusinya adalah sebagai berikut :

Gambar 1.7. Hasil eksekusi dari analogi struktur yang dikadikan kelas

Keterangan :
1. Untuk no. 1 adalah header dari file program.
2. class bukuuntuk mendefinisikan jenis kelasnya adalah buku.
3. public:untuk memberikan hak akses secara umum.
4. Inputan pada class buku yang akan dimasukkan dalam hasil
eksekusi.
5. void main yang merupakan void utama yang merupakan fungsi
utama dari program.
17

1.4. KESIMPULAN
Dari percobaan-percobaan diatas maka kita dapat menarik kesimpulan
sebagai berikut :
1. Struktur bermanfaat untuk mengelompokkan sejumlah data dengan tipe
yang berlainan
2. Struktur mempunyai 4 bentuk yang berbeda tetapi mempunyai hasil
eksekusi yang sama.
3. Untuk mengubah analogi struktur menjadi kelas, kita cukup mengganti
kode struct menjadi class.

Más contenido relacionado

La actualidad más candente

[PBO] Pertemuan 1 (praktik) - Pengenalan java
[PBO] Pertemuan 1 (praktik) - Pengenalan java[PBO] Pertemuan 1 (praktik) - Pengenalan java
[PBO] Pertemuan 1 (praktik) - Pengenalan javarizki adam kurniawan
 
[PBO] Pertemuan 10 - Generic Programming & Collection
[PBO] Pertemuan 10 - Generic Programming & Collection[PBO] Pertemuan 10 - Generic Programming & Collection
[PBO] Pertemuan 10 - Generic Programming & Collectionrizki adam kurniawan
 
Modul oop with java application mauludin
Modul oop with java application   mauludinModul oop with java application   mauludin
Modul oop with java application mauludinMauludin Ahmad
 
Laporan Modul 1 Praktikum Pemrograman Berbasis Objek
Laporan Modul 1 Praktikum Pemrograman Berbasis ObjekLaporan Modul 1 Praktikum Pemrograman Berbasis Objek
Laporan Modul 1 Praktikum Pemrograman Berbasis ObjekKuncara Laksana
 
Laporan PBO pratikum 2
Laporan PBO pratikum 2Laporan PBO pratikum 2
Laporan PBO pratikum 2rahmi wahyuni
 
Pemrograman Berorientasi Objek "Pengenalan JAVA"
Pemrograman Berorientasi Objek "Pengenalan JAVA"Pemrograman Berorientasi Objek "Pengenalan JAVA"
Pemrograman Berorientasi Objek "Pengenalan JAVA"Asnita Meydelia C K
 
[PBO] Pertemuan 3 - Pengenalan Pemrograman Berbasis Objek
[PBO] Pertemuan 3 - Pengenalan Pemrograman Berbasis Objek[PBO] Pertemuan 3 - Pengenalan Pemrograman Berbasis Objek
[PBO] Pertemuan 3 - Pengenalan Pemrograman Berbasis Objekrizki adam kurniawan
 
[RPL2] Class Diagram dan Konsep Object Oriented (1)
[RPL2] Class Diagram dan Konsep Object Oriented (1)[RPL2] Class Diagram dan Konsep Object Oriented (1)
[RPL2] Class Diagram dan Konsep Object Oriented (1)rizki adam kurniawan
 
Pemrograman Berorientasi Objek "Pengenalan Dasar Pemrograman JAVA"
Pemrograman Berorientasi Objek "Pengenalan Dasar Pemrograman JAVA"Pemrograman Berorientasi Objek "Pengenalan Dasar Pemrograman JAVA"
Pemrograman Berorientasi Objek "Pengenalan Dasar Pemrograman JAVA"Asnita Meydelia C K
 
Pewarisan, Polimorfisme, dan Interface
Pewarisan, Polimorfisme, dan InterfacePewarisan, Polimorfisme, dan Interface
Pewarisan, Polimorfisme, dan InterfaceIbrahim Naki
 
Modul PBO Bab-07 - Enkapsulasi (Encapsulation)
Modul PBO Bab-07 - Enkapsulasi (Encapsulation)Modul PBO Bab-07 - Enkapsulasi (Encapsulation)
Modul PBO Bab-07 - Enkapsulasi (Encapsulation)Rakhmat Dedi Gunawan
 
02. prak.-pemrograman-berorientasi-objek
02. prak.-pemrograman-berorientasi-objek02. prak.-pemrograman-berorientasi-objek
02. prak.-pemrograman-berorientasi-objekJamil Jamil
 
Resume tentang oop dalam php
Resume tentang oop dalam phpResume tentang oop dalam php
Resume tentang oop dalam phphendrajuniarto
 
Laporan praktikum Algoritma dan Pemrograman pertemuan 11
Laporan praktikum Algoritma dan Pemrograman pertemuan 11Laporan praktikum Algoritma dan Pemrograman pertemuan 11
Laporan praktikum Algoritma dan Pemrograman pertemuan 11Ekha Cahya Nugraha
 
Resume tentang oop dalam php
Resume tentang oop dalam phpResume tentang oop dalam php
Resume tentang oop dalam phphendrajuniarto
 
[PBO] Pertemuan 4 - Kontruktor Destruktor
[PBO] Pertemuan 4 - Kontruktor Destruktor[PBO] Pertemuan 4 - Kontruktor Destruktor
[PBO] Pertemuan 4 - Kontruktor Destruktorrizki adam kurniawan
 
Laporan praktikum Algoritma dan Pemrograman pertemuan 15
Laporan praktikum Algoritma dan Pemrograman pertemuan 15Laporan praktikum Algoritma dan Pemrograman pertemuan 15
Laporan praktikum Algoritma dan Pemrograman pertemuan 15Ekha Cahya Nugraha
 

La actualidad más candente (20)

[PBO] Pertemuan 1 (praktik) - Pengenalan java
[PBO] Pertemuan 1 (praktik) - Pengenalan java[PBO] Pertemuan 1 (praktik) - Pengenalan java
[PBO] Pertemuan 1 (praktik) - Pengenalan java
 
Modul praktikum PBO
Modul praktikum PBOModul praktikum PBO
Modul praktikum PBO
 
[PBO] Pertemuan 10 - Generic Programming & Collection
[PBO] Pertemuan 10 - Generic Programming & Collection[PBO] Pertemuan 10 - Generic Programming & Collection
[PBO] Pertemuan 10 - Generic Programming & Collection
 
Modul oop with java application mauludin
Modul oop with java application   mauludinModul oop with java application   mauludin
Modul oop with java application mauludin
 
Laporan Modul 1 Praktikum Pemrograman Berbasis Objek
Laporan Modul 1 Praktikum Pemrograman Berbasis ObjekLaporan Modul 1 Praktikum Pemrograman Berbasis Objek
Laporan Modul 1 Praktikum Pemrograman Berbasis Objek
 
Laporan PBO pratikum 2
Laporan PBO pratikum 2Laporan PBO pratikum 2
Laporan PBO pratikum 2
 
Pemrograman Berorientasi Objek "Pengenalan JAVA"
Pemrograman Berorientasi Objek "Pengenalan JAVA"Pemrograman Berorientasi Objek "Pengenalan JAVA"
Pemrograman Berorientasi Objek "Pengenalan JAVA"
 
[PBO] Pertemuan 3 - Pengenalan Pemrograman Berbasis Objek
[PBO] Pertemuan 3 - Pengenalan Pemrograman Berbasis Objek[PBO] Pertemuan 3 - Pengenalan Pemrograman Berbasis Objek
[PBO] Pertemuan 3 - Pengenalan Pemrograman Berbasis Objek
 
[RPL2] Class Diagram dan Konsep Object Oriented (1)
[RPL2] Class Diagram dan Konsep Object Oriented (1)[RPL2] Class Diagram dan Konsep Object Oriented (1)
[RPL2] Class Diagram dan Konsep Object Oriented (1)
 
Pemrograman Berorientasi Objek "Pengenalan Dasar Pemrograman JAVA"
Pemrograman Berorientasi Objek "Pengenalan Dasar Pemrograman JAVA"Pemrograman Berorientasi Objek "Pengenalan Dasar Pemrograman JAVA"
Pemrograman Berorientasi Objek "Pengenalan Dasar Pemrograman JAVA"
 
Pewarisan, Polimorfisme, dan Interface
Pewarisan, Polimorfisme, dan InterfacePewarisan, Polimorfisme, dan Interface
Pewarisan, Polimorfisme, dan Interface
 
Modul Object Oriented Programming
Modul Object Oriented ProgrammingModul Object Oriented Programming
Modul Object Oriented Programming
 
Modul PBO Bab-07 - Enkapsulasi (Encapsulation)
Modul PBO Bab-07 - Enkapsulasi (Encapsulation)Modul PBO Bab-07 - Enkapsulasi (Encapsulation)
Modul PBO Bab-07 - Enkapsulasi (Encapsulation)
 
02. prak.-pemrograman-berorientasi-objek
02. prak.-pemrograman-berorientasi-objek02. prak.-pemrograman-berorientasi-objek
02. prak.-pemrograman-berorientasi-objek
 
Resume tentang oop dalam php
Resume tentang oop dalam phpResume tentang oop dalam php
Resume tentang oop dalam php
 
Laporan praktikum Algoritma dan Pemrograman pertemuan 11
Laporan praktikum Algoritma dan Pemrograman pertemuan 11Laporan praktikum Algoritma dan Pemrograman pertemuan 11
Laporan praktikum Algoritma dan Pemrograman pertemuan 11
 
Resume tentang oop dalam php
Resume tentang oop dalam phpResume tentang oop dalam php
Resume tentang oop dalam php
 
[PBO] Pertemuan 4 - Kontruktor Destruktor
[PBO] Pertemuan 4 - Kontruktor Destruktor[PBO] Pertemuan 4 - Kontruktor Destruktor
[PBO] Pertemuan 4 - Kontruktor Destruktor
 
Tugas aplinet meresum
Tugas aplinet meresumTugas aplinet meresum
Tugas aplinet meresum
 
Laporan praktikum Algoritma dan Pemrograman pertemuan 15
Laporan praktikum Algoritma dan Pemrograman pertemuan 15Laporan praktikum Algoritma dan Pemrograman pertemuan 15
Laporan praktikum Algoritma dan Pemrograman pertemuan 15
 

Similar a BAB 1 PBO C++ Struktur

Laporan praktikum modul vii
Laporan praktikum modul viiLaporan praktikum modul vii
Laporan praktikum modul viiDevi Apriansyah
 
Tugas 4 (individu) rekayasa web 0316
Tugas 4 (individu) rekayasa web 0316Tugas 4 (individu) rekayasa web 0316
Tugas 4 (individu) rekayasa web 0316septianarul
 
JENI-Intro1-Bab09-Bekerja Dengan Java Class Library.pdf
JENI-Intro1-Bab09-Bekerja Dengan Java Class Library.pdfJENI-Intro1-Bab09-Bekerja Dengan Java Class Library.pdf
JENI-Intro1-Bab09-Bekerja Dengan Java Class Library.pdfJurnal IT
 
Kelas dan objek
Kelas  dan objekKelas  dan objek
Kelas dan objekroy naldo
 
Pemograman berorientasi obyek kelompok 6
Pemograman berorientasi obyek kelompok 6Pemograman berorientasi obyek kelompok 6
Pemograman berorientasi obyek kelompok 6ゴースト アノン
 
Pertemuan 1
Pertemuan 1Pertemuan 1
Pertemuan 1zisgoo
 
PRESENTASI DATA ANALYS.pptx
PRESENTASI DATA ANALYS.pptxPRESENTASI DATA ANALYS.pptx
PRESENTASI DATA ANALYS.pptxEdiSum1
 
Konsep Oop
Konsep OopKonsep Oop
Konsep Oopformatik
 
Tipe Data pada Bahasa Java
Tipe Data pada Bahasa JavaTipe Data pada Bahasa Java
Tipe Data pada Bahasa JavaAs Faizin
 
Fathoni m bahan ajar_if2018_prak.struktur data
Fathoni m bahan ajar_if2018_prak.struktur dataFathoni m bahan ajar_if2018_prak.struktur data
Fathoni m bahan ajar_if2018_prak.struktur dataSTMIK
 
Makalah array
Makalah arrayMakalah array
Makalah arrayAnanda II
 
APBO Pertemuan Rev01.pptx
APBO Pertemuan Rev01.pptxAPBO Pertemuan Rev01.pptx
APBO Pertemuan Rev01.pptxSamso20
 
OOP - Kelas dan Objek
OOP - Kelas dan ObjekOOP - Kelas dan Objek
OOP - Kelas dan ObjekKuliahKita
 
OOP - Kelas dan Objek
OOP - Kelas dan ObjekOOP - Kelas dan Objek
OOP - Kelas dan ObjekKuliahKita
 

Similar a BAB 1 PBO C++ Struktur (20)

Laporan praktikum modul vii
Laporan praktikum modul viiLaporan praktikum modul vii
Laporan praktikum modul vii
 
Materi delphi
Materi delphiMateri delphi
Materi delphi
 
Tugas 4 (individu) rekayasa web 0316
Tugas 4 (individu) rekayasa web 0316Tugas 4 (individu) rekayasa web 0316
Tugas 4 (individu) rekayasa web 0316
 
JENI-Intro1-Bab09-Bekerja Dengan Java Class Library.pdf
JENI-Intro1-Bab09-Bekerja Dengan Java Class Library.pdfJENI-Intro1-Bab09-Bekerja Dengan Java Class Library.pdf
JENI-Intro1-Bab09-Bekerja Dengan Java Class Library.pdf
 
Kelas dan objek
Kelas  dan objekKelas  dan objek
Kelas dan objek
 
Belajar Python.docx
Belajar Python.docxBelajar Python.docx
Belajar Python.docx
 
Pemograman berorientasi obyek kelompok 6
Pemograman berorientasi obyek kelompok 6Pemograman berorientasi obyek kelompok 6
Pemograman berorientasi obyek kelompok 6
 
Apsi 2
Apsi 2Apsi 2
Apsi 2
 
Pertemuan 1
Pertemuan 1Pertemuan 1
Pertemuan 1
 
PRESENTASI DATA ANALYS.pptx
PRESENTASI DATA ANALYS.pptxPRESENTASI DATA ANALYS.pptx
PRESENTASI DATA ANALYS.pptx
 
Konsep Oop
Konsep OopKonsep Oop
Konsep Oop
 
Tipe Data pada Bahasa Java
Tipe Data pada Bahasa JavaTipe Data pada Bahasa Java
Tipe Data pada Bahasa Java
 
Fathoni m bahan ajar_if2018_prak.struktur data
Fathoni m bahan ajar_if2018_prak.struktur dataFathoni m bahan ajar_if2018_prak.struktur data
Fathoni m bahan ajar_if2018_prak.struktur data
 
Makalah array
Makalah arrayMakalah array
Makalah array
 
Pertemuan 6 Rekayasa Perangkat Lunak
Pertemuan 6 Rekayasa Perangkat LunakPertemuan 6 Rekayasa Perangkat Lunak
Pertemuan 6 Rekayasa Perangkat Lunak
 
APBO Pertemuan Rev01.pptx
APBO Pertemuan Rev01.pptxAPBO Pertemuan Rev01.pptx
APBO Pertemuan Rev01.pptx
 
31322 2 class & object
31322 2 class & object31322 2 class & object
31322 2 class & object
 
OOP - Kelas dan Objek
OOP - Kelas dan ObjekOOP - Kelas dan Objek
OOP - Kelas dan Objek
 
OOP - Kelas dan Objek
OOP - Kelas dan ObjekOOP - Kelas dan Objek
OOP - Kelas dan Objek
 
4_Class Diagram.pdf
4_Class Diagram.pdf4_Class Diagram.pdf
4_Class Diagram.pdf
 

Último

OPTIMALISASI KOMUNITAS BELAJAR DI SEKOLAH.pptx
OPTIMALISASI KOMUNITAS BELAJAR DI SEKOLAH.pptxOPTIMALISASI KOMUNITAS BELAJAR DI SEKOLAH.pptx
OPTIMALISASI KOMUNITAS BELAJAR DI SEKOLAH.pptxDedeRosza
 
MODUL PENDIDIKAN PANCASILA KELAS 6 KURIKULUM MERDEKA.pdf
MODUL PENDIDIKAN PANCASILA KELAS 6 KURIKULUM MERDEKA.pdfMODUL PENDIDIKAN PANCASILA KELAS 6 KURIKULUM MERDEKA.pdf
MODUL PENDIDIKAN PANCASILA KELAS 6 KURIKULUM MERDEKA.pdfAndiCoc
 
MODUL AJAR IPAS KELAS 3 KURIKULUM MERDEKA.pdf
MODUL AJAR IPAS KELAS 3 KURIKULUM MERDEKA.pdfMODUL AJAR IPAS KELAS 3 KURIKULUM MERDEKA.pdf
MODUL AJAR IPAS KELAS 3 KURIKULUM MERDEKA.pdfAndiCoc
 
SOAL PUBLIC SPEAKING UNTUK PEMULA PG & ESSAY
SOAL PUBLIC SPEAKING UNTUK PEMULA PG & ESSAYSOAL PUBLIC SPEAKING UNTUK PEMULA PG & ESSAY
SOAL PUBLIC SPEAKING UNTUK PEMULA PG & ESSAYNovitaDewi98
 
PELAKSANAAN (dgn PT SBI) + Link2 Materi Pelatihan _"Teknik Perhitungan TKDN, ...
PELAKSANAAN (dgn PT SBI) + Link2 Materi Pelatihan _"Teknik Perhitungan TKDN, ...PELAKSANAAN (dgn PT SBI) + Link2 Materi Pelatihan _"Teknik Perhitungan TKDN, ...
PELAKSANAAN (dgn PT SBI) + Link2 Materi Pelatihan _"Teknik Perhitungan TKDN, ...Kanaidi ken
 
TEKNIK MENJAWAB RUMUSAN SPM 2022 - UNTUK MURID.pptx
TEKNIK MENJAWAB RUMUSAN SPM 2022 - UNTUK MURID.pptxTEKNIK MENJAWAB RUMUSAN SPM 2022 - UNTUK MURID.pptx
TEKNIK MENJAWAB RUMUSAN SPM 2022 - UNTUK MURID.pptxMOHDAZLANBINALIMoe
 
PPT Mean Median Modus data tunggal .pptx
PPT Mean Median Modus data tunggal .pptxPPT Mean Median Modus data tunggal .pptx
PPT Mean Median Modus data tunggal .pptxDEAAYUANGGREANI
 
Regresi Linear Kelompok 1 XI-10 revisi (1).pptx
Regresi Linear Kelompok 1 XI-10 revisi (1).pptxRegresi Linear Kelompok 1 XI-10 revisi (1).pptx
Regresi Linear Kelompok 1 XI-10 revisi (1).pptxRizalAminulloh2
 
CAPACITY BUILDING Materi Saat di Lokakarya 7
CAPACITY BUILDING Materi Saat di Lokakarya 7CAPACITY BUILDING Materi Saat di Lokakarya 7
CAPACITY BUILDING Materi Saat di Lokakarya 7IwanSumantri7
 
Program Kerja Public Relations - Perencanaan
Program Kerja Public Relations - PerencanaanProgram Kerja Public Relations - Perencanaan
Program Kerja Public Relations - PerencanaanAdePutraTunggali
 
BAHAN PAPARAN UU DESA NOMOR 3 TAHUN 2024
BAHAN PAPARAN UU DESA NOMOR 3 TAHUN 2024BAHAN PAPARAN UU DESA NOMOR 3 TAHUN 2024
BAHAN PAPARAN UU DESA NOMOR 3 TAHUN 2024ssuser0bf64e
 
AKSI NYATA TOPIK 1 MERDEKA BELAJAR. PPTX
AKSI NYATA TOPIK 1 MERDEKA BELAJAR. PPTXAKSI NYATA TOPIK 1 MERDEKA BELAJAR. PPTX
AKSI NYATA TOPIK 1 MERDEKA BELAJAR. PPTXIksanSaputra6
 
7.PPT TENTANG TUGAS Keseimbangan-AD-AS .pptx
7.PPT TENTANG TUGAS Keseimbangan-AD-AS .pptx7.PPT TENTANG TUGAS Keseimbangan-AD-AS .pptx
7.PPT TENTANG TUGAS Keseimbangan-AD-AS .pptxSusanSanti20
 
HAK DAN KEWAJIBAN WARGA NEGARA ppkn i.ppt
HAK DAN KEWAJIBAN WARGA NEGARA ppkn i.pptHAK DAN KEWAJIBAN WARGA NEGARA ppkn i.ppt
HAK DAN KEWAJIBAN WARGA NEGARA ppkn i.pptnabilafarahdiba95
 
DAFTAR PPPK GURU KABUPATEN PURWOREJO TAHUN 2024
DAFTAR PPPK GURU KABUPATEN PURWOREJO TAHUN 2024DAFTAR PPPK GURU KABUPATEN PURWOREJO TAHUN 2024
DAFTAR PPPK GURU KABUPATEN PURWOREJO TAHUN 2024RoseMia3
 
TUGAS RUANG KOLABORASI 1.3 PRAKARSA PERUBAHAN
TUGAS RUANG KOLABORASI 1.3 PRAKARSA PERUBAHANTUGAS RUANG KOLABORASI 1.3 PRAKARSA PERUBAHAN
TUGAS RUANG KOLABORASI 1.3 PRAKARSA PERUBAHANwawan479953
 
Materi Sosialisasi US 2024 Sekolah Dasar pptx
Materi Sosialisasi US 2024 Sekolah Dasar pptxMateri Sosialisasi US 2024 Sekolah Dasar pptx
Materi Sosialisasi US 2024 Sekolah Dasar pptxSaujiOji
 
Tim Yang Lolos Pendanaan Hibah Kepedulian pada Masyarakat UI 2024
Tim Yang Lolos Pendanaan Hibah Kepedulian pada Masyarakat  UI 2024Tim Yang Lolos Pendanaan Hibah Kepedulian pada Masyarakat  UI 2024
Tim Yang Lolos Pendanaan Hibah Kepedulian pada Masyarakat UI 2024editwebsitesubdit
 
RENCANA & Link2 Materi Pelatihan_ "Teknik Perhitungan TKDN, BMP, Preferensi H...
RENCANA & Link2 Materi Pelatihan_ "Teknik Perhitungan TKDN, BMP, Preferensi H...RENCANA & Link2 Materi Pelatihan_ "Teknik Perhitungan TKDN, BMP, Preferensi H...
RENCANA & Link2 Materi Pelatihan_ "Teknik Perhitungan TKDN, BMP, Preferensi H...Kanaidi ken
 
vIDEO kelayakan berita untuk mahasiswa.ppsx
vIDEO kelayakan berita untuk mahasiswa.ppsxvIDEO kelayakan berita untuk mahasiswa.ppsx
vIDEO kelayakan berita untuk mahasiswa.ppsxsyahrulutama16
 

Último (20)

OPTIMALISASI KOMUNITAS BELAJAR DI SEKOLAH.pptx
OPTIMALISASI KOMUNITAS BELAJAR DI SEKOLAH.pptxOPTIMALISASI KOMUNITAS BELAJAR DI SEKOLAH.pptx
OPTIMALISASI KOMUNITAS BELAJAR DI SEKOLAH.pptx
 
MODUL PENDIDIKAN PANCASILA KELAS 6 KURIKULUM MERDEKA.pdf
MODUL PENDIDIKAN PANCASILA KELAS 6 KURIKULUM MERDEKA.pdfMODUL PENDIDIKAN PANCASILA KELAS 6 KURIKULUM MERDEKA.pdf
MODUL PENDIDIKAN PANCASILA KELAS 6 KURIKULUM MERDEKA.pdf
 
MODUL AJAR IPAS KELAS 3 KURIKULUM MERDEKA.pdf
MODUL AJAR IPAS KELAS 3 KURIKULUM MERDEKA.pdfMODUL AJAR IPAS KELAS 3 KURIKULUM MERDEKA.pdf
MODUL AJAR IPAS KELAS 3 KURIKULUM MERDEKA.pdf
 
SOAL PUBLIC SPEAKING UNTUK PEMULA PG & ESSAY
SOAL PUBLIC SPEAKING UNTUK PEMULA PG & ESSAYSOAL PUBLIC SPEAKING UNTUK PEMULA PG & ESSAY
SOAL PUBLIC SPEAKING UNTUK PEMULA PG & ESSAY
 
PELAKSANAAN (dgn PT SBI) + Link2 Materi Pelatihan _"Teknik Perhitungan TKDN, ...
PELAKSANAAN (dgn PT SBI) + Link2 Materi Pelatihan _"Teknik Perhitungan TKDN, ...PELAKSANAAN (dgn PT SBI) + Link2 Materi Pelatihan _"Teknik Perhitungan TKDN, ...
PELAKSANAAN (dgn PT SBI) + Link2 Materi Pelatihan _"Teknik Perhitungan TKDN, ...
 
TEKNIK MENJAWAB RUMUSAN SPM 2022 - UNTUK MURID.pptx
TEKNIK MENJAWAB RUMUSAN SPM 2022 - UNTUK MURID.pptxTEKNIK MENJAWAB RUMUSAN SPM 2022 - UNTUK MURID.pptx
TEKNIK MENJAWAB RUMUSAN SPM 2022 - UNTUK MURID.pptx
 
PPT Mean Median Modus data tunggal .pptx
PPT Mean Median Modus data tunggal .pptxPPT Mean Median Modus data tunggal .pptx
PPT Mean Median Modus data tunggal .pptx
 
Regresi Linear Kelompok 1 XI-10 revisi (1).pptx
Regresi Linear Kelompok 1 XI-10 revisi (1).pptxRegresi Linear Kelompok 1 XI-10 revisi (1).pptx
Regresi Linear Kelompok 1 XI-10 revisi (1).pptx
 
CAPACITY BUILDING Materi Saat di Lokakarya 7
CAPACITY BUILDING Materi Saat di Lokakarya 7CAPACITY BUILDING Materi Saat di Lokakarya 7
CAPACITY BUILDING Materi Saat di Lokakarya 7
 
Program Kerja Public Relations - Perencanaan
Program Kerja Public Relations - PerencanaanProgram Kerja Public Relations - Perencanaan
Program Kerja Public Relations - Perencanaan
 
BAHAN PAPARAN UU DESA NOMOR 3 TAHUN 2024
BAHAN PAPARAN UU DESA NOMOR 3 TAHUN 2024BAHAN PAPARAN UU DESA NOMOR 3 TAHUN 2024
BAHAN PAPARAN UU DESA NOMOR 3 TAHUN 2024
 
AKSI NYATA TOPIK 1 MERDEKA BELAJAR. PPTX
AKSI NYATA TOPIK 1 MERDEKA BELAJAR. PPTXAKSI NYATA TOPIK 1 MERDEKA BELAJAR. PPTX
AKSI NYATA TOPIK 1 MERDEKA BELAJAR. PPTX
 
7.PPT TENTANG TUGAS Keseimbangan-AD-AS .pptx
7.PPT TENTANG TUGAS Keseimbangan-AD-AS .pptx7.PPT TENTANG TUGAS Keseimbangan-AD-AS .pptx
7.PPT TENTANG TUGAS Keseimbangan-AD-AS .pptx
 
HAK DAN KEWAJIBAN WARGA NEGARA ppkn i.ppt
HAK DAN KEWAJIBAN WARGA NEGARA ppkn i.pptHAK DAN KEWAJIBAN WARGA NEGARA ppkn i.ppt
HAK DAN KEWAJIBAN WARGA NEGARA ppkn i.ppt
 
DAFTAR PPPK GURU KABUPATEN PURWOREJO TAHUN 2024
DAFTAR PPPK GURU KABUPATEN PURWOREJO TAHUN 2024DAFTAR PPPK GURU KABUPATEN PURWOREJO TAHUN 2024
DAFTAR PPPK GURU KABUPATEN PURWOREJO TAHUN 2024
 
TUGAS RUANG KOLABORASI 1.3 PRAKARSA PERUBAHAN
TUGAS RUANG KOLABORASI 1.3 PRAKARSA PERUBAHANTUGAS RUANG KOLABORASI 1.3 PRAKARSA PERUBAHAN
TUGAS RUANG KOLABORASI 1.3 PRAKARSA PERUBAHAN
 
Materi Sosialisasi US 2024 Sekolah Dasar pptx
Materi Sosialisasi US 2024 Sekolah Dasar pptxMateri Sosialisasi US 2024 Sekolah Dasar pptx
Materi Sosialisasi US 2024 Sekolah Dasar pptx
 
Tim Yang Lolos Pendanaan Hibah Kepedulian pada Masyarakat UI 2024
Tim Yang Lolos Pendanaan Hibah Kepedulian pada Masyarakat  UI 2024Tim Yang Lolos Pendanaan Hibah Kepedulian pada Masyarakat  UI 2024
Tim Yang Lolos Pendanaan Hibah Kepedulian pada Masyarakat UI 2024
 
RENCANA & Link2 Materi Pelatihan_ "Teknik Perhitungan TKDN, BMP, Preferensi H...
RENCANA & Link2 Materi Pelatihan_ "Teknik Perhitungan TKDN, BMP, Preferensi H...RENCANA & Link2 Materi Pelatihan_ "Teknik Perhitungan TKDN, BMP, Preferensi H...
RENCANA & Link2 Materi Pelatihan_ "Teknik Perhitungan TKDN, BMP, Preferensi H...
 
vIDEO kelayakan berita untuk mahasiswa.ppsx
vIDEO kelayakan berita untuk mahasiswa.ppsxvIDEO kelayakan berita untuk mahasiswa.ppsx
vIDEO kelayakan berita untuk mahasiswa.ppsx
 

BAB 1 PBO C++ Struktur

  • 1. BAB I STRUKTUR 1.1. TUJUAN Tujuan pembelajaran dalam bab ini yaitu: 1. Mengetahui pengertian dan pengaksesan struktur 2. Mampu mengelompokkan sejumlah data dengan tipe yang berlainan. 3. Mengetahui pengertian kelas dan cara pengaksesannya. 1.2.DASAR TEORI 1.2.1. Struktur Struktur adalah pengelompokan variabel-variabel yang bernaung dalam satu nama yang sama. Variabel-variabel yang membentuk suatu struktur, selanjutnya disebut sebagaielemen dari struktur atau field. Dengan demikian dimungkinkan suatu struktur dapat berisielemen-elemen data berbeda tipe seperti char, int, float, double, dan lain-lain. Tipe data struct secara umum adalah untuk menyimpan paket (sekumpulan) data ke dalam satu buah nama variabel saja. Kumpulan data tersebut diikat sedemikian rupa menjadi satu. Kumpulan data di dalam sebuah struct bisa mempunyai tipe data dasar yang beraneka ragam. Kumpulan data dalam sebuah struct sangat dianjurkan membentuk sebuah kesatuan makna berkaitan dengan nama struct-nya. Misal, jika struct-nya bernama segitiga maka isi struct-nya antara lain: alas, tinggi, luas dan keliling. Konsep yang lebih lanjut dapat juga dalam sebuah struct terdapat struct lagi (nested struct). 1.2.2. Struct untuk Array Array adalah struktur data yang terdiri dari item berurutan, di mana semua itemnya bertipe sama. Dalam Java, item dalam array 1
  • 2. 2 selalu dinomori dari nol hingga nilai maksimum tertentu, yang nilainya ditentukan pada saat array tersebut dibuat. Misalnya, suatu array berisi 100 bilangan bulat, yang dinomori dari nol hingga 99. Item dalam array bisa bertipe salah satu tipe Java primitif. Item-item ini bisa juga berupa referensi ke objek, sehingga, misalnya kita bisa membuat array yang berisi semua komponen dalam applet.Bagian ini akan membahas bagaimana array dibuat dan digunakan pada Java. Juga mencakup kelas standar java.util.ArrayList. Suatu objek bertipe ArrayList sangat mirip dengan array dari Object, akan tetapi ia bisa bertambah ukuran secara dinamis. 1.2.3. Analogi Struktur dan Kelas Dalam paradigma pemrograman berorientasi obyek dikenal kelas dan obyek. Kelas merupakan blue print dari obyek – obyek yang akan dibuat. Analogi kelas dan obyek seperti rancangan model rumah dan pembangunan rumah-rumah, adapun proses pembuatan obyek dari kelas dikenal dengan instantiasi. Pembuatan obyek dari kelas dengan instantiasi. Sebagai contoh kita ambil kelas manusia. Kelas manusia mempunyai atribut : nama. Selain itu kelas manusia juga mempunyai method : tampilkan nama, kerja, makan. Method Abstrac Method Abstrac adalah method yang belum mempunyai implementasi. Pendefinisian method abstract adalah dengan menambahkan keyword abstract, seperti contoh dibawah ini : Abstract void berangkat_kerja (); Sebuah kelas menyerupai sebuah struktur yang merupakan tipe data sendiri, misalkan tipe data titik yang terdiri dari koordinat x dan y. Bahasa Java telah menggunakan sebuah kelas untuk
  • 3. 3 menyatakan tipe data titik karena bahasa pemrograman Java merupakan bahasa pemrograman berorientasi objek murni sehingga tidak mengenal struktur tapi mengenal apa yang disebut dengan kelas. Perbedaan sebuah kelas dengan sebuah struktur adalah sebuah kelas dapat berdiri sendiri dan dapat digunakan untuk berbagai keperluan kelas-kelas yang lain, sedangkan sebuah struktur tidak dapat berdiri sendiri. Sebuah kelas lebih fleksibel untuk digunakan oleh kelas lain tanpa harus membongkar kode program utama, sedangkan jika digunakan struktur maka kode program harus dibongkar unuk disalin bagian strukturnya ke kode program utama yang lain. Sebuah file dapat terdiri dari berbagai kelas, namun biasanya pada bahasa pemrograman Java sebuah file hanya terdiri dari satu kelas yang disimpan dengan nama kelas, misal file List.java berisi kelas List. Namun jika kelas yang dibuat misalnya public class nama_kelas, maka kelas itu harus disimpan dalam satu file hanya untuk satu kelas. Setelah dilakukan kompilasi maka pada Java akan ada sebuah file .class yang berisi bytecode dari setiap kelas. Jika sebuah file terdiri dari dua kelas maka setelah dikompilasi akan dihasilkan dua buah file .class yang nantinya akan dibaca oleh interpreter Java saat program dieksekusi. Sebuah kelas saat program dieksekusi dan perintah new dijalankan, maka akan dibuat sebuah objek. Objek adalah elemen pada saat runtime yang akan diciptakan, dimanipulasi dan dihancurkan saat eksekusi sehingga sebuah objek hanya ada saat sebuah program dieksekusi, jika masih dalam bentuk kode, disebut sebagai kelas jadi pada saat runtime (saat sebuah program dieksekusi), yang kita punya adalah objek, di dalam teks program yang kita lihat hanyalah kelas.
  • 4. 4 1.3. ANALISA PRAKTIKUM 1.3.1. Struktur Struktur bermanfaat untuk mengelompokkan sejumlah data dengan tipe yang berlainan. Contoh deklarasi struktur : 1. struct mahasiswa { 2. int nim; 3. char nama[50]; 4. char alamat[75]; }; Keterangan : 1. Struct adalah definisi dari struktur yang dimana mahasiswa menjadi bagian dari strukturnya. 2. Untuk nim memakai int karena nim berupa angka jadi memakai tipe data integer. 3. Untuk nama memakai char karena nama berupa huruf jadi yang dipakai adalah tipe data karakter dengan nilai 50 karena sebagai batasan kalau nama dapat dimasukkan sampai 50 huruf. 4. Sama seperti char nama. Alamat pun memakai tipe data char dengan nilai 75 sebagai pendeklarasiaannya. 1.3.2. Pengaksesan Struktur 1. Bentuk 1 1 #include<iostream.h> 2 #include<conio.h> 3 #include<string.h> 4 void main() {
  • 5. 5 5 struct mahasiswa { 6 int nim; 7 char nama[50]; 8 char alamat[75]; }; 9 mahasiswa satu; 10 satu.nim=8; 11 strcpy(satu.nama,"Mahendra Data"); strcpy(satu.alamat,"Jl. Manyar No.5 Semarang"); 12 cout<<satu.nim<<" "<<satu.nama<<" "<<satu.alamat<<endl<<end 13 getche(); } Dan hasilnya adalah : Gambar 1.1. Hasil eksekusi struktur bentuk 1 Keterangan : 1. Untuk no. 1 hingga No. 3 adalah header dari file program. 2. No. 4 adalah void main yang merupakan void utama yang merupakan fungsi utama dari program. 3. No. 5 struct mahasiswa untuk pendeklarasian dengan jenis mahasiswa.
  • 6. 6 4. No. 6 int nim memakai int karena nim berupa angka jadi memakai tipe data integer sebagai pendeklarasiaannya. 5. No. 7 char nama[50]maksudnya untuk nama memakai char karena nama berupa huruf jadi yang dipakai adalah tipe data karakter dengan nilai 50 karena sebagai batasan kalau nama dapat dimasukkan sampai 50 huruf. 6. No. 8 char alamat[75]maksudnya Sama seperti char nama. Alamat pun memakai tipe data char dengan nilai 75 sebagai pendeklarasiaannya. 7. No. 9 mahasiswa satumaksudnya adalah objeknya. 8. No. 10 satu.nim=8maksudnya adalah sebagai keterangan dari objek. 9. No. 11 strcpymempunyai fungsi untuk menginputkan data yang dideklarasikan didalamnya. 10. No. 12 cout<<perintahuntuk menampilkan program dalam hasil eksekusi. 11. No. 13 getche();bermaksud untuk fungsi balik program dalam borland c++ dan jika memakai turbo c++ getche()tidak diperlukan. 2. Bentuk 2 #include<iostream.h> #include<conio.h> 1 #include<string.h> struct mahasiswa 2 { int nim; char nama[50]; 3 char alamat[75]; }; void main() 4
  • 7. 7 { mahasiswa satu; 5 satu.nim=8; 6 strcpy(satu.nama,"Mahendra Data"); strcpy(satu.alamat,"Jl. Manyar No.5 Semarang"); 7 cout<<satu.nim<<" "<<satu.nama<<" "<<satu.alamat<<endl<<endl; 8 getche(); } Dan hasil eksekusinya adalah : Gambar 1.2. Hasil eksekusi struktur bentuk 2. Keterangan : 1. Untuk no. 1 adalah header dari file program. 2. struct mahasiswa bermaksud untuk mendeklarasikan struktur mahasiswa. 3. Inputan pada struct mahasiswa yang akan ditampilkan dalam hasil eksekusi. Dimana yang digunakan adalah script char (untuk tipe data karakter) int (tipe data bilangan bulat) . 4. void main yang merupakan void utama yang merupakan fungsi utama dari program. 5. mahasiswa satumaksudnya adalah objeknya.
  • 8. 8 6. satu.nim=8maksudnya adalah sebagai keterangan dari objek. 7. strcpymempunyai fungsi untuk menginputkan data yang dideklarasikan didalamnya. 8. cout<<perintah untuk menampilkan program dalam hasil eksekusi. 3. Bentuk 3 #include<iostream.h> #include<conio.h> 1 #include<string.h> struct mahasiswa 2 { int nim; char nama[50]; 3 char alamat[75]; }satu; 4 void main() 5 { satu.nim=8; strcpy(satu.nama,"Mahendra Data"); strcpy(satu.alamat,"Jl. Manyar No.5 Semarang"); cout<<satu.nim<<" "<<satu.alamat<<endl<<endl; getche(); } "<<satu.nama<<"
  • 9. 9 Dan hasilnya adalah : Gambar 1.3. Hasil eksekusi struktur bagian 3. Keterangan : 1. Untuk no. 1 adalah header dari file program. 2. Pada scirpt No. 2 struct mahasiswa bermaksud untuk mendeklarasikan struktur mahasiswa. 3. Script No. 3 Inputan pada struct mahasiswa yang akan ditampilkan dalam hasil eksekusi. 4. No. 4, satu;merupakan inisialisasi. 5. No. 5, void main yang merupakan void utama yang merupakan fungsi utama dari program. 4. Bentuk 4 1 #include<iostream.h> #include<conio.h> #include<string.h> 2 void main() { 3 struct mahasiswa { 4 char nim[8]; char nama[10]; int umur; };
  • 10. 10 5 mahasiswa amir={"9651001","Amir",20}; mahasiswa amat={"9651002","Amat",22}; mahasiswa tuti={"9651003","Tuti",19}; cout<<"Mahasiswa pertama : "<<amir.nim<<endl; 6 cout<<"Mahasiswa pertama : "<<amir.nama<<endl; cout<<"Mahasiswa pertama : "<<amir.umur<<endl; cout<<endl; cout<<"Mahasiswa kedua : "<<amat.nim<<endl; cout<<"Mahasiswa kedua : "<<amat.nama<<endl; cout<<"Mahasiswa kedua : "<<amat.umur<<endl<<endl; getche(); } Dan hasilnya adalah : Gambar 1.4. Hasil eksekusi struktur bentuk 4
  • 11. 11 Keterangan : 1. Untuk no. 1 adalah header dari file program. 2. No.2, void main yang merupakan void utama yang merupakan fungsi utama dari program. 3. No. 3, struct mahasiswa bermaksud untuk mendeklarasikan struktur mahasiswa. 4. No. 4, Inputan pada strcut mahasiswa yang akan ditampilkan dalam hasil eksekusi. 5. No. 5, Input yang akan ditampilkan saat fungsikarakternya dipanggil pada saat eksekusi berlangsung. 6. No. 6, cout<<perintahuntuk menampilkan program dalam hasil eksekusi. 1.3.3. Struct Untuk Array Contoh Source code Struct untuk ARRAY ini adalah seperti berikut : #include<stdio.h> #include<iostream.h> #include<conio.h> 1 #include<string.h> struct orang 2 { char nama[50]; 3 int umur; }; void main() 4 { orang saya[3]; 5 int i,x; 6 for(i=0;i<=2;i++) 7 { cout<<"Nama orang ke "<<(i+1)<<" adalah :";
  • 12. 12 cin>>saya[i].nama; cout<<"Umur orang ke "<<(i+1)<<"adalah :"; cin>>saya[i].umur; 8 } cout<<endl; 9 for(x=0;x<=2;x++) { cout<<"Nama orang ke "<<(x+1)<<"adalah ke "<<(x+1)<<"adalah :"<<saya[x].nama<<endl; cout<<"Umur orang :"<<saya[x].umur<<endl<<endl; } getche(); } Dan hasil eksekusinya adalah : Gambar 1.5. Hasil eksekusi struct untuk array. Keterangan : 1. Untuk no. 1 adalah header dari file program.
  • 13. 13 2. No.2, struct berarti menunjukkan definisi fungsi struktur yang digunakan dalam program tersebut. Dan orang menunjukkan struktur tag-nya. 3. No. 3, Inputan pada strcut orangyang akan dimasukkan dalam hasil eksekusi. 4. No.4, void main yang merupakan void utama yang merupakan fungsi utama dari program. 5. No.5, orang saya[3] hanya sebagai istilah, dan jumlah orangnya ada 3 dan sebagai pendeklarasian tipe data array pada program tersebut. 6. No. 6, i dan x masuk dalam bilangan integer karena masukkannya berupa angka. 7. No. 7, for(i=0;i<=2;i++) yang dimana i=0 adalah nilai awal dari variabel. i<=2 berarti angka masukkan nanti kurang dari 2. Sedangkan i++ sebagai pengatur kenaikan nilai variabel pengendali loop. 8. No.8, cout<<perintahuntuk menampilkan program dalam hasil eksekusi. 9. No.9, cout<<endl;berfungsi agar hasil eksekusi selanjutnya diberi jarak satu enter. 1.3.4. Analogy Struct Dalam Kelas Kelas merupakan struktur dari objek, yang contohnya sebagai berikut : #include<iostream.h> #include<conio.h> 1 #include<string.h> struct buku { 2
  • 14. 14 char judul[35]; char pengarang[25]; 3 int jumlah; }; void main() 4 { clrscr(); 5 buku novel; 6 strcpy(novel.judul,"Meriam Benteng Navarone"); 7 strcpy(novel.pengarang,"Alistair Maclean"); novel.jumlah=12; 8 cout<<novel.judul<<endl; cout<<novel.pengarang<<endl; 9 cout<<novel.jumlah<<endl; getche(); } Dan hasilnya adalah : Gambar 1.6. Hasil eksekusi untuk analogi struktur Keterangan : 1. Untuk no. 1 adalah header dari file program. 2. struct berarti menunjukkan bukumenunjukkan struktur tag-nya. definisi struktur. Dan
  • 15. 15 3. Inputan pada struct buku yang akan dimasukkan dalam hasil eksekusi. 4. void main yang merupakan void utama yang merupakan fungsi utama dari program. 5. clrscratau clear screen berfungsi untuk membersihkan layar. 6. buku novel merupakan objek. 7. strcpymempunyai fungsi untuk menginputkan data yang dideklarasikan didalamnya. 8. novel.jumlah=12;untuk mendefinisikan bahwa jumlah adalah 12. 9. cout<<untuk menampilkan program dalam hasil eksekusi. Dan jika dijadikan kelas, maka hasilnya sebagai berikut : #include<iostream.h> #include<conio.h> 1 #include<string.h> class buku 2 { public: 3 char judul[35]; char pengarang[25]; 4 int jumlah; }; void main() { clrscr(); buku novel; 5
  • 16. 16 strcpy(novel.judul,"Meriam Benteng Navarone"); strcpy(novel.pengarang,"Alistair Maclean"); novel.jumlah=12; cout<<novel.judul<<endl; cout<<novel.pengarang<<endl; cout<<novel.jumlah<<endl<<endl; getche(); } Dan hasil eksekusinya adalah sebagai berikut : Gambar 1.7. Hasil eksekusi dari analogi struktur yang dikadikan kelas Keterangan : 1. Untuk no. 1 adalah header dari file program. 2. class bukuuntuk mendefinisikan jenis kelasnya adalah buku. 3. public:untuk memberikan hak akses secara umum. 4. Inputan pada class buku yang akan dimasukkan dalam hasil eksekusi. 5. void main yang merupakan void utama yang merupakan fungsi utama dari program.
  • 17. 17 1.4. KESIMPULAN Dari percobaan-percobaan diatas maka kita dapat menarik kesimpulan sebagai berikut : 1. Struktur bermanfaat untuk mengelompokkan sejumlah data dengan tipe yang berlainan 2. Struktur mempunyai 4 bentuk yang berbeda tetapi mempunyai hasil eksekusi yang sama. 3. Untuk mengubah analogi struktur menjadi kelas, kita cukup mengganti kode struct menjadi class.