LAPORAN PRAKTIKUM
PEMROGRAMAN BERORIENTASI OBJEK
MODUL 2
INTRO PEMROGRAMAN BERORIENTASI OBJEK
Oleh:
NAMA : NAHILA SHOFIE KIRANA
NIM : 2211110023
KELAS : S1-SD03A
S1 SAINS DATA
INSTITUT TEKNOLOGI TELKOM PURWOKERTO
2024
I. DASAR TEORI
2.1 Tipe Data dan Variabel
Hampir bisa dipastikan bahwa sebuah program selalu membutuhkan lokasi
memori untuk menyimpan data yang sedang diproses. Kita tidak pernah tahu
di lokasi memori mana computer akan meletakkan data dari program Kita.
Kenyataan ini menimbulkan kesulitan bagi Kita untuk mengambil data tersebut
pada saat dibutuhkan. Maka dikembangkan konsep variabel. Setiap variabel
memiliki jenis alokasi memori tersendiri, misalnya bilangan bulat, bilangan
pecahan, karakter, dan sebagainya. Ini sering disebut dengan tipe data.
Secara umum ada tiga bentuk data:
1) Numerik, data yang berbentuk angka atau bilangan. Data numerik bisa
dibagi atas dua kategori :
a. Bilangan bulat (integer), yaitu bilangan yang tidak mengandung angka
pecahan.
b. Bilangan pecahan (float), yaitu bilangan yang mengandung angka
pecahan.
2) Karakter, data yang berbentuk karakter atau deretan karakter. Karakter
bisa dibagi menjadi dua kategori :
a. Karakter tunggal.
b. Deretan karakter.
3) Logika, yaitu tipe data dengan nilai benar (true) atau salah (false).
Pada dasarnya ada dua macam tipe variabel data dalam bahasa Java, yakni:
a. Tipe primitif, meliputi : tipe boolean, tipe numerik (yang meliputi : Byte,
short, int, long, char, float, double) dan tipe karakter (char).
b. Tipe referensi, meliputi tipe variabel data : tipe kelas, tipe array, tipe
interface. Ada pula tipe variabel data khusus yang disebut null types, namun
variabel dalam Java tidak akan memiliki tipe null ini.
Penamaan sebuah variabel dalam Java harus memenuhi aturan sebagai berikut
:
1) Harus terdiri atas sederetan karakter Unicode yang diawali oleh karakter
huruf atau garis bawah. Unicode merupakan sistem pengkodean karakter
yang dapat dibaca oleh berbagai bahasa manusia.
2) Tidak boleh berupa keyword (kata yang dicadangkan), null, atau literal
true/false.
3) Harus unik dalam suatu scope.
Dalam gaya pemrograman dengan Java, biasanya mengikuti format nama
variabel, yaitu:
1) Diawali dengan huruf kecil
2) Jika nama variabel lebih dari satu kata, kata ke-2, ke-3 dan seterusnya
diawali dengan huruf kapital dan ditulis menyatu.
2.2 Konstanta
Variabel dalam Java bisa dijadikan konstanta, sehingga nilainya tidak akan
dapat diubah-ubah dengan mendeklarasikannya sebagai variabel final seperti
contoh :
2.3 Variabel Array
Untuk memudahkan pemahaman mengenai variabel array, digunakan ilustrasi
kotak yang merepresentasikan setiap elemen variabel array. Index adalah
sebuah angka yang menyatakan urutan sebuah elemen pada suatu variabel
array. Karena seluruh kotak memiliki nama yang sama, maka untuk
membedakannya diperlukan suatu cara yaitu dengan memberi nomor urut.
Ibarat deretan rumah pada sebuah jalan, untuk membedakan antara rumah yang
satu dengan rumah yang lain maka setiap rumah diberi nomor unik yang
berbeda antara rumah satu dangan yang lainnya.
2.3.1 Deklarasi Variabel Array
Bentuk umum pendeklarasian variabel array di Java adalah :
Tipe data bisa berupa salah satu dari berbagai tipe data seperti int, long, double
maupun nama kelas; baik kelas standar Java atau kelas buatan Kita sendiri.
Materi kelas tidak akan dibahas dalam modul ini.
Cara pendeklarasian variabel array :
1) Mendeklarasikan variabel array tanpa menyebutkan berapa jumlah
elemen yang diperlukan.
Untuk deklarasi variabel array dengan cara ini, Kita harus menuliskan
di salah satu baris program instruksi untuk memesan jumlah elemen
untuk variabel tersebut. Sebelum terjadi pemesanan jumlah elemen, Kita
tidak bisa menggunakan variabel array ini untuk menyimpan data.
2) Mendeklarasikan variabel array dengan menyebutkan jumlah elemen
yang diperlukan.
Pada saat mendeklarasikan variabel array ini, maka Kita langsung
memesan 5 elemen array yang akan Kita gunakan selanjutnya.
3) Mendeklarasikan variabel array secara otomatis
Variabel array ini memiliki 5 elemen, dan tiap elemen sudah terisi data.
Berbeda dengan cara pendeklarasian yang pertama dan yang kedua.
2.3.2 Mengakses Variabel Array
Mengakses suatu variabel berarti mengisi data ke variabel tersebut atau
mengambil data dari variabel tersebut. Mengakses variabel array berarti Kita
mengakses elemen dari variabel array tersebut.
Untuk mengisi nilai ke variabel array, sebutkan nomor indeks elemen yang
akan diisi dengan nilai.
Untuk mengambil nilai dari variabel array, sebutkan nomor indeks elemen
yang akan Kita ambil isinya
Instruksi di atas akan menjumlahkan isi variabel var1 elemen ke-6 dan ke-10
lalu menyimpan hasilnya ke elemen pertama.
2.3.3 Array 2 Dimensi
Bentuk umum pendeklarasian variabel array dua dimensi di Java adalah :
Pendeklarasian array dua dimensi bentuk Rectangular
Pendeklarasian array dua dimensi bentuk Non-Rectangular
Didalam array dua dimensi terdapat array rectangular dan non-rectangular.
Array dua dimensi secara Rectangular artinya ukuran dimensi array semuanya
sama yakni ukuran indeks pada baris dan kolom sama. Sedangkan Non-
Rectangular artinya membuat array dengan ukuran indeks baris dan kolom yg
tidak sama.
Cara pendeklarasian variabel array dua dimensi sama dengan cara
pendeklarasian variabel array satu dimensi. Mengakses variabel array dua
dimensi, mengisi variabel array dua dimensi, mengambil variabel array dua
dimensi juga sama dengan cara yang berlaku pada variabel array satu dimensi,
yaitu dengan menyebutkan nomor indeks dari elemen. Perbedaanya hanya pada
dua dimensi harus menyebutkan indeks baris dan indeks kolom.
2.4 Operator, Pernyataan Kondisional, dan Perulangan
2.4.1 Operator
Operator-operator yang digunakan pada java ada beberapa jenis diantaranya
yaitu:
1) Operator Aritmatika
2) Operator Relasional
3) Operator Kondisional
4) Operator Shift dan Bitwise
5) Operator Assignment
Operator Aritmatika
Operator ini digunakan pada operasi-operasi aritmatika seperti penjumlahan,
pengurangan, pembagian dll. Operator-operator yang digunakan yaitu :
Operator Relasional
Untuk membandingkan 2 nilai (variabel) atau lebih digunakan operator
Relasional, dimana operator ini akan mengembalikan atau menghasilkan nilai
True atau False. Jenis-jenisnya yaitu:
Operator Kondisional
Operator ini menghasilkan nilai yang sama dengan operator relasional, hanya
saja penggunaanya lebih pada operasi-operasi boolean. Jenisnya yaitu:
Operator Shift dan Bitwise
Dua operator ini digunakan untuk memanipulasi nilai dari bitnya,sehingga
diperoleh nilai yang lain.
Operator Assignment
Operator assignment dalam Java digunakan untuk memberikan sebuah nilai ke
sebuah variabel. Operator assignment hanya berupa ‘=’, namun selain itu
dalam Java dikenal beberapa shortcut assignment operator yang penting, yang
digambarkan dalam table berikut :
2.4.2 Pernyataan Kondisional
Statement if
Statement if memungkinkan sebuah program untuk dapat memilih beberapa
operasi untuk dieksekusi, berdasarkan beberapa pilihan. Dalam bentuknya
yang paling sederhana, bentuk if mengandung sebuah pernyataan tunggal yang
dieksekusi jika ekspresi bersyarat adalah benar.
Bentuk if yang paling sederhana yaitu :
Statement if-else
Untuk melakukan beberapa operasi yang berbeda jika salah satu
ekspresi_kondisional bernilai salah, maka digunakan statement else. Bentuk if-
else memungkinkan kode Java memungkinkan dua alternatif operasi
pemrosesan : satu jika statement bersyarat adalah benar dan satu jika salah.
1) Bentuk statement if – else dengan 2 pilihan operasi pemrosesan.
2) Bentuk statement if– else dengan beberapa pilihan operasi pemrosesan.
Statement Switch
Bentuk umum pernyataan switch adalah sebagai berikut :
Kata-kunci case menandai posisi kode dimana eksekusi diarahkan. Sebuah
konstanta integer atau konstanta karakter/string mengikutinya, atau ekspresi
yang mengevaluasi konstanta integer atau konstanta karakter/string.
Sedangkan kata default ekivalensi dengan kata else pada statement if.
Ekspresi bersyarat
Kita menggunakan sebuah ekspresi bersyarat untuk menggantikan sebuah
bentuk if-else. Sintaks adalah sebagai berikut :
Dalam hal ini, jika exp1 adalah benar, exp2 dieksekusi. Jika exp2 adalah salah,
exp3 dieksekusi
2.4.3 Perulangan
1) While
Selama ekspresi benar while akan dieksekusi.
2) Do
Hasil dari while akan dikembalikan kepada do. Syntax do-while loop
3) For
Pada java terdapat 2 statement yang biasanya digunakan pada setiap
bentuk iterasi diatas. Statement tersebut yaitu : a. break, dapat
menghentikan perulangan walaupun kondisi untuk berhenti belum
terpenuhi. b. continue, dengan statement ini Kita bisa melewatkan
operasi yang dilakukan dalam iterasi sesuai dengan kondisi tertentu.
2.5 Compile Run, dan Jar File
Perlu diketahui bahwa Netbeans merupakan IDE Java yang sudah user friendly,
maka dari itu sebelum mengenal Netbeans perlu mengetahui fundamental dari
Compile, Run, dan Jar File. Pada sub bab 1.2.2 program HelloWorld dapat
dijalankan dengan satu kali klik tombol Run, namun pada dasarnya agar suatu
program Java dalam dijalankan harus melewati tahap compile lalu run dan
untuk mempermudah running program maka dibuatlah Jar File dari program
yang dibuat.
2.5.1 Compile
Compile pada java berarti mengubah source code ke byte codes agar dapat
dipahami oleh Java VM. Jika proses compile berhasil, maka akan terdapat
sebuah berkas file berekstensi class. Java tidak membuat file executeable (.exe)
melainkan [Link]. Jika tidak berhasil, lakukan perbaikan source
code, lalu coba compile kembali Pada contoh program HelloWorld, jalankan
dengan perintah sebagai berikut
2.5.2 Run
Setelah program berhasil di-Compile ke dalam byte code Java, program dapat
dialankan pada Java VM. Untuk menjalankan program Java, jalankan perintah
Java namafile dengan namafile adalah file .class yang akan di-Run (tanpa
ekstensi .class). Pada contoh program HelloWorld, jalankan dengan perintah
sebagai berikut
2.5.3 Jar File
Java Archieve (JAR) merupakan file archieve yang menyimpan source
program Java agar dapat dijalankan secara portable dengan langsung membuka
file Jar secara langsung, namun pada beberapa kasus Output yang hanya
ditampilkan di konsol, Jar File perlu dijalankan di CMD/Terminal. Pada
Netbeans pembuatan Jar File cukup dengan melakukan Build Project atau
menekan tombol F11 dan hasilnya dapat di lihat di direktori penyimpanan
source project, namun dengan menggunakan CMD/Terminal ada beberapa
langkah yang perlu dilakukan.
Pada contoh program HelloWorld, untuk membuat Jar File, perlu dilakukan
Compile terhadap file Java yang dibuat, selanjutnya perlu dilakukan
pembuatan manifest untuk menentukan main class dengan perintah “echo
Main-Class: namamainclass >[Link]”. Pada contoh program HelloWorld,
pastikan directory di CMD/Terminal sudah berpindah ke directory tempat
source program Java lalu jalankan dengan perintah pembuatan manifest
sebagai berikut
Setelah manifest dibuat, maka Jar File dapat dibuat dengan perintah “jar cvfm
[Link] [Link] *.class”. Pada contoh program HelloWorld,
jalankan perintah pembuatan jar dengan perintah sebagai berikut
Lalu jalankan file Jar menggunakan perintah sebagai berikut
Maka Output yang ditampilkan akan sama dengan Run pada program
Netbeans, yaitu tulisan “Hello World”
II. GUIDED
• Class ArayContoh
Output:
Kode di atas mendefinisikan dua jenis array. Pertama, array satu
dimensi nilai menyimpan lima nilai siswa, yaitu {80, 90, 75, 85, 95},
dan program menampilkan elemen pertama (nilai[0]) dan kedua
(nilai[1]), dengan hasil masing-masing 80 dan 90. Kedua, terdapat array
dua dimensi matrix yang berbentuk matriks 3x3, di mana elemen-
elemen diatur dalam baris dan kolom, seperti {1, 2, 3}, {4, 5, 6}, {7, 8,
9}. Program mengakses elemen pada baris ke-2 dan kolom ke-3
(matrix[1][2]), yang bernilai 6, dan menampilkannya.
• Class Konstanta
Output:
Kode di atas menggunakan konstanta PI dengan nilai 3.14159, yang
dideklarasikan menggunakan kata kunci final agar nilainya tidak dapat
diubah. Variabel radius bernilai 5 digunakan untuk menghitung luas
lingkaran dengan rumus PI * radius * radius. Hasil perhitungan
disimpan di variabel luasLingkaran dan ditampilkan bersama nilai
radius.
• Class Operator
Output:
Kode di atas mendemonstrasikan penggunaan operator dalam Java.
Pertama, operator aritmatika (+, -, *, /) digunakan untuk melakukan
penjumlahan, pengurangan, perkalian, dan pembagian antara a = 10 dan
b = 5. Hasilnya ditampilkan.
Selanjutnya, operator relasional (>, ==) membandingkan apakah a lebih
besar dari b dan apakah keduanya sama, dengan hasil berupa true atau
false.
Terakhir, operator kondisional && digunakan untuk memeriksa apakah
a lebih besar dari 5 dan b kurang dari 10, dan hasilnya juga ditampilkan.
• Class PernyataanKondisional
Output:
Kode di atas menggunakan pernyataan kondisional untuk
mengevaluasi nilai. Pertama, dengan if-else statement, program
memeriksa nilai variabel nilai yang bernilai 85. Jika nilai lebih besar
atau sama dengan 90, hasilnya "Nilai A"; jika lebih dari atau sama
dengan 80, hasilnya "Nilai B"; jika lebih dari atau sama dengan 70,
hasilnya "Nilai C"; jika tidak, hasilnya "Nilai D". Dalam kasus ini,
output yang dihasilkan adalah "Nilai B". Selanjutnya, switch statement
digunakan untuk mengevaluasi variabel pilihan yang bernilai 2.
Program mencocokkan nilai ini dengan beberapa kasus; karena cocok
dengan case 2, outputnya adalah "Anda memilih 2".
• TipeDataDanVariabel
Output:
Kode di atas mendemonstrasikan penggunaan tipe data dan variabel
dalam Java. Pertama, beberapa variabel dideklarasikan dengan tipe
yang berbeda: umur bertipe int dengan nilai 21, beratBadan bertipe float
dengan nilai 65.5f, jenisKelamin bertipe char dengan nilai 'L', dan
mahasiswa bertipe boolean dengan nilai true. Selanjutnya, program
menampilkan nilai dari masing-masing variabel menggunakan
[Link], yang mencetak informasi tentang umur, berat
badan, jenis kelamin, dan status mahasiswa ke layar. Dengan demikian,
kode ini memberikan contoh bagaimana mendeklarasikan dan
menampilkan variabel dalam program Java.
III. UNGUIDED
public class NilaiUjian {
public static void main(String[] args) {
// Deklarasi dan Inisialisasi Array untuk Nama dan Nilai Siswa
String[] namaSiswa = {"Aqil", "Brian", "Citra", "Dina", "Eka"};
double[] nilaiSiswa = {85.5, 90.0, 78.5, 88.0, 95.0};
// Menampilkan Nama dan Nilai Siswa
[Link]("Nama dan Nilai Siswa:");
for (int i = 0; i < [Link]; i++) {
[Link]((i + 1) + ". " + namaSiswa[i] + " - " +
nilaiSiswa[i]);
// Menghitung Rata-rata Nilai Ujian
double totalNilai = 0;
for (int i = 0; i < [Link]; i++) {
totalNilai += nilaiSiswa[i];
double rataRata = totalNilai / [Link];
[Link]("\nRata-rata nilai ujian: " + [Link]("%.2f",
rataRata));
// Mencari Nilai Tertinggi dan Terendah
double nilaiTertinggi = nilaiSiswa[0];
double nilaiTerendah = nilaiSiswa[0];
String namaTertinggi = namaSiswa[0];
String namaTerendah = namaSiswa[0];
for (int i = 1; i < [Link]; i++) {
if (nilaiSiswa[i] > nilaiTertinggi) {
nilaiTertinggi = nilaiSiswa[i];
namaTertinggi = namaSiswa[i];
if (nilaiSiswa[i] < nilaiTerendah) {
nilaiTerendah = nilaiSiswa[i];
namaTerendah = namaSiswa[i];
// Menampilkan Nilai Tertinggi dan Terendah
[Link]("Nilai tertinggi: " + namaTertinggi + " dengan " +
nilaiTertinggi);
[Link]("Nilai terendah: " + namaTerendah + " dengan " +
nilaiTerendah);
}
Output :
Penjelasan:
Kode di atas adalah program Java yang menyimpan dan mengelola data
nama serta nilai ujian lima siswa. Program ini menggunakan dua array, yaitu
namaSiswa untuk menyimpan nama siswa dan nilaiSiswa untuk nilai ujian
mereka. Program dimulai dengan menampilkan nama dan nilai setiap siswa
menggunakan loop for. Setelah itu, program menghitung rata-rata nilai
dengan menjumlahkan semua nilai siswa dan membaginya dengan jumlah
siswa, kemudian menampilkan hasil rata-rata tersebut dengan dua angka
desimal. Selanjutnya, program mencari nilai tertinggi dan terendah dengan
membandingkan setiap nilai siswa, serta menampilkan siapa yang memiliki
nilai tertinggi dan terendah. Output dari program ini menampilkan daftar
siswa dan nilai mereka, rata-rata nilai ujian (87.40), nilai tertinggi (Eka
dengan 95.0), dan nilai terendah (Citra dengan 78.5).