SlideShare a Scribd company logo
1 of 9
INTERAKSI ANTAR OBJEK
 Objek tidak berdiri sendiri
 Objek berinteraksi dengan objek-objek lainnya
 Bagaimana objek-objek itu berinteraksi?
 Objek berinteraksi tergantung dari informasi yang dibutuhkannya
ANALOGI INTERAKSI ANTAR OBJEK
DIAGRAM INTERAKSI OBJEK
 Objek berinteraksi menggunakan metode
 Diketahui objek A berkomunikasi dengan objek B.
 Objek A dan B akan saling berkomunikasi tergantung informasi yang dibutuhkan.
INTERAKSI ANTAR OBJEK
 Komunikasi A dan B :
 Objek A akan mencari method Objek B yang sesuai perintah yang akan dikerjakan.
 Berdasarkan service request, Objek A memberikan informasi tambahan ke Objek B yang
akan diproses.
 Objek B harus mengetahui apakah objek A mengharapkan objek B untuk memberikan
report balik setelah perintah dikerjakan.
METODE / METHOD
DEKLARASI METHOD
HEADER METHOD
 Header method yaitu spesifikasi formal bagaimana method dipanggil.
 Spesifikasi minimum terdiri dari :
 Tipe Return
 Nama method
 Parameter
 Contoh :
NAMING CONVENTION ( Konvensi Penamaan)
 The first letter of the method name is in lowercase.
(Huruf pertama nama metode ditulis dalam huruf kecil)
 The first letter of each subsequent concatenated word in the method name is in uppercase,
and the remaining characters are in lowercase.
(Huruf pertama dari setiap kata gabungan berikutnya dalam nama metode adalah huruf
besar, dan karakter yang tersisa dalam huruf kecil)
 We don’t use any “punctuation” characters— dashes, underscores, etc.—to separate these
words.
(Kami tidak menggunakan karakter "tanda baca" apa pun — tanda hubung, garis bawah,
dll. — Untuk memisahkan kata-kata ini)
 As an example, chooseAdvisor is an appropriate method name, whereas none of the
following would be appropriate: ChooseAdvisor (uppercase “C”), chooseadvisor
(lowercase “a”), choose_advisor (separating underscore).
(Sebagai contoh, selectAdvisor adalah nama metode yang tepat, sedangkan tak satu pun
dari yang berikut ini akan sesuai: ChooseAdvisor (huruf besar "C"), selectadvisor (huruf
kecil "a"), select_advisor (memisahkan garis bawah))
PASSING ARGUMENT
Pengertian Pass by Value
Pass by value (memberikan nilai) adalah salah satu metode untuk memberikan argumen kepada
function parameter di saat pemanggilan function. Pada dasarnya C/C++ memberikan argument
kepada funtion parameter dalam bentuk nilai (value). Ketika kita memberikan argument pada
function, maka nilai dari argument akan di salin ke dalam function parameter.
Dalam menentukan argument kita dapat membuatnya dalam bentuk nilai, ekspresi, variabel,
literal, object, enum dan lain-lain yang mengandung nilai di dalamnya.
Contoh Program :
1
2
3
4
5
6
7
8
9
10
11
12
#include <iostream>
using namespace std;
int tambah (int a, int b){
return a+b;
}
int main () {
cout<<tambah(5,6)<<endl; //pass by value
return 0;
}
Function parameter sebenarnya hanyalah variabel lokal. Setiap ketentuan yang ada pada variabel
lokal berlaku pada function parameter. Perbedaanya adalah hanya pada segi peletakanya.
Contoh Program :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <iostream>
using namespace std;
int tambah (int a, int b){
return a+b;
}
int main () {
cout<<tambah(5,6)<<endl; //pass by value
cout<<tambah(19,24)<<endl; //pass by value
cout<<tambah(79,64)<<endl; //pass by value
return 0;
}
Dari program di atas, terlihat bahwa function kustom tambah() dipanggil berulang kali. Dengan
argument yang berbeda-beda. Itu bukan berarti bahwa nilai function parameter selalu
diperbaharui setiap function itu di panggil dan diberi argument baru, melainkan function
parameternya lah yang selalu baru.
Sama seperti variabel lokal, bahwa function parameter termasuk dalam Automatic duration
dengan arti bahwa variabel tersebut hanya akan ada pada saat function tersebut sedang berjalan.
sebelum itu dan sesudah itu, semua local variabel di dalamnya akan hilang atau tidak ada.
Contoh Program :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <iostream>
using namespace std;
int ubah(int x){
x = 99;
cout<<"x = "<<x<<endl;
}
int main () {
int a = 1;
cout<<"a = "<<a<<endl;
ubah(a); //pass by value
cout<<"a = "<<a<<endl;
return 0;
}
Perubahan pada function parameter tidak akan berpengaruh pada argument, karena apa yang
terjadi adalah function parameter hanya menyalin nilai dari argument dengan arti lain bahwa
argument dan function parameter adalah variabel yang berbeda dan berdiri sendiri.
Satu hal terakhir yang perlu anda tahu sebelum melakukan metode pass by value adalah, bahwa
metode ini tidak cocok digunakan untuk memberikan argument berupa array, object dan segala
sesuatu yang cukup memakan memori besar. karena apa yang terjadi adalah nilai dari argument
di salin ke function parameter, hal itu dapat menurunkan performa program anda.
Contoh Program :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <iostream>
using namespace std;
void myFunction(int a,double b,char c);//function prototype
int main(){
int var=29029;
myFunction(var-29000,2,'A'); //pass by value
return 0;
}
void myFunction(int a,double b,char c){
cout<<"a"<<" = "<<a<<endl;
cout<<"b"<<" = "<<b<<endl;
16
17
cout<<"c"<<" = "<<c<<endl<<endl;
}
TUJUAN PASSING ARGUMENT
 Tujuan melewatkan argumen ke dalam metode adalah menjadi dua kali lipat. [Barker05]:
 Untuk menyediakan "bahan bakar" (opsional) yang diperlukan untuk melakukan
tugasnya
 Untuk memandu perilakunya dengan cara tertentu
Contoh :
 boolean registerForCourse(String courseID, int secNo)
 boolean registerForCourse()
CONTOH PASSING ARGUMENT
public void test() { int x = 5; proses(x);
System.out.println(“x1:”+ x);
}
public void proses(int x) { x = x + 10;
System.out.println(“x2:”+ x);
}
CONTOH PASSING ARGUMENT
public void test() { int x = 5; proses(x);
System.out.println(“x1:”+ x);
}
public int proses(int x) { x = x + 10;
System.out.println(“x2:”+ x); return x;
}
TIPE RETURN METHOD
 Tipe return method yaitu :
 void
 tipe data primitif
 tipe data user-defined (class)
 array
 collection
Contoh :
void setName(String newName)
void switchMajor(String newDepartment, Professor newAdvisor)
Professor getAdvisor()
ANALOGI
 Aktivitas “household chores” :
 Taking out the trash
 Mowing the lawn
 Washing the car
 Berarti dengan aktivitas seperti di atas akan memiliki class Person dengan tiga method di
dalamnya. Methodnya yaitu :
void takeOutTheTrash()
boolean mowTheLawn()
void washTheCar(Car c)
BADAN METHOD
 Badan method sebagai tempat implementasi program.
 Dibatasi dengan tanda kurawal (buka dan tutup) seperti { .... }
 Contoh :
STATEMENT RETURN
 Statement return yaitu statement jump yang digunakan untuk keluar dari method.
 Statement yang dikembalikan harus sama dengan tipe return.
 Contoh untuk integer :
STATEMENT RETURN
Contoh untuk boolean :
STATEMENT RETURN
Contoh :
STATEMENT RETURN
Contoh :
Statement else bisa dihilangkan karena nilai false sudah diinisialisasi.

More Related Content

What's hot

Romi oop-02-javafundamentals-29agustus2010
Romi oop-02-javafundamentals-29agustus2010Romi oop-02-javafundamentals-29agustus2010
Romi oop-02-javafundamentals-29agustus2010SabilaAulia
 
Konsep dasar bahasa__pascal_ok-libre
Konsep dasar bahasa__pascal_ok-libreKonsep dasar bahasa__pascal_ok-libre
Konsep dasar bahasa__pascal_ok-libreBoelepe Icheks
 
Tipe Data pada Bahasa Java
Tipe Data pada Bahasa JavaTipe Data pada Bahasa Java
Tipe Data pada Bahasa JavaAs Faizin
 
Modul pascal
Modul pascalModul pascal
Modul pascalshediazz
 
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
 
Laporan Praktikum ALPRO-Berhitung Rumus Statistika
Laporan Praktikum ALPRO-Berhitung Rumus StatistikaLaporan Praktikum ALPRO-Berhitung Rumus Statistika
Laporan Praktikum ALPRO-Berhitung Rumus StatistikaShofura Kamal
 
Pertemuan vi (Function Java)
Pertemuan vi (Function Java)Pertemuan vi (Function Java)
Pertemuan vi (Function Java)Putra Andry
 
Laporan praktikum Algoritma dan Pemrograman pertemuan 12
Laporan praktikum Algoritma dan Pemrograman pertemuan 12Laporan praktikum Algoritma dan Pemrograman pertemuan 12
Laporan praktikum Algoritma dan Pemrograman pertemuan 12Ekha Cahya Nugraha
 
Java (Netbeans) - Looping - Object Oriented Programming
Java (Netbeans) - Looping - Object Oriented ProgrammingJava (Netbeans) - Looping - Object Oriented Programming
Java (Netbeans) - Looping - Object Oriented ProgrammingMelina Krisnawati
 

What's hot (18)

Romi oop-02-javafundamentals-29agustus2010
Romi oop-02-javafundamentals-29agustus2010Romi oop-02-javafundamentals-29agustus2010
Romi oop-02-javafundamentals-29agustus2010
 
Function c++
Function c++Function c++
Function c++
 
Tipe data
Tipe dataTipe data
Tipe data
 
Konsep dasar bahasa__pascal_ok-libre
Konsep dasar bahasa__pascal_ok-libreKonsep dasar bahasa__pascal_ok-libre
Konsep dasar bahasa__pascal_ok-libre
 
Tugas Praktikum ke dua
Tugas Praktikum ke duaTugas Praktikum ke dua
Tugas Praktikum ke dua
 
Tipe Data pada Bahasa Java
Tipe Data pada Bahasa JavaTipe Data pada Bahasa Java
Tipe Data pada Bahasa Java
 
Modul pascal
Modul pascalModul pascal
Modul pascal
 
Function
FunctionFunction
Function
 
Pengenalan bahasa c++
Pengenalan bahasa c++Pengenalan bahasa c++
Pengenalan bahasa c++
 
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
 
Laporan Praktikum ALPRO-Berhitung Rumus Statistika
Laporan Praktikum ALPRO-Berhitung Rumus StatistikaLaporan Praktikum ALPRO-Berhitung Rumus Statistika
Laporan Praktikum ALPRO-Berhitung Rumus Statistika
 
Function c++
Function c++Function c++
Function c++
 
Pertemuan vi (Function Java)
Pertemuan vi (Function Java)Pertemuan vi (Function Java)
Pertemuan vi (Function Java)
 
Laporan praktikum Algoritma dan Pemrograman pertemuan 12
Laporan praktikum Algoritma dan Pemrograman pertemuan 12Laporan praktikum Algoritma dan Pemrograman pertemuan 12
Laporan praktikum Algoritma dan Pemrograman pertemuan 12
 
Overridung polymorphism
Overridung polymorphismOverridung polymorphism
Overridung polymorphism
 
Cc++
Cc++Cc++
Cc++
 
Java (Netbeans) - Looping - Object Oriented Programming
Java (Netbeans) - Looping - Object Oriented ProgrammingJava (Netbeans) - Looping - Object Oriented Programming
Java (Netbeans) - Looping - Object Oriented Programming
 
Algoritma flowchart
Algoritma flowchartAlgoritma flowchart
Algoritma flowchart
 

Similar to Interaksi antar objek

Similar to Interaksi antar objek (20)

3122500055_Fadhilah Margi Pertiwi_1 D3 IT B_Laporan Praktikum WPW 1.pdf
3122500055_Fadhilah Margi Pertiwi_1 D3 IT B_Laporan Praktikum WPW 1.pdf3122500055_Fadhilah Margi Pertiwi_1 D3 IT B_Laporan Praktikum WPW 1.pdf
3122500055_Fadhilah Margi Pertiwi_1 D3 IT B_Laporan Praktikum WPW 1.pdf
 
Tistrukdat5
Tistrukdat5Tistrukdat5
Tistrukdat5
 
Ringkasan materi teori algoritma
Ringkasan materi teori algoritmaRingkasan materi teori algoritma
Ringkasan materi teori algoritma
 
Tipe data dan variabel
Tipe data dan variabelTipe data dan variabel
Tipe data dan variabel
 
Function
FunctionFunction
Function
 
Structure and pointer
Structure and pointerStructure and pointer
Structure and pointer
 
Pengenalan bahasa c++
Pengenalan bahasa c++Pengenalan bahasa c++
Pengenalan bahasa c++
 
Fungsi dan Array Pada C++
Fungsi dan Array Pada C++Fungsi dan Array Pada C++
Fungsi dan Array Pada C++
 
Slid_3_OOP.pptx
Slid_3_OOP.pptxSlid_3_OOP.pptx
Slid_3_OOP.pptx
 
Alex algoritma-02
Alex algoritma-02Alex algoritma-02
Alex algoritma-02
 
Pemrograman Komputer - 3
Pemrograman Komputer - 3Pemrograman Komputer - 3
Pemrograman Komputer - 3
 
Dasar Pemrograman materi kuliah
Dasar Pemrograman materi kuliahDasar Pemrograman materi kuliah
Dasar Pemrograman materi kuliah
 
Presentasi pertemuan3
Presentasi pertemuan3Presentasi pertemuan3
Presentasi pertemuan3
 
Javascript function
Javascript   functionJavascript   function
Javascript function
 
P1 2-tipe data
P1 2-tipe dataP1 2-tipe data
P1 2-tipe data
 
Tugas blog
Tugas blog Tugas blog
Tugas blog
 
Dasar Dasar Algoritma
Dasar Dasar AlgoritmaDasar Dasar Algoritma
Dasar Dasar Algoritma
 
Praktikum fix 2
Praktikum fix 2Praktikum fix 2
Praktikum fix 2
 
Job 11 sebenarnya
Job 11 sebenarnyaJob 11 sebenarnya
Job 11 sebenarnya
 
Pengenalan pascal asli
Pengenalan pascal asliPengenalan pascal asli
Pengenalan pascal asli
 

More from Kurjum Usman

Modul 2 desain grafis
Modul 2 desain grafisModul 2 desain grafis
Modul 2 desain grafisKurjum Usman
 
Modul 1 desain grafis
Modul 1 desain grafisModul 1 desain grafis
Modul 1 desain grafisKurjum Usman
 
Pemodelan perangkat lunak 4
Pemodelan perangkat lunak 4Pemodelan perangkat lunak 4
Pemodelan perangkat lunak 4Kurjum Usman
 
Pemodelan perangkat lunak 2
Pemodelan perangkat lunak 2Pemodelan perangkat lunak 2
Pemodelan perangkat lunak 2Kurjum Usman
 
Pemodelan perangkat lunak 1
Pemodelan perangkat lunak 1Pemodelan perangkat lunak 1
Pemodelan perangkat lunak 1Kurjum Usman
 
perkembangan perangkat lunak
perkembangan perangkat lunakperkembangan perangkat lunak
perkembangan perangkat lunakKurjum Usman
 
Pemodelan perangkat lunak 3
Pemodelan perangkat lunak  3Pemodelan perangkat lunak  3
Pemodelan perangkat lunak 3Kurjum Usman
 

More from Kurjum Usman (7)

Modul 2 desain grafis
Modul 2 desain grafisModul 2 desain grafis
Modul 2 desain grafis
 
Modul 1 desain grafis
Modul 1 desain grafisModul 1 desain grafis
Modul 1 desain grafis
 
Pemodelan perangkat lunak 4
Pemodelan perangkat lunak 4Pemodelan perangkat lunak 4
Pemodelan perangkat lunak 4
 
Pemodelan perangkat lunak 2
Pemodelan perangkat lunak 2Pemodelan perangkat lunak 2
Pemodelan perangkat lunak 2
 
Pemodelan perangkat lunak 1
Pemodelan perangkat lunak 1Pemodelan perangkat lunak 1
Pemodelan perangkat lunak 1
 
perkembangan perangkat lunak
perkembangan perangkat lunakperkembangan perangkat lunak
perkembangan perangkat lunak
 
Pemodelan perangkat lunak 3
Pemodelan perangkat lunak  3Pemodelan perangkat lunak  3
Pemodelan perangkat lunak 3
 

Recently uploaded

Kesebangunan Segitiga matematika kelas 7 kurikulum merdeka.pptx
Kesebangunan Segitiga matematika kelas 7 kurikulum merdeka.pptxKesebangunan Segitiga matematika kelas 7 kurikulum merdeka.pptx
Kesebangunan Segitiga matematika kelas 7 kurikulum merdeka.pptxDwiYuniarti14
 
PELAKSANAAN + Link2 Materi TRAINING "Effective SUPERVISORY & LEADERSHIP Sk...
PELAKSANAAN  + Link2 Materi TRAINING "Effective  SUPERVISORY &  LEADERSHIP Sk...PELAKSANAAN  + Link2 Materi TRAINING "Effective  SUPERVISORY &  LEADERSHIP Sk...
PELAKSANAAN + Link2 Materi TRAINING "Effective SUPERVISORY & LEADERSHIP Sk...Kanaidi ken
 
Modul 1.2.a.8 Koneksi antar materi 1.2.pdf
Modul 1.2.a.8 Koneksi antar materi 1.2.pdfModul 1.2.a.8 Koneksi antar materi 1.2.pdf
Modul 1.2.a.8 Koneksi antar materi 1.2.pdfSitiJulaeha820399
 
adap penggunaan media sosial dalam kehidupan sehari-hari.pptx
adap penggunaan media sosial dalam kehidupan sehari-hari.pptxadap penggunaan media sosial dalam kehidupan sehari-hari.pptx
adap penggunaan media sosial dalam kehidupan sehari-hari.pptxmtsmampunbarub4
 
Materi Pertemuan Materi Pertemuan 7.pptx
Materi Pertemuan Materi Pertemuan 7.pptxMateri Pertemuan Materi Pertemuan 7.pptx
Materi Pertemuan Materi Pertemuan 7.pptxRezaWahyuni6
 
PPT_AKUNTANSI_PAJAK_ATAS_ASET_TETAP.pptx
PPT_AKUNTANSI_PAJAK_ATAS_ASET_TETAP.pptxPPT_AKUNTANSI_PAJAK_ATAS_ASET_TETAP.pptx
PPT_AKUNTANSI_PAJAK_ATAS_ASET_TETAP.pptxalalfardilah
 
AKSI NYATA Strategi Penerapan Kurikulum Merdeka di Kelas (1).pdf
AKSI NYATA Strategi Penerapan Kurikulum Merdeka di Kelas (1).pdfAKSI NYATA Strategi Penerapan Kurikulum Merdeka di Kelas (1).pdf
AKSI NYATA Strategi Penerapan Kurikulum Merdeka di Kelas (1).pdfTaqdirAlfiandi1
 
Tugas 1 pembaruan dlm pembelajaran jawaban tugas tuton 1.docx
Tugas 1 pembaruan dlm pembelajaran jawaban tugas tuton 1.docxTugas 1 pembaruan dlm pembelajaran jawaban tugas tuton 1.docx
Tugas 1 pembaruan dlm pembelajaran jawaban tugas tuton 1.docxmawan5982
 
DESAIN MEDIA PEMBELAJARAN BAHASA INDONESIA BERBASIS DIGITAL.pptx
DESAIN MEDIA PEMBELAJARAN BAHASA INDONESIA BERBASIS DIGITAL.pptxDESAIN MEDIA PEMBELAJARAN BAHASA INDONESIA BERBASIS DIGITAL.pptx
DESAIN MEDIA PEMBELAJARAN BAHASA INDONESIA BERBASIS DIGITAL.pptxFuzaAnggriana
 
MODUL 2 BAHASA INDONESIA-KELOMPOK 1.pptx
MODUL 2 BAHASA INDONESIA-KELOMPOK 1.pptxMODUL 2 BAHASA INDONESIA-KELOMPOK 1.pptx
MODUL 2 BAHASA INDONESIA-KELOMPOK 1.pptxarnisariningsih98
 
Materi Strategi Perubahan dibuat oleh kelompok 5
Materi Strategi Perubahan dibuat oleh kelompok 5Materi Strategi Perubahan dibuat oleh kelompok 5
Materi Strategi Perubahan dibuat oleh kelompok 5KIKI TRISNA MUKTI
 
LAPORAN PKP KESELURUHAN BAB 1-5 NURUL HUSNA.pdf
LAPORAN PKP KESELURUHAN BAB 1-5 NURUL HUSNA.pdfLAPORAN PKP KESELURUHAN BAB 1-5 NURUL HUSNA.pdf
LAPORAN PKP KESELURUHAN BAB 1-5 NURUL HUSNA.pdfChrodtianTian
 
Panduan Substansi_ Pengelolaan Kinerja Kepala Sekolah Tahap Pelaksanaan.pptx
Panduan Substansi_ Pengelolaan Kinerja Kepala Sekolah Tahap Pelaksanaan.pptxPanduan Substansi_ Pengelolaan Kinerja Kepala Sekolah Tahap Pelaksanaan.pptx
Panduan Substansi_ Pengelolaan Kinerja Kepala Sekolah Tahap Pelaksanaan.pptxsudianaade137
 
Laporan Guru Piket untuk Pengisian RHK Guru Pengelolaan KInerja Guru di PMM
Laporan Guru Piket untuk Pengisian RHK Guru Pengelolaan KInerja Guru di PMMLaporan Guru Piket untuk Pengisian RHK Guru Pengelolaan KInerja Guru di PMM
Laporan Guru Piket untuk Pengisian RHK Guru Pengelolaan KInerja Guru di PMMmulyadia43
 
TUGAS GURU PENGGERAK Aksi Nyata Modul 1.1.pdf
TUGAS GURU PENGGERAK Aksi Nyata Modul 1.1.pdfTUGAS GURU PENGGERAK Aksi Nyata Modul 1.1.pdf
TUGAS GURU PENGGERAK Aksi Nyata Modul 1.1.pdfElaAditya
 
Demonstrasi Kontekstual Modul 1.2. pdf
Demonstrasi Kontekstual  Modul 1.2.  pdfDemonstrasi Kontekstual  Modul 1.2.  pdf
Demonstrasi Kontekstual Modul 1.2. pdfvebronialite32
 
BAHAN SOSIALISASI PPDB SMA-SMK NEGERI DISDIKSU TP. 2024-2025 REVISI.pptx
BAHAN SOSIALISASI PPDB SMA-SMK NEGERI DISDIKSU TP. 2024-2025 REVISI.pptxBAHAN SOSIALISASI PPDB SMA-SMK NEGERI DISDIKSU TP. 2024-2025 REVISI.pptx
BAHAN SOSIALISASI PPDB SMA-SMK NEGERI DISDIKSU TP. 2024-2025 REVISI.pptxJamhuriIshak
 
implementasu Permendikbudristek no 53 2023
implementasu Permendikbudristek no 53 2023implementasu Permendikbudristek no 53 2023
implementasu Permendikbudristek no 53 2023DodiSetiawan46
 
Ppt tentang perkembangan Moral Pada Anak
Ppt tentang perkembangan Moral Pada AnakPpt tentang perkembangan Moral Pada Anak
Ppt tentang perkembangan Moral Pada Anakbekamalayniasinta
 
KONSEP KEBUTUHAN AKTIVITAS DAN LATIHAN.pptx
KONSEP KEBUTUHAN AKTIVITAS DAN LATIHAN.pptxKONSEP KEBUTUHAN AKTIVITAS DAN LATIHAN.pptx
KONSEP KEBUTUHAN AKTIVITAS DAN LATIHAN.pptxawaldarmawan3
 

Recently uploaded (20)

Kesebangunan Segitiga matematika kelas 7 kurikulum merdeka.pptx
Kesebangunan Segitiga matematika kelas 7 kurikulum merdeka.pptxKesebangunan Segitiga matematika kelas 7 kurikulum merdeka.pptx
Kesebangunan Segitiga matematika kelas 7 kurikulum merdeka.pptx
 
PELAKSANAAN + Link2 Materi TRAINING "Effective SUPERVISORY & LEADERSHIP Sk...
PELAKSANAAN  + Link2 Materi TRAINING "Effective  SUPERVISORY &  LEADERSHIP Sk...PELAKSANAAN  + Link2 Materi TRAINING "Effective  SUPERVISORY &  LEADERSHIP Sk...
PELAKSANAAN + Link2 Materi TRAINING "Effective SUPERVISORY & LEADERSHIP Sk...
 
Modul 1.2.a.8 Koneksi antar materi 1.2.pdf
Modul 1.2.a.8 Koneksi antar materi 1.2.pdfModul 1.2.a.8 Koneksi antar materi 1.2.pdf
Modul 1.2.a.8 Koneksi antar materi 1.2.pdf
 
adap penggunaan media sosial dalam kehidupan sehari-hari.pptx
adap penggunaan media sosial dalam kehidupan sehari-hari.pptxadap penggunaan media sosial dalam kehidupan sehari-hari.pptx
adap penggunaan media sosial dalam kehidupan sehari-hari.pptx
 
Materi Pertemuan Materi Pertemuan 7.pptx
Materi Pertemuan Materi Pertemuan 7.pptxMateri Pertemuan Materi Pertemuan 7.pptx
Materi Pertemuan Materi Pertemuan 7.pptx
 
PPT_AKUNTANSI_PAJAK_ATAS_ASET_TETAP.pptx
PPT_AKUNTANSI_PAJAK_ATAS_ASET_TETAP.pptxPPT_AKUNTANSI_PAJAK_ATAS_ASET_TETAP.pptx
PPT_AKUNTANSI_PAJAK_ATAS_ASET_TETAP.pptx
 
AKSI NYATA Strategi Penerapan Kurikulum Merdeka di Kelas (1).pdf
AKSI NYATA Strategi Penerapan Kurikulum Merdeka di Kelas (1).pdfAKSI NYATA Strategi Penerapan Kurikulum Merdeka di Kelas (1).pdf
AKSI NYATA Strategi Penerapan Kurikulum Merdeka di Kelas (1).pdf
 
Tugas 1 pembaruan dlm pembelajaran jawaban tugas tuton 1.docx
Tugas 1 pembaruan dlm pembelajaran jawaban tugas tuton 1.docxTugas 1 pembaruan dlm pembelajaran jawaban tugas tuton 1.docx
Tugas 1 pembaruan dlm pembelajaran jawaban tugas tuton 1.docx
 
DESAIN MEDIA PEMBELAJARAN BAHASA INDONESIA BERBASIS DIGITAL.pptx
DESAIN MEDIA PEMBELAJARAN BAHASA INDONESIA BERBASIS DIGITAL.pptxDESAIN MEDIA PEMBELAJARAN BAHASA INDONESIA BERBASIS DIGITAL.pptx
DESAIN MEDIA PEMBELAJARAN BAHASA INDONESIA BERBASIS DIGITAL.pptx
 
MODUL 2 BAHASA INDONESIA-KELOMPOK 1.pptx
MODUL 2 BAHASA INDONESIA-KELOMPOK 1.pptxMODUL 2 BAHASA INDONESIA-KELOMPOK 1.pptx
MODUL 2 BAHASA INDONESIA-KELOMPOK 1.pptx
 
Materi Strategi Perubahan dibuat oleh kelompok 5
Materi Strategi Perubahan dibuat oleh kelompok 5Materi Strategi Perubahan dibuat oleh kelompok 5
Materi Strategi Perubahan dibuat oleh kelompok 5
 
LAPORAN PKP KESELURUHAN BAB 1-5 NURUL HUSNA.pdf
LAPORAN PKP KESELURUHAN BAB 1-5 NURUL HUSNA.pdfLAPORAN PKP KESELURUHAN BAB 1-5 NURUL HUSNA.pdf
LAPORAN PKP KESELURUHAN BAB 1-5 NURUL HUSNA.pdf
 
Panduan Substansi_ Pengelolaan Kinerja Kepala Sekolah Tahap Pelaksanaan.pptx
Panduan Substansi_ Pengelolaan Kinerja Kepala Sekolah Tahap Pelaksanaan.pptxPanduan Substansi_ Pengelolaan Kinerja Kepala Sekolah Tahap Pelaksanaan.pptx
Panduan Substansi_ Pengelolaan Kinerja Kepala Sekolah Tahap Pelaksanaan.pptx
 
Laporan Guru Piket untuk Pengisian RHK Guru Pengelolaan KInerja Guru di PMM
Laporan Guru Piket untuk Pengisian RHK Guru Pengelolaan KInerja Guru di PMMLaporan Guru Piket untuk Pengisian RHK Guru Pengelolaan KInerja Guru di PMM
Laporan Guru Piket untuk Pengisian RHK Guru Pengelolaan KInerja Guru di PMM
 
TUGAS GURU PENGGERAK Aksi Nyata Modul 1.1.pdf
TUGAS GURU PENGGERAK Aksi Nyata Modul 1.1.pdfTUGAS GURU PENGGERAK Aksi Nyata Modul 1.1.pdf
TUGAS GURU PENGGERAK Aksi Nyata Modul 1.1.pdf
 
Demonstrasi Kontekstual Modul 1.2. pdf
Demonstrasi Kontekstual  Modul 1.2.  pdfDemonstrasi Kontekstual  Modul 1.2.  pdf
Demonstrasi Kontekstual Modul 1.2. pdf
 
BAHAN SOSIALISASI PPDB SMA-SMK NEGERI DISDIKSU TP. 2024-2025 REVISI.pptx
BAHAN SOSIALISASI PPDB SMA-SMK NEGERI DISDIKSU TP. 2024-2025 REVISI.pptxBAHAN SOSIALISASI PPDB SMA-SMK NEGERI DISDIKSU TP. 2024-2025 REVISI.pptx
BAHAN SOSIALISASI PPDB SMA-SMK NEGERI DISDIKSU TP. 2024-2025 REVISI.pptx
 
implementasu Permendikbudristek no 53 2023
implementasu Permendikbudristek no 53 2023implementasu Permendikbudristek no 53 2023
implementasu Permendikbudristek no 53 2023
 
Ppt tentang perkembangan Moral Pada Anak
Ppt tentang perkembangan Moral Pada AnakPpt tentang perkembangan Moral Pada Anak
Ppt tentang perkembangan Moral Pada Anak
 
KONSEP KEBUTUHAN AKTIVITAS DAN LATIHAN.pptx
KONSEP KEBUTUHAN AKTIVITAS DAN LATIHAN.pptxKONSEP KEBUTUHAN AKTIVITAS DAN LATIHAN.pptx
KONSEP KEBUTUHAN AKTIVITAS DAN LATIHAN.pptx
 

Interaksi antar objek

  • 1. INTERAKSI ANTAR OBJEK  Objek tidak berdiri sendiri  Objek berinteraksi dengan objek-objek lainnya  Bagaimana objek-objek itu berinteraksi?  Objek berinteraksi tergantung dari informasi yang dibutuhkannya ANALOGI INTERAKSI ANTAR OBJEK DIAGRAM INTERAKSI OBJEK  Objek berinteraksi menggunakan metode  Diketahui objek A berkomunikasi dengan objek B.  Objek A dan B akan saling berkomunikasi tergantung informasi yang dibutuhkan.
  • 2. INTERAKSI ANTAR OBJEK  Komunikasi A dan B :  Objek A akan mencari method Objek B yang sesuai perintah yang akan dikerjakan.  Berdasarkan service request, Objek A memberikan informasi tambahan ke Objek B yang akan diproses.  Objek B harus mengetahui apakah objek A mengharapkan objek B untuk memberikan report balik setelah perintah dikerjakan. METODE / METHOD DEKLARASI METHOD HEADER METHOD  Header method yaitu spesifikasi formal bagaimana method dipanggil.  Spesifikasi minimum terdiri dari :
  • 3.  Tipe Return  Nama method  Parameter  Contoh : NAMING CONVENTION ( Konvensi Penamaan)  The first letter of the method name is in lowercase. (Huruf pertama nama metode ditulis dalam huruf kecil)  The first letter of each subsequent concatenated word in the method name is in uppercase, and the remaining characters are in lowercase. (Huruf pertama dari setiap kata gabungan berikutnya dalam nama metode adalah huruf besar, dan karakter yang tersisa dalam huruf kecil)  We don’t use any “punctuation” characters— dashes, underscores, etc.—to separate these words. (Kami tidak menggunakan karakter "tanda baca" apa pun — tanda hubung, garis bawah, dll. — Untuk memisahkan kata-kata ini)  As an example, chooseAdvisor is an appropriate method name, whereas none of the following would be appropriate: ChooseAdvisor (uppercase “C”), chooseadvisor (lowercase “a”), choose_advisor (separating underscore). (Sebagai contoh, selectAdvisor adalah nama metode yang tepat, sedangkan tak satu pun dari yang berikut ini akan sesuai: ChooseAdvisor (huruf besar "C"), selectadvisor (huruf kecil "a"), select_advisor (memisahkan garis bawah)) PASSING ARGUMENT Pengertian Pass by Value Pass by value (memberikan nilai) adalah salah satu metode untuk memberikan argumen kepada function parameter di saat pemanggilan function. Pada dasarnya C/C++ memberikan argument kepada funtion parameter dalam bentuk nilai (value). Ketika kita memberikan argument pada function, maka nilai dari argument akan di salin ke dalam function parameter. Dalam menentukan argument kita dapat membuatnya dalam bentuk nilai, ekspresi, variabel, literal, object, enum dan lain-lain yang mengandung nilai di dalamnya.
  • 4. Contoh Program : 1 2 3 4 5 6 7 8 9 10 11 12 #include <iostream> using namespace std; int tambah (int a, int b){ return a+b; } int main () { cout<<tambah(5,6)<<endl; //pass by value return 0; } Function parameter sebenarnya hanyalah variabel lokal. Setiap ketentuan yang ada pada variabel lokal berlaku pada function parameter. Perbedaanya adalah hanya pada segi peletakanya. Contoh Program : 1 2 3 4 5 6 7 8 9 10 11 12 13 14 #include <iostream> using namespace std; int tambah (int a, int b){ return a+b; } int main () { cout<<tambah(5,6)<<endl; //pass by value cout<<tambah(19,24)<<endl; //pass by value cout<<tambah(79,64)<<endl; //pass by value return 0; } Dari program di atas, terlihat bahwa function kustom tambah() dipanggil berulang kali. Dengan argument yang berbeda-beda. Itu bukan berarti bahwa nilai function parameter selalu diperbaharui setiap function itu di panggil dan diberi argument baru, melainkan function parameternya lah yang selalu baru. Sama seperti variabel lokal, bahwa function parameter termasuk dalam Automatic duration dengan arti bahwa variabel tersebut hanya akan ada pada saat function tersebut sedang berjalan. sebelum itu dan sesudah itu, semua local variabel di dalamnya akan hilang atau tidak ada.
  • 5. Contoh Program : 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 #include <iostream> using namespace std; int ubah(int x){ x = 99; cout<<"x = "<<x<<endl; } int main () { int a = 1; cout<<"a = "<<a<<endl; ubah(a); //pass by value cout<<"a = "<<a<<endl; return 0; } Perubahan pada function parameter tidak akan berpengaruh pada argument, karena apa yang terjadi adalah function parameter hanya menyalin nilai dari argument dengan arti lain bahwa argument dan function parameter adalah variabel yang berbeda dan berdiri sendiri. Satu hal terakhir yang perlu anda tahu sebelum melakukan metode pass by value adalah, bahwa metode ini tidak cocok digunakan untuk memberikan argument berupa array, object dan segala sesuatu yang cukup memakan memori besar. karena apa yang terjadi adalah nilai dari argument di salin ke function parameter, hal itu dapat menurunkan performa program anda. Contoh Program : 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 #include <iostream> using namespace std; void myFunction(int a,double b,char c);//function prototype int main(){ int var=29029; myFunction(var-29000,2,'A'); //pass by value return 0; } void myFunction(int a,double b,char c){ cout<<"a"<<" = "<<a<<endl; cout<<"b"<<" = "<<b<<endl;
  • 6. 16 17 cout<<"c"<<" = "<<c<<endl<<endl; } TUJUAN PASSING ARGUMENT  Tujuan melewatkan argumen ke dalam metode adalah menjadi dua kali lipat. [Barker05]:  Untuk menyediakan "bahan bakar" (opsional) yang diperlukan untuk melakukan tugasnya  Untuk memandu perilakunya dengan cara tertentu Contoh :  boolean registerForCourse(String courseID, int secNo)  boolean registerForCourse() CONTOH PASSING ARGUMENT public void test() { int x = 5; proses(x); System.out.println(“x1:”+ x); } public void proses(int x) { x = x + 10; System.out.println(“x2:”+ x); } CONTOH PASSING ARGUMENT public void test() { int x = 5; proses(x); System.out.println(“x1:”+ x); } public int proses(int x) { x = x + 10; System.out.println(“x2:”+ x); return x; } TIPE RETURN METHOD  Tipe return method yaitu :  void  tipe data primitif  tipe data user-defined (class)  array  collection Contoh : void setName(String newName) void switchMajor(String newDepartment, Professor newAdvisor)
  • 7. Professor getAdvisor() ANALOGI  Aktivitas “household chores” :  Taking out the trash  Mowing the lawn  Washing the car  Berarti dengan aktivitas seperti di atas akan memiliki class Person dengan tiga method di dalamnya. Methodnya yaitu : void takeOutTheTrash() boolean mowTheLawn() void washTheCar(Car c) BADAN METHOD  Badan method sebagai tempat implementasi program.  Dibatasi dengan tanda kurawal (buka dan tutup) seperti { .... }  Contoh : STATEMENT RETURN  Statement return yaitu statement jump yang digunakan untuk keluar dari method.  Statement yang dikembalikan harus sama dengan tipe return.  Contoh untuk integer :
  • 8. STATEMENT RETURN Contoh untuk boolean : STATEMENT RETURN Contoh : STATEMENT RETURN Contoh :
  • 9. Statement else bisa dihilangkan karena nilai false sudah diinisialisasi.