Anda di halaman 1dari 5

Modul Praktikum

2022/2023
Versi 8.0

Elemen Konstruksi Perangkat Lunak I (IT-3P4)


LABORATORIUM SOFTWARE

Departemen Mobile Technology dan Media and Internet Technoogy


Institut Teknologi Harapan Bangsa
2022

1
Modul 5

Method dan String Class

1. Tujuan

1. Mampu mengimplementasikan method


2. Mampu menjelaskan konsep passing parameter
3. Mampu menggunakan method pada String Class

2. Alat yang Digunakan

• Komputer
• Bahasa Pemrograman Java

3. Dasar Teori

Sebuah method adalah kumpulan instruksi yang telah diberi nama. Sebuah method
dipanggil untuk mengeksekusi instruksi yang ada di dalamnya. Sebagai contoh method pow()
pada Math class Math.pow(double x, double y):

double result = Math.pow(2, 3);

Ketika method pow() dipanggil, method tersebut mengeksekusi instruksi yang ada di
dalamnya, dalam hal ini menghitung hasil pemangkatan bilangan. Method pow() mempunyai dua
parameter yaitu x dan y yang bertipe double, sehingga ketika method pow() itu dipanggil maka
yang memanggil harus menyertakan argument (dalam hal ini nilai 2 dan 3). Output dari hasil
perhitungan oleh method pow() dikembalikan sebagai return value. Sebuah method dapat
menerima lebih dari satu arguments, tetapi hanya me-return satu nilai saja (atau bahkan tidak me-
return sama sekali).
Ada 5 tahapan yang dapat dilakukan untuk membuat sebuah method:
1. Pilih nama method. Nama method harus merepresentasikan behavior (apa yang akan
dilakukan) method tersebut.
2. Deklarasikan variable untuk setiap argument. Variable ini disebut sebagai parameter
variable.
3. Tentukan tipe data dari return value. Return value diisi void jika method tersebut tidak
mereturn sesuatu.
4. Tambahkan modifier (public, protected, static dll)
5. Tuliskan instruksi pada bagian tubuh dari method.

2
Syntax untuk mendeklarasikan sebuah method:

public (static) returnType methodName(parameterType parameterName, …)


{
//method body berisi instruksi-instruksi
}

Sebuah method dapat menggunakan static atau non-static modifier. Pada static method,
alokasi memory terjadi hanya satu kali, sehingga ketika setiap kali method dipanggil dari program,
alokasi memory yang sama digunakan. Static method merupakan milik dari class sehingga untuk
memanggilnya menggunakan nama classnya langsung. Static method hanya dapat mengakses
static attribute dan static method lagi. Pada non-static method, alokasi memory dilakukan setiap
kali method tersebut dipanggil. Non-static method merupakan milik dari object, sehingga untuk
memanggilnya perlu dibuat object dari classnya terlebih dahulu. Non-static method dapat
mengakses static attribute dan static method sekaligus juga non-static attribute da method.
Sebuah constructor dapat digunakan untuk menginisialisasi data (variables) dari sebuah
object. Sebuah constructor memiliki nama sama seperti nama class-nya, tidak memiliki return
value maupun void. Sebuah contructor dapat di-override. Sebuah constructor akan digunakan
(dipanggil) ketika sebuah object dibuat dengan operator new. Contoh:

class Person {
String name;
int age;

Person(String p_name, int p_age) {


name = p_name;
age = p_age;
}
}

class Test {
public static void main(String[] args) {
Person p = new Person(“Steven”, 28);
}
}

4. Prosedur Percobaan

A. Static and Non-static Method:


Percobaan-1
• Buatlah sebuah class dengan nama StaticAverage
• Buatlah sebuah static method dengan nama calculateAverage di dalam class tersebut,
sbb:

public static double calculateAverage(double x, double y, double z) {


//lengkapi dengan kode untuk menghitung rata-rata dari tiga angka

• Lengkapi body method tersebut sehingga dapat menghitung rata-rata dari tiga bilangan
• Buatlah main method sebagai berikut untuk memanggil method calculateAverage() sbb:

public static void main(String[] args) {


double avg = calculateAverage(15, 24, 36);
System.out.println(“Rata-rata = “+avg);

3
}

• Lihatlah hasilnya, apa yang dapat Anda simpulkan?

Percobaan-2
• Buatlah sebuah class dengan nama NonStaticAverage
• Buatlah sebuah (non-static) method dengan nama calculateAverage di dalam class
tersebut, sbb:

public double calculateAverage(double x, double y, double z) {


//lengkapi dengan kode untuk menghitung rata-rata dari tiga angka

• Lengkapi body method tersebut sehingga dapat menghitung rata-rata dari tiga bilangan
• Buatlah main method sebagai berikut untuk memanggil method calculateAverage() sbb:

public static void main(String[] args) {


NonStaticAverage nsa = new NonStaticAverage();
double avg = nsa.calculateAverage(15, 24, 36);
System.out.println(“Rata-rata = “+avg);
}

• Lihatlah hasilnya, apa yang dapat Anda simpulkan?

B. Implementasi Method - Wire Resistance


Sebuah kabel listrik adalah sebuah konduktor berbentuk silinder yang dilapisi oleh maerial
insulator. Resistensi dari sepotong kable dapat dicari dengan persamaan:

4𝜌𝐿
𝑅=
𝜋𝑑 2

dimana 𝜌 adalah resistivity dari konduktor (𝑚), L adalah panjang kabel (𝑚), A adalah luas
penampang kondutor (𝑚𝑚2 ), dan d adalah diameter kabel (𝑚𝑚). Diameter kawat d, dapat
dihitung berdasarkan sebuah nilai integer wire gauge 𝑛 dengan standar American Wire Gauge
(AWG) sbb:
36−𝑛
𝑑 = 0.127 × 92 39 𝑚𝑚

sebagai contoh untuk nilai n = 18 maka nilai d adalah 1 mm.

Buatlah sebuah class dengan nama WireResistance, yang didalamnya terdapat 3 (tiga) buah
method, sbb:
• public static double calculateDiameter(int wire_gauge)
method ini memiliki sebuah parameter wire_gauge dengan tipe integer. Method ini akan
menghitung diameter kawat dalam mm (lihat persamaan diameter) dan mereturn
diameter tersebut sebagai tipe double
• pubic static double calculateWireResistance(double length, int wire_gauge)
method ini memiliki dua buah parameter yaitu panjang dengan tipe double dan
wire_gauge dengan tipe integer. Method ini akan menghitung resistensi (lihat persamaan
resistensi di atas) dari sebuah kawat, kemudian mereturn nilai resistensi tersebut sebagai
tipe double.

4
Catatan: perhatikan satuan ketika melakukan perhitungan (satuan harus sama)

Buatlah sebuah class dengan nama Test dan main method didalamnya untuk melakukan testing
terhadap class WireResistence. Gunakan input dari user prompt untuk memasukkan nilai
panjang kawat (m) dan nilai wire gauge n. Hitunglah resistensi sebuah kawat tembaga dengan
nilai resistivity 1.678 × 10−8 𝑚, panjang 2 m dan nilai wire gauge 18.

C. Implementasi Metode pada String Class


Lihatlah catatan kuliah atau Java API tentang class String.
Tulislah sebuah program yang dapat menerima input prompt dari user untuk memasukkan
sebuah tanggal dengan format DD-MM-YYYY, dimana DD adalah dua digit tanggal, MM
adalah dua digit bulan, dan YYYY adalah empat digit tahun. Program yang Anda tulis harus
dapat:
a. memeriksa apakah input yang diberikan sudah sesuai dengan formatnya
b. tampilkan tanggal, bulan (dalam nama seperti Januari, Februari, dst), dan tahun
Gunakan method-method yang ada pada class String untuk membantu Anda dalam menulis
program tersebut.

Contoh:
Masukkan tanggal (DD-MM-YYYY): 01-03-2022
1 Januari 2022

Masukkan tanggal (DD-MM-YYYY): 12-05-2021


12 Mei 2021

Masukkan tanggal (DD-MM-YYYY): 4-02-2020


Tanggal yang dimasukkan tidak sesuai format

=========== ||||||| ===========

Anda mungkin juga menyukai