DISUSUN OLEH
VIKTOR HANDRIANUS PRANATAWIJAYA, ST., MT.
SHERLY CHRISTINA, S.KOM., M.KOM
TATA TERTIB
1. Praktikan WAJIB mengikuti semua modul praktikum.
2. Praktikan hanya boleh tidak mengikuti praktikum 1 (Satu) kali DENGAN ATAU
TANPA SURAT IZIN dari jumlah pertemuan praktikum.
3. Praktikan yang berhalangan mengikuti praktikum, diwajibkan melaporkan ke dosen
praktikum untuk menentukan jadwal praktikum sebagai pengganti jadwal yang
berhalangan.
4. Praktikan yang lebih dari 1 (satu) kali tidak mengikuti praktikum, tidak diperbolehkan
untuk mengikuti praktikum untuk modul-modul praktikum selanjutnya dan NILAI
AKHIR PRAKTIKUM adalah NOL.
5. Praktikan diberikan toleransi waktu keterlambatan selama 15 menit dan tidak ada
penambahan waktu praktikum.
6. Tidak diperbolehkan saling bekerja sama.
7. Dilarang menggunakan kaos oblong dan sendal selama praktikum. Bagi yang
melanggar poin ini, tidak diperbolehkan mengikuti ujian.
TATA LAKSANA :
1. Sebelum praktikum di mulai, setiap praktikum wajib mengumpulkan LAPORAN
HASIL PRAKTIKUM modul sebelumnya.
2. Jika praktikan tidak melaksanakan Tata Laksana poin 1, maka tidak diperbolehkan
mengikuti praktikum.
3. Setiap modul praktikum, akan dilakukan Pre-Test.
4. Format laporan meliputi :
Laporan Hasil Praktikum :
Halaman Depan
BAB I. Tujuan dan Landasan Teori
BAB II. Langkah Kerja
BAB III. Pembahasan
BAB IV. Kesimpulan
BAB V. Daftar Pustaka
BAB VI. Lampiran (Disertai laporan rencana praktikum modul sebelumnya)
5. Format Penulisan
Spasi
Font
Font Size
Margins
Kertas
: 1,5
: Times New Roman
: 12
: Top 3, Left 4, Right 3, Bottom 3
: A4
Nilai 20
Nilai 10
Nilai 40
Nilai 15
Nilai 5
Nilai 10
100
: 15 %
: 30 %
: 20 %
: 35 %
100 %
100 %
MODUL I
CLASS
1. Tujuan
Mahasiswa dapat menggunakan access modifiers untuk mengendalikan akses terhadap class
member
2. Pembahasan
2.1. Pengenalan Dasar Class
Struktur class secara umum adalah seperti berikut:
<modifier> class <name> {
<attributeDeclaration>*
<constructorDeclaration>*
<methodDeclaration>*
}
dimana :
<modifier> adalah sebuah access modifier, yang dapat dikombinasikan dengan tipe
modifierlain.
2.2.Package
Packages dalam JAVA berarti pengelompokan beberapa class dan interface dalam satu
unit.Fitur ini menyediakan mekanisme untuk mengatur class dan interface dalam jumlah banyakdan
menghindari konflik pada penamaan.
2.2.1.Mengimport Packages
Supaya dapat meggunakan class yang berada diluar package yang sedang dikerjakan,
Andaharus mengimport package dimana class tersebut berada. Pada dasarnya, seluruh
programJAVA mengimport package java.lang.*, sehingga Anda dapat menggunakan class
sepertiString dan Integer dalam program meskipun belum mengimport package sama sekali.
Penulisan import package dapat dilakukan seperti dibawah ini :
import <namaPaket>;
Sebagai contoh, bila Anda ingin menggunakan class Color dalam package awt, Anda
harusmenuliskan import package sebagai berikut :
import java.awt.Color;
import java.awt.*;
2.2.2.Membuat Package
Untuk membuat package, dapat dilakukan dengan menuliskan :
package <packageName>;
3. Tugas
1. Analisis program berikut dan perbaiki kesalahan-kesalahan pada program berikut
public Class Tabungan
{
Private string nama;
Private int NoRekening;
Private int saldo;
Private int pin;
Public Tabungan(String namaNasabah, intNoRek)
{
nama = namaNasabah;
noRekening = noRek;
saldo = 10000;
pin = 11111;
}
Public void simpanUang (int sal)
{
Saldo = saldo + sal;
}
Public void tarikUang(int jumlahTarikan)
{
Saldo = saldo jumlahTarikan;
}
Public int getSaldo()
{
Return saldo;
}
Public void setSaldo(int sal)
{
Saldo = sal;
}
Public void setPin (int pinBaru)
{
Pin = pinBaru;
}
Public static void main(String args[])
{
Int jumlahTarikan = 2000, jumlah simpanan = 5000;
Tabungan bls = new Tabungan(Barca, 12345);
System.out.println(Saldo awal : + bls.getSaldo);
Bls.tarikUang(JumlahTarikan);
System.out.println(Saldo setelah penarikan 2000
adalah : + bls.getSaldo());
}}
2. Buat program yang menggambarkan penggunaan package class seperti pada diagram berikut!
Package1
Package2
{MethodA}
{MethodB}
DemoPackage
PenggunaanMethodAdanMethodB
(eg. Truk menggunakan Bahan Bakar
Solar)
MODUL II
PEWARISAN, POLYMORFISME DAN INTERFACE
1. Tujuan
2. Pembahasan
2.1 Teknik Pewarisan
Pewarisan dilakukan untuk membuat class baru (class turunan/subclass) yang masih
memiliki sifat atau spesifikasi dari class dimana ia diturunkan (Superclass). Untuk melakukan ini, Java
menyediakan keyword extends yang dapat dipakai pada waktu kita mendeklarasikan class. Berikut
adalah contoh implementasi pewarisan :
class A {
int x;
int y;
void tampilkanNilaixy()
{
System.out.println(Nilai x:
}
}
+ x +
, y: + y);
class B extends A {
int z;
void tampilkanJumlah() {
//subclass dapat mengakses member dari superclass
System.out.println(Jumlah : + (x+y+z));
}
}
}
}
class C extends A {
public void cetakKeLayar()
{
System.out.println(Method dari class C dipanggil);
}
}
class Demo()
{
public static void main(String[] args)
{
A obA;
B obB = new B();
C obC = new C();
obA = obB;
obA.cetakKeLayar();
obA = obC;
obA.cetakKeLayar();
}
}
2.3 Interface
Pendeklarasian interface secara umum adalah sebagai berikut:
Access-specifier interface NamaInterface{
Access-specifier tipe-data namaVariabel1 = value1;
Penggunaan Interface
Access-specifier class NamaClass implements
Na aI terface, , Na aI terfaceN
{
//class implementation
}
3. Tugas
1. Buat program dengan teknik pewarisan atau polymorfisme untuk menyelesaikan
output berikut:
Nama
: Antonio
Usia
: 28
Bagian : Direktur
Gaji Pokok
: Rp. 10.000.000,00
Tunjangan Jabatan
: Rp 5.000.000,Fasilitas : Mobil Dinas, Rumah Dinas
Nama
: Jimmy
Usia
: 25
Bagian : Wakil Direktur
Gaji Pokok
: Rp. 7.000.000,00
Tunjangan Jabatan
: Rp 2.000.000,Fasilitas : Mobil Dinas
Nama
: Boy
Usia
: 25
Bagian : Staf
Gaji Pokok
: Rp. 1.500.000,00
Tunjangan Jabatan
:Fasilitas : 2. Analisa dan perbaiki kesalahan pada program-program berikut:
File: Suara.java
public interface Suara
{
Public voic berbicara();
Public void tidur();
}
File: Anjing.java
Public class Anjing implements Suara
{
//informasi data anjing
String warna;
float berat;
public Anjing(String w, float b);
{
Warna = w;
berat = b;
}
Public void berbicara()
{
System.out.println(Guk.gukguk);
}
Public void tidur()
System.out.Println(zzz..zzz....zzz);
}
}
public class TesSuara
{
Public static main(String args)
Anjing AirBuds = new Anjing(Coklat,20.4f)
AirBuds.berbicara;
AirBuds.tidur;
}
}
MODUL III
OPERASI INPUT-OUTPUT DAN
JAVA GRAPHIC USER INTERFACE
1. Tujuan
2. Pembahasan
Ada beberapa cara untuk mendapatkan input dari keyboard, dua diantaranya adalah
menggunakan BufferReader dan menggunakan JoptionPane untuk mendapatkan Input.
2.1 Menggunakan BufferReader untuk mendapatkan Input
Langkah-langkah yang diperlukan untuk mendapatkan input darikeyboard dengan
menggunakan BufferReader:
1. Tambahkan di bagian paling atas code Anda:
import java.io.*;
3. Deklarasikan variabel String temporary untuk mendapatkan input, dan gunakanfungsi readLine()
untuk mendapatkan input dari keyboard. Anda harusmengetikkannya di dalam blok try-catch:
try{
String temp = dataIn.readLine();
}
catch( IOException e ){
System.out.println(Error in getting input);
}
Outputnya:
3.Tugas
Buat program untuk menghasilkan output seperti berikut:
MODUL IV
MEMBANGUN APLIKASI ANDROID SEDERHANA
DAN MENGENAL WIDGET
1. Tujuan:
2. Pembahasan
2.1 Membangun Project Baru pada Eclipse
Untuk membangun project baru langkah-langkah yang harus dilakukan adalah seperti berikut.
Pada Eclipse,pilih menu File>New > AndroidApplicationProject.
1. Application Name : Nama aplikasi yang muncul nanti saat di Play Store dan
Settings>Manage Application List.
2. Project Name: Nama Project Eclipse.
3. Package name:Nama package dari aplikasi, nama package haruslah unik dalam satu
perangkat antara satu dengan program lainnya.
4. Target SDK : Target device yang ingin dijalankan untuk menggunakan aplikasi yang
akan di buat.
5. Compile With: Versi android yang digunakan untuk kompilasi project.
6. Minimum Required SDK: versi Android yang ingin dijalankan. Untuk aplikasi
handphone, pilih 2.3.3 (Ginger bread) atau Froyo, karena ini versi yang paling umum
digunakan di seluruh dunia.
Pada jendela konfigurasi project berikut, klik Next.
Pada jendela berikutnya pilih icon aplikasi yang akan digunakan, gunakan icon standar yang
dimiliki Android, Next.
Pada jendela berikutnya pilih model activity yang akan digunakan, pada praktikum ini pilih
Blank Activity dan klik Next.
Pada jendela terakhir, dilakukan pengaturan nama untuk Activity dan juga layoutnya. Setelah
selesai klik Finish.
Kemudian project akan diciptakan secara otomatis oleh Eclipse dengan aplikasi Hello World
sebagai aplikasi default.
Emulator atau Android Virtual Device (AVD) adalah perangkat untuk menguji
aplikasi android, tanpa menggunakan perangkat android sesungguhnya. Emulator dapat
dibuat untuk platform dan konfigurasi android yang berbeda-beda. Langkah-langkah untuk
membuat konfigurasi Android dilakukan di dalam menu Window, seperti berikut:
4. Untuk menguji AVD jalankan AVD Manager>pilih AVD> kemudian klik Start.
Kecepatan emulator ditampilkan tergantung pada konfigurasi AVD yang dibangun
dan spesifikasi perangkat keras yang digunakan.
3. 1. Tugas 1
1) Buat Emulator dengan nama MyPhone dan buat Aplikasi dengan nama Halo
Duniaseperti pada pembahasan. Perhatikan ketentuan berikut.
PackageName : modulpbo4.Tugas1
2) Ganti string Hello World dengan string berikut Halo nama_anda, selamat datang di
dunia Android. Edit file strings.xml pada folder res>values
Edit file
strings.xml
3.2. Tugas 2
Buat Project Baru dengan ketentuan sebagai berikut.
PackageName : modulpbo4.tugas2
Aplikasi LatihanGUI akan menampilkan beberapa widget dalam layout yang dilengkapi
dengan ScrollView. Ketik kode program berikut untuk membangun aplikasi LatihanGUI.
File activity_main.xml
<?xmlversion="1.0"encoding="utf-8"?>
<ScrollViewxmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/scrollView1"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical">
<TextView
android:id="@+id/textNama"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Nama Lengkap"
android:textSize="24sp"
android:textStyle="bold"
android:typeface="monospace"/>
<EditText
android:id="@+id/editNama"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="10"
android:textSize="24dp"
android:typeface="monospace">
<requestFocus/>
</EditText>
<TextView
android:id="@+id/textEmail"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Email"
android:textSize="24dp"
android:textStyle="bold"
android:typeface="monospace"/>
<EditText
android:id="@+id/editEmail"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="10"
android:inputType="textEmailAddress"
android:textSize="24dp"
android:typeface="monospace"/>
<TextView
android:id="@+id/textJenisKelamin"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Jenis Kelamin"
android:textSize="24dp"
android:typeface="monospace"/>
<RadioButton
android:id="@+id/radioLaki"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Laki-Laki"/>
<RadioButton
android:id="@+id/radioPerempuan"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Perempuan"/>
<TextView
android:id="@+id/textHobi"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Hobi"
android:textSize="24dp"
android:textStyle="bold"
android:typeface="monospace"/>
<CheckBox
android:id="@+id/checkBaca"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Membaca"/>
<CheckBox
android:id="@+id/checkMemancing"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Memancing"/>
<CheckBox
android:id="@+id/checkBersepeda"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Bersepeda"/>
<Button
android:id="@+id/btnOK"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="OK"/>
</LinearLayout>
</ScrollView>
File MainActivity.java
package modulpbo4.tugas2;
import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.view.View;
import android.widget.Button;
import android.widget.CheckBox;
import android.widget.EditText;
import android.widget.RadioButton;
import android.widget.TextView;
publicclass MainActivity extends Activity {
@Override
protectedvoid onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
final EditText editNama = (EditText) findViewById(R.id.editNama);
final EditText editEmail = (EditText)
findViewById(R.id.editEmail);
final RadioButton radioLaki = (RadioButton)
findViewById(R.id.radioLaki);
final RadioButton radioPerempuan = (RadioButton)
findViewById(R.id.radioPerempuan);
final CheckBox checkBaca = (CheckBox)
findViewById(R.id.checkBaca);
final CheckBox checkMemancing = (CheckBox)
findViewById(R.id.checkMemancing);
final CheckBox checkBersepeda = (CheckBox)
findViewById(R.id.checkBersepeda);
Button btnOK = (Button) findViewById(R.id.btnOK);
TextView texthalo = (TextView)findViewById(R.id.texthalo);
btnOK.setOnClickListener(new View.OnClickListener() {
@Override
publicvoid onClick(View v) {
// TODO Auto-generated method stub
editNama.setText("Jokowi");
editEmail.setText("Joko@upr.ac.id");
radioLaki.setChecked(true);
checkBaca.setChecked(true);
checkMemancing.setChecked(true);
checkBersepeda.setChecked(true);
}
});
}
}
3.3. Tugas
Buat Project Baru dengan ketentuan sebagai berikut.
PackageName : modulpbo4.tugas3
Aplikasi LatihanGUI2 akan menampilkan layout berisi 1 widget TextView, 1 EditText dan 1
button. Widget TextView akan menampilkan text Masukan Nama Anda. Widget EditText
berfungsi untuk menerima inputan nama user. Kemudian pada button tertulis OK. Ketika
program dijalankan, user akan menginputkan namanya kemudian klik pada tombol OK.
Setelah itu akan ditampilkan dialog dalam bentuk Toast berisikan kalimat Halo senang
berjumpa dengan Anda, nama user yang telah diinputkan sebelumnya.
4. Pustaka
http://http://developer.android.com
Felker D.; Dobbs J, 2011, Android Application Development For Dummies, Wiley Publishing
Inc., USA
MODULV
INTENT
1. Tujuan
2. Pembahasan
Sebuah aplikasi android dapat berisi banyak activity. Activity merupakan potongan
kode executable yang menyajikan user interface secara visual dan berjalan selama
diperlukan. Untuk berpindah dari activity satu ke activity lainnya dilakukan dengan cara
mengeksekusi activity berikutnya melalui sebuah intent. Sehingga setiap activity dapat
berinteraksi satu dengan yang lainnya secara asynchronous.
Intent dapat dipanggil dengan menggunakan beberapa method berikut.
startActivity(intent)
sendBroadcast(intent)
startService(intent)
atau
bindService intent,
3. Tugas 1.
Buat sebuah aplikasi bernama MyFirstApp yang menampilkan sebuah edittext dan
button. Ketika edittext diisi dengan sebuah string dan tombol Send diklik, maka string
tersebut akan ditampilkan oleh activity lain, DisplayMessageActivity.
Ikuti langkah-langkah berikut untuk membangun aplikasi MyFirstApp. Buat sebuah
project dengan ketentuan seperti berikut.
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal">
<EditTextandroid:id="@+id/edit_message"
android:layout_weight="1"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:hint="@string/edit_message"/>
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/button_send"
android:onClick="sendMessage"/>
</LinearLayout>
File strings.xml
<?xmlversion="1.0"encoding="utf-8"?>
<resources>
<stringname="app_name">My First App</string>
<stringname="edit_message">Enter a message</string>
<stringname="button_send">Send</string>
<stringname="action_settings">Settings</string>
<stringname="title_activity_main">MainActivity</string>
<stringname="title_activity_display_message">My Message</string>
<stringname="hello_world">Hello world!</string>
</resources>
File MainActivity.java
packagemodulpbo5.tugas1;
import
import
import
import
import
import
android.app.Activity;
android.content.Intent;
android.os.Bundle;
android.view.Menu;
android.view.View;
android.widget.EditText;
Project: MyFirstApp
ActivityName:DisplayMessageActivity
Title: My Message
5. Klik Finish
Kemudian ketik kode program berikut.
File activity_display_message.xml
<RelativeLayoutxmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".DisplayMessageActivity">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
/>
</RelativeLayout>
File DisplayMessageActivity.java
package modulpbo5.tugas1;
import
import
import
import
import
import
import
import
android.annotation.TargetApi;
android.app.Activity;
android.content.Intent;
android.os.Build;
android.os.Bundle;
android.support.v4.app.NavUtils;
android.view.MenuItem;
android.widget.TextView;
3.2. Tugas 2.
Buat sebuah project baru untuk aplikasi Login yang terdiri atas 2 activity dan gunakan Intent
untuk berinteraksi antara 2 activity tersebut. Aplikasi ini tidak perlu menggunakan database
karenaUser Name dan Password didefinisikan di dalam kode program. Bila User Namedan
Passwordyang diinputkan tepat maka ketika tombol login diklik akan ditampilkan activity
kedua berisi ucapan Welcome User Name, kemudian saat user klik pada tombol Back
maka layout login (activity 1) akan ditampilkan kembali. Sedangkan bila User Name dan
Password salah maka akan ditampilkan pesan Login Gagal (masih pada activity 1).
Pesan dalam
bentuk Toast
bila login gagal,
di activity1
Activity 1
Activity 2
4. Pustaka
http://http://developer.android.com