PRAKTIKUM PEMROGRAMAN BERBASIS OBJEK LAPORAN AKHIR
DOSEN PEMBIMBING Tri Hartati, Skom, Mkom
DISUSUN OLEH
Muhammad Abiyyu Rafiandy (2070231024)
UNIVERSITAS KRISNADWIPAYANA FAKULTAS TEKNIK
PRODI TEKNIK INFORMATIKA 2021/2022
Latihan1 – GenapGanjil.java
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates * and open the template in the editor.
*/
package LATIHAN1;
import java.util.Scanner;
/**
*
* @author LabKom-6 */
public class GenapGanjil {
public static void main(String[]args) {
System.out.println("Penyelesaian Latihan 1 Modul 1");
Scanner a=new Scanner(System.in);
System.out.print("Masukkan Bilangan: ");
int bil=a.nextInt();
if(bil%2==1 && bil>0) {
System.out.println("Bilangan Diatas adalah Positif Ganjil");
}
else if(bil%2==-1 && bil<0) {
System.out.println("Bilangan Diatas adalah Negatif Ganjil");
}
else if(bil%2==0 && bil>0) {
System.out.println("Bilangan Diatas adalah Positif Genap");
} else {
System.out.println("Bilangan Diatas adalah Negatif Genap");
} } }
Latihan2 – BelajarEnkapsulasi.java
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates * and open the template in the editor.
*/
package LATIHAN2;
/**
*
* @author LabKom-6
*/ public class BelajarEnkapsulasi { public static void main(String[]args){
BelajarEnkapsulasi ls = new
BelajarEnkapsulasi(); ls.setAlas(5);
ls.setTinggi(7);
System.out.println("Alas Segitiga : "+ls.getAlas());
System.out.println("Tinggi Segitiga:"+ls.getTinggi());
ls.setLuasSegitiga(ls.getAlas(), ls.getTinggi());
System.out.println("Luas Segitiga :"+ls.getLuasSegitiga());
}
private int alas,tinggi;
private double luassegitiga;
public void setAlas(int alas){
this.alas=alas;
}
public int getAlas(){
return alas;
}
public void setTinggi(int tinggi){
this.tinggi=tinggi;
}
public int getTinggi(){
return tinggi;
}
public void setLuasSegitiga(int alas,int tinggi){
luassegitiga=0.5*(double) (alas*tinggi);
}
public double getLuasSegitiga(){
return luassegitiga;
} }
Latihan2 – BelajarPolymorphism.java
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates * and open the template in the editor.
*/
package LATIHAN2;
/**
*
* @author LabKom-6 */
public class BelajarPolymorphism {
public void Tampil() {
System.out.println("I Love Java");
}
public void Tampil(int i) {
System.out.println("Method dengan 2 parameter = "+i);
}
public void Tampil(int i,int j) {
System.out.println("Method dengan 2 parameter ="+i+" Dan "+j);
}
public void Tampil(String kata) {
System.out.println("Saat ini kita sedang"+kata);
}
public static void main(String[]args) {
BelajarPolymorphism overloadingobjek=new BelajarPolymorphism();
overloadingobjek.Tampil(); overloadingobjek.Tampil(8);
overloadingobjek.Tampil(6,7);
overloadingobjek.Tampil("Belajar overloading");
} }
Latihan2 – Inheritance1.java
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates * and open the template in the editor.
*/
package LATIHAN2;
/**
*
* @author LabKom-6 */
public class Inheritance1 {
private int nilaiSuper;
public Inheritance1(int nilaiInduk) {
this.nilaiSuper = nilaiInduk;
}
public int getNilaiInduk() {
return nilaiSuper;
}
private void methodPrivate() {
System.out.println("Ini method private");
}
protected void methodProtected() {
System.out.println("Ini method Protected");
} }
Latihan2 – Inheritance2.java
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates * and open the template in the editor.
*/
package LATIHAN2;
/**
*
* @author LabKom-6
*/ public class Inheritance2 extends Inheritance1
{
private double nilaiSub;
public Inheritance2(int nilaiSuper, double nilaiSub) {
super(nilaiSuper);
this.nilaiSub = nilaiSub;
}
public void methodSub() {
super.methodProtected();
System.out.println("Nilai Super: "+super.getNilaiInduk());
} }
Latihan2 – InheritanceMain.java
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates * and open the template in the editor.
*/
package LATIHAN2;
/**
*
* @author LabKom-6 */
public class InheritanceMain {
/**
* @param args the command line arguments */
public static void main(String[] args) {
// bentuk objek superclass
System.out.println("Objek superclass");
Inheritance1 sup = new Inheritance1 (5);
System.out.println("Nilai super: "+sup.getNilaiInduk());
sup.methodProtected();
// bentuk objek subclass
System.out.println("\nObjek subclass");
Inheritance2 sub = new Inheritance2(10,9.5);
System.out.println("Pemanggilan method superclass dari objek");
System.out.println("Nilai super: "+sub.getNilaiInduk());
sub.methodProtected();
} }
Latihan3 – Mahasiswa.java
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates * and open the template in the editor.
*/
package LATIHAN3;
/**
*
* @author LabKom-6 */
public class Mahasiswa { private String nim; private String nama; private int tinggi;
private boolean pindahan;
public String getNim () { return nim;
}
public void setNim(String nim) { this.nim = nim;
}
public String getNama() { return nama;
}
public void setNama(String nama){
this.nama = nama;
}
public int getTinggi() { return tinggi;
}
public void setTingi(int tinggi) { this.tinggi = tinggi;
}
public boolean isPindahan() { return pindahan;
}
public void setPindahan(boolean pindahan) { this.pindahan = pindahan;
}
public Mahasiswa(String nim, String nama, int tinggi) { this.nim = nim; this.nama = nama; this.tinggi = tinggi;
}
public Mahasiswa(String nim, String nama, int tinggi, boolean pindahan) { this(nim,nama,tinggi);
this.pindahan = pindahan;
} } /**
* @param args the command line arguments */
// TODO code application logic here
Latihan3 – MainMhs.java
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates * and open the template in the editor.
*/
package LATIHAN3;
/**
*
* @author LabKom-6 */
public class MainMhs {
/**
* @param args the command line arguments */
public static void main(String[] args) { // TODO code application logic here
Mahasiswa m1 = new Mahasiswa ("2070231051","Cup",166);
m1.setPindahan(false);
//menampilkan data
System.out.println("Data Mahasiswa 1");
System.out.println("Nim :"+m1.getNim());
System.out.println("Nama :"+m1.getNama());
System.out.println("Tinggi Badan :"+m1.getTinggi());
if (m1.isPindahan()) {
System.out.println("Mahasiswa pindahan");
}else {
System.out.println("Mahasiswa reguler");
} }
* and open the template in the editor.
*/ package Latihan6;
/**
*
* @author LabKom-9
*/ public class Mahasiswa { private String nama; private String NIM;
public String getNama(){
return this.nama;
}
public void setNama(String nama){ this.nama = nama;
}
public String getNIM(){
return this.NIM;
}
public void setNIM(String NIM){ this.NIM = NIM;
} }
Interface – Doraemon.java
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates * and open the template in the editor.
*/
package Interface;
/**
*
* @author LabKom-6 */
public interface Doraemon { public void sayDora();
public void displayKantongAjaib();
}
Interface – Robot.java
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates * and open the template in the editor.
*/
package Interface;
/**
*
* @author LabKom-6 */
public interface Robot { public void setNama(); public void setTahunPembuatan();
public void displayData();
}
public void setTahunPembuatan(int Tahun){ System.out.println("Tahun Pembuatan\t: "+tahun);
}
public abstract void setNama(); public abstract void displayData();
}
Interface – DoraMini.java
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates * and open the template in the editor.
*/
package Interface;
/**
*
* @author LabKom-6 */
public class DoraMini implements Robot, Doraemon{
private String nama;
private String pemilik;
protected int tahun;
DoraMini(String Nama, String Pemilik, int Tahun){
nama = Nama; pemilik = Pemilik;
tahun = Tahun;
}
public String getNama () { return nama;
}
public String getPemilik(){
return pemilik;
}
public void setPemilik(String pemilik){
this.pemilik = pemilik;
}
protected int getTahun(){
return tahun;
}
@Override
public void setNama (){
System.out.println("Nama Robot :"+getNama());
}
@Override
public void setTahunPembuatan(){
System.out.println("Tahun Pembuatan :"+getTahun());
}
@Override
public void displayData() { setNama();
System.out.println("Pemilik :"+getPemilik());
setTahunPembuatan(); sayDora();
displayKantongAjaib();
}
@Override
public void sayDora(){
System.out.println("\nHalo, Saya "+getNama());
}
@Override
public void displayKantongAjaib(){
System.out.println("Saya juga seperti Doraemon yang memiliki kantong ajaib");
} }
Interface – Main.java
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates * and open the template in the editor.
*/
package Interface;
/**
*
* @author LabKom-6 */
public class Main {
/**
* @param args the command line arguments */
public static void main(String[] args) {
DoraMini dm = new DoraMini ("DoraMini","Cups",2020);
dm.displayData();
}
Abstrak – Robot.java
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates * and open the template in the editor.
*/
package Abstract;
/**
*
* @author LabKom-6 */
public abstract class Robot { protected String nama; protected String pemilik;
protected int tahun;
protected Robot(String Nama, String Pemilik, int Tahun){
nama = Nama; pemilik = Pemilik;
tahun = Tahun;
}
protected String getNama () { return nama;
}
protected String getPemilik () { return pemilik;
}
protected int getTahun(){
return tahun;
}
public void setTahunPembuatan(int Tahun){
System.out.println("Tahun Pembuatan :"+tahun);
}
public abstract void setNama();
public abstract void displayData();
}
Abstrak – MainRobot.java
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates * and open the template in the editor.
*/
package Abstract;
/**
*
* @author LabKom-6 */
public class MainRobot {
public static void main(String[] args) {
DoraMini dora1 = new DoraMini ("Dora Mini", "Alex",2020);
dora1.displayData();
} }
* To change this template file, choose Tools | Templates * and open the template in the editor.
*/ package Latihan10;
/**
*
* @author LabKom-9
*/ public interface Doraemon { public void sayDora();
public void displayKantongAjaib();
}
Abstrak – DoraMini.java
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates * and open the template in the editor.
*/
package Abstract;
/**
*
* @author LabKom-6 */
public class DoraMini extends Robot{
public DoraMini(String Nama, String Pemilik, int Tahun){
super(Nama, Pemilik, Tahun);
}
@Override
public void setNama(){
System.out.println("Nama Robot :"+super.getNama());
}
@Override public void displayData(){
setNama();
System.out.println("Pemilik :"+getPemilik());
super.setTahunPembuatan(tahun);
sayDora();
}
public void sayDora(){
System.out.println("\nHalo, Saya "+getNama()+":D");
} }
Abstract – Robot1.java
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates * and open the template in the editor.
*/
package Abstract;
/**
*
* @author LabKom-6 */
public class Robot1 {
}
* To change this template file, choose Tools | Templates * and open the template in the editor.
*/ package Latihan10;
/**
*
* @author LabKom-9
*/ public class Main {
public static void
main(String[]args){ DoraMini minirobot = new DoraMini();
minirobot.setNama("Dora Mini");
minirobot.setPemilik("Daniel Yosef Timisela");
minirobot.setTahunPembuatan(2020)
; minirobot.displayData();
minirobot.sayDora();
minirobot.displayKantongA jaib();
} }
TUGAS 1
SOAL:
Member.java :
package Tugas1;
public class Member {
protected String nama; protected int umur;
public Member(String nama, int umur) { this.nama = nama;
this.umur = umur;
}
public void setUmur(int umur) { this.umur = umur;
}
public void display(){
} }
Tim.java : package
Tugas1; public class Tim { private String
nama; private Member m;
public void
setMember(Member m) { this.m = m;
}
public void displayFullMember(){}
public void displayTrainee(){}
public String getNama() { return nama;
}
public void setNama(String nama) { this.nama = nama;
} }
Trainee.java : package Tugas1; public class Trainee extends
Member { private int lamaTraining;
public Trainee(String nama, int umur, int lamaTraining){ this.nama = nama;
this.umur = umur;
}
public int
getLamaTraining(){
return lamaTraining;
}
@Override public void display(){}
}
Main.java :
package Tugas1;
public class
Main { public static void main(String[] args) { Tim t = new Tim();
t.setNama("Tim T");
Member m1 = new
Member("Melody", 23); Member m2
= new Member("Haruka", 23);
Member m3 = new
Member("Kinal", 19); Trainee t1 = new Trainee("Alicia", 17, 3);
Trainee t2 = new Trainee("Indah", 17, 5);
t.setMember(
m1);
t.setMember(
m2);
t.setMember(
m3);
t.setMember(t 1);
t.setMember(t 2);
System.out.println("Full Member:");
t.displayFullMember();
System.out.println("\nTrainee
"); t.displayTrainee();
} }
Output:
TUGAS 2
SOAL:
Source Code : package
Tugas2; public class Game {
public static void main(String[] args) {
GameCharacter karA = new GameCharacter("Raiden", 10, 20);
GameCharacter karB = new GameCharacter("Sub-Zero", 10, 20);
// --- Pertarungan Dimulai ---
// Raiden menendang Sub- Zero karA.kick(karB);
// Sub-Zero menendang Raiden karB.kick(karA);
// Sub-Zero memukul
sebanyak 3x for(int i=0; i<3;
i++){
karB.hit(karA);
}
// Raiden menendang Sub-Zero sebanyak 4x for(int i=0; i<4; i++){
karA.kick(karB);
}
// --- Pertarungan Berakhir ---
System.out.println(karA.getName() + " Life Point: " + karA.getLifePoint());
System.out.println(karB.getName() + " Life Point: " + karB.getLifePoint());
if(karA.getLifePoint() > karB.getLifePoint()){
System.out.println(karA.getName() + " memenangkan pertandingan.");
}
else{
System.out.println(karB.getName() + " memenangkan pertandingan.");
}
}
public static class
GameCharacter{ private String name; private int lifePoint; private int attackHitPoint; private int attackKickPoint;
public GameCharacter(String name, int attackHitPoint, int attackKickPoint){ this.name =
name; this.attackHitPoint = attackHitPoint; this.attackKickPoint
= attackKickPoint; this.lifePoint = 100;
System.out.println("Membuat karakter game : " + this.name); System.out.println("Life Point " + this.lifePoint); System.out.println("Attack Hit Point
" + this.attackHitPoint); System.out.println("Attack Kick Point " + this.attackKickPoint);
System.out.println("");
}
public String
getName() { return name;
}
public int
getLifePoint() { return lifePoint;
}
public void hit(GameCharacter karB){
karB.lifePoint -= this.attackHitPoint;
System.out.println(this.name + " hit " + karB.getName() + ", Life Point " + karB.getName() + " : " + karB.getLifePoint());
}
public void kick(GameCharacter karB){
karB.lifePoint -= this.attackKickPoint;
System.out.println(this.name + " kick " + karB.getName() + ", Life Point " + karB.getName() + " : " + karB.getLifePoint());
}
}
}
Output: