Ulangan Akhir Bab 1
A. Pilihlah salah satu jawaban yang tepat.
1. Pengertian thread dalam Java adalah .....
a. Salah satu bentuk polymorphism
b. salah satu bentuk enkapsulasi sederhana
c. memecah program agar aman dari injection
d. pengontrol aliran program dengan menggunakan lima tahapan life cycle
e. konsep untuk mengatur struktur dari aplikasi yang dibuat dengan memecah class dalam bagian lebih kecil dan saling terkait
2. Berikut yang bukan merupakan komponen dari thread life cycle adalah......
a. view
d. pattern
b. class
e. control
Untuk soal nomor 3-5, perhatikan pernyataan-pernyataan berikut.
(1) Mempersiapkan eksekusi thread.
(2) Menunggu hingga thread lain selesai dijalankan.
(3) Membentuk thread.
(4) Menghentikan thread untuk sementara waktu.
(5) Melakukan eksekusi thread.
3. Kegunaan dari tahap New dalam thread life cycle ditunjukkan oleh nomor....
a. (1)
b. (2)
C. (3)
d. (1) dan (3)
e. (2) dan (3)
4. Kegunaan dari tahap Running dalam thread life cycle ditunjukkan oleh nomor ....
a. (3)
b. (4)
C. (5)
d. (3) dan (5)
e. (4) dan (5)
5. Kegunaan dari tahap Waiting dalam thread life cycle ditunjukkan oleh nomor ......
a. (2)
b. (3)
C. (4)
d. (2) dan (4)
e. (3) dan (5)
Untuk soal nomor 6 dan 7, perhatikan pernyataan-pernyataan berikut.
(1) Merupakan praktik pemrograman berorientasi objek terbaik.
(2) Tightly coupled.
(3) Pemeliharaan kode lebih mudah.
(4) Task terpisah dari eksekutor.
(5) Digunakan untuk thread dengan tugas spesifik.
(6) Terdapat overhead method tambahan.
6. Ciri-ciri dari pembuatan thread dengan menurunkan class Thread adalah .....
a. (1), (2), dan (3)
b. (1), (3), dan (4)
C. (2), (4), dan (5)
d. (2), (5), dan (6)
e. (4), (5), dan (6)
7. Ciri-ciri dari pembuatan thread dengan menggunakan interface Runnable adalah ....
a. (1), (2), dan (3)
b. (1), (3), dan (4)
C. (2), (4), dan (5)
d. (2), (5), dan (6)
e. (4), (5), dan (6)
Untuk soal nomor 8-11, perhatikan kode program berikut.
1 //Step 1
2 public class contoh_thread implements Runnable {
3 @Override
4 //Step 2
5 public void run() {}
6 public static void main(String[] args) {
7 //Step 3
8 Thread thread ku new = Thread();
9 thread ku.start();
10 try {
11 //Step 4
12 thread ku.sleep(1000);
13} catch (InterruptedException e) {
14 e.printStackTrace();
15 }
16 //Step 5
17 thread_ku.setPriority(1);
18 int thread priority = thread_ku.getPriority();
19 System.out.println(thread_ priority);
20 System.out.println("Thread Berjalan");
21 }
22 }
8. Fungsi dari STEP 1 dari kode program tersebut adalah ......
a. membuat thread
b. membuat override
C. memanggil thread
d. menjalankan thread
e. membuat class yang mengimplementasi Runnable
9. Proses pembentukan thread ditunjukkan pada....
a. STEP 1
b. STEP 2
C. STEP 3
d. STEP 4
e. STEP 5
10. Pengaturan waktu tunda ditunjukkan pada .....
a. STEP 1
b. STEP 2
d. STEP 4
C. STEP 3
e. STEP 5
11. Fungsi dari STEP 5 adalah .....
a. membuat objek
b. mengatur delay
C. menjalankan class
d. menjalankan thread
e. menjalankan thread dan mengatur delay
12. Cara yang digunakan untuk membuat thread dalam Java adalah .....
a. membuat objek baru
b. membuat single thread
C. membuat multithread
d. meng-import library AWT
e. meng-extend class Thread atau meng-implement interface Runnable
13. Perhatikan kode program berikut.
class Multi implements
Runnable{
public void run() { System.out.println("thread is running..."); }
Pada potongan kode program tersebut, thread dibentuk dengan cara.....
a. mengimplementasi method run()
b. mengimplementasi objek Runnable
C. mengimplementasi interface Thread
d. mengimplementasi interface Runnable
e. tidak mengimplementasi apa pun
14. Dalam penggunaan thread Java, dikenal istilah sleep thread. Pernyataan berikut yang merupakan kegunaan sleep thread adalah...
a. Mematikan thread secara paksa.
b. Mematikan thread tertentu secara permanen.
C. Mematikan thread dengan batas waktu tertentu.
d. Hanya sebagai penanda atau remark kode program.
e. Mematikan blok kode program tertentu tanpa batas.
15. Perhatikan kode program berikut.
1 class Thread_tidur extends Thread {
2 public void run() {
3 //STEP 1
4 for (int i = 1; i < 3; i++) {
5 try {
6 Thread.sleep(300);
7 } catch (InterruptedException e) {
8 System.out.println(e);
9 }
10 System.out.println(i);
11 }
12 }
13 //STEP 2
14 public static void main(String args[]) {
15 Thread_tidur X new = Thread tidur();
16 Thread tidur Y Threadd tidur(); = new
17
18 //STEP 3
19 X.start();
20 Y.start();
21 }
22 }
Fungsi dari STEP 1 adalah....
a. mengeksekusi thread
b. bagian program utama
C. membuat objek baru thread
d. mengatur lamanya sleep thread
e. membuat looping sebanyak 300 kali
B. Jawablah pertanyaan-pertanyaan berikut dengan benar.
1. Buatlah diagram thread life cycle dalam Java dan jelaskan.
2. Perhatikan kode program berikut.
1 public class ThreadWithLoop (
2 public static void main(String[] args) {
3 //STEP 1
4 Thread thread new Thread() {
5 public void run() {
6 try {
7 //STEP 2
8 int putar= 100;
9 for (int x = 1; x <= putar; x++) 1
10 System.out.println("Nomor: " + x);
11 sleep(1000); //Waktu Pending
12)
13} catch (InterruptedException ex) {
14 ex.printStackTrace();
15)
16}
17);
18 //STEP 3
19 thread.start();
20}
21)
Jelaskan tentang fungsi dari STEP 1, STEP 2, dan STEP 3.
3. Jelaskan fungsi penting thread dalam Java.
4. Jelaskan fungsi dari sleep thread.
5. Buatlah sebuah penjelasan singkat tentang pembuatan thread dengan meng-extend class Thread dan mengimplementasi interface Runnable.
6. Buatlah contoh program sederhana yang menerapkan pembuatan thread dengan meng-extend class Thread dengan dua buah objek thread baru.
Untuk menjawab soal 7 dan 8, perhatikan kode program berikut.
1 class Thread_one extends Thread (
2 public void run() {
3 //STEP 1
4 for (int i=1; i < 5; i++) {
5 System.out.println("Sub Thread");
6 }
7 }
8 }
9
10 class Test {
11 public static void main(String[] args) {
12 //STEP 2
13 Thread_one x = new Thread_one();
14 x.start();
15 for (int i = 1; i < 5; i++) {
16 System.out.println("Thread Utama");
17 }
18 }
19 }
7. Jelaskan fungsi dari STEP 1 dan STEP 2.
8. Tuliskan hasil kompilasi dari program tersebut.
9. Jelaskan dua jenis thread berdasarkan pembuatnya.
10. Buatlah contoh program sederhana yang menggunakan pengaturan prioritas thread.
C. Praktik
Buatlah aplikasi sederhana dengan mengimplementasi single thread dan multithread.
Catatan:
1. Setiap bagian proses thread diberi remark (tanda) //STEP 1, //STEP 2, dan seterusnya. Selanjutnya, amatilah kode program yang telah dibuat tersebut.
2. Berikan penjelasan secara tertulis atas STEP yang telah dibuat, kemudian jelaskan hasilnya.
Ulangan Akhir Bab 2
A. Pilihlah salah satu jawaban yang tepat.
1. Pengertian GUI dalam Java adalah ....
a. suatu sistem yang membuat para pengguna atau user tidak dapat berinteraksi dengan suatu perangkat komputer
b. suatu sistem yang membuat para pengguna atau user berinteraksi dengan suatu perangkat komputer melalui jaringan
c. jenis antarmuka pengguna yang menggunakan metode interaksi pada peranti elektronik melalui perintah teks antara pengguna dan komputer
d. jenis program komputer yang menggunakan metode interaksi pada peranti elektronik secara grafis (bukan perintah teks) antara pengguna dan komputer
e. jenis antarmuka pengguna yang menggunakan metode interaksi pada peranti elektronik secara grafis (bukan perintah teks) antara pengguna dan komputer
2. Berikut yang bukan merupakan komponen dari AWT adalah .....
a. JDBC
b. button
C. textfield
d. checkbox
e. scrollbar
3. Berikut yang merupakan komponen dari Swing adalah ......
a. button
b. textfield
C. scrollbar
d. checkbox
e. JComboBox
4. Library Java yang digunakan untuk mengaktifkan ActionListener adalah....
a. import java.awt.*;
b. import javax.swing.*;
C. import java.awt.event.*;
d. import javax.swing.border. TitledBorder;
e. import java.text. DecimalFormat;
Untuk menjawab soal nomor 5-7, perhatikan kode program berikut.
1 //STEP2
2 f.setSize(300, 300);
3 f.setLayout(null);
4 f.setDefaultCloseOperation (JF rame. DO_NOTHING_ON_CLOSE); f.setVisible(true); 567
6 }
7 //STEP 3
8 public void windowClosing (WindowEvent e) {
9 int a = JOptionPane. showConfirmDialog(f, "Are you sure?");
10 if (a OPTION) { JOptionPane.YES_
11 f.setDefaultCloseOperation (JF rame.EXIT_ON_CLOSE);
12 }
13 }
14 //STEP 4
15 public static void main(String[] args) {
16 new OptionPaneExample();
17 }
18 }
5. Posisi JOptionPane dari source code tersebut adalah ......
a. 300, 300
b. 300, 400
C. 500, 600
d. 4000, 300
e. di tengah layar
6. Fungsi dari bagian STEP 2 adalah....
a. menampilkan frame
b. mempersiapkan frame
c. menampilkan frame dengan posisi tertentu
d. menampilkan frame dengan ukuran tertentu
e. menampilkan tulisan DO_NOTHING ON CLOSE
7. Fungsi dari STEP 4 adalah...
a. membuat frame
b. memanggil frame
C. menghapus frame
d. menampilkan hasil
e. memanggil class OptionPaneExample
8. Penulisan aktivasi JOptionPane yang tepat adalah....
a. f.setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE);
b. int a = JOptionPane. showConfirmDialog(f, "Are you sure?");
C. int a = JOptionPanel. showConfirmDialog(f, "Are you sure?");
d. int a = JOptionPane showConfirmDialog(f, "A re you sure?");
e. int a = JOptionPane. showConfirmDialog(f, "Are you sure?"); if(a==JOptionPane. YES_OPTION) { f.setDefaultCloseOperation (JFrame.EXIT_ON_CLOSE);
9. Fungsi textbox dalam AWT dan Swing adalah...
a. memperindah tampilan
b. sebagai label dalam form
C. hanya sebagai media input
d. hanya sebagai media output e. sebagai media input dan output
10. Perhatikan kode program berikut.
JFrame f = new
JFrame ("CheckBox Example");
JCheckBox checkBox1 = new
JCheckBox ("C++"); checkBox1.
setBounds (100,100,50,50);
Fungsi dari kode program tersebut adalah....
a. menampilkan label
b. menampilkan frame
c. mengeset ukuran checkbox
d. memperindah tampilan dengan label
e. membuat sebuah checkbox dalam frame dengan ukuran tertentu
11. Untuk membuat sebuah tombol pada form dengan menggunakan Java, library yang perlu diimport adalah ....
a. import java.sql.*;
b. import java.Choice;
C. import java.awt.Frame; d. import java.awt.Button;
e. import java.awt.Checkbox;
12. Android Studio mempunyai struktur penyimpanan folder dalam pemrograman aplikasi Android. Di antara pilihan berikut, folder untuk menyimpan file ikon aplikasi adalah....
a. java
b. layout
C. values
d. mipmap
e.rawable
13. Prinsip utama dalam perancangan user interface adalah ...
a. form fill-in
b. command line
C. ActionListener
d. menu selection
e. user compatibility
14. Editor bahasa pemrograman yang menggunakan prinsip "What You See Is What You Get" adalah.....
a. Netbeans
b. Notepad++ C. Java-Editor
d. C++ command line
e. PASCAL editor command line
15. IDE adalah singkatan dari Integrated Development Environment. Di antara aplikasi desktop programming berikut, yang bukan merupakan IDE adalah.....
a. Delphi
b. Lazarus
C. NetBeans
d. Notepad++
e. VBA Access
C. NetBeans
B. Jawablah pertanyaan-pertanyaan berikut dengan benar.
1. Jelaskan langkah-langkah pembuatan interface dalam Java dengan menggunakan editor Java NetBeans dan menggunakan editor java full text.
2. Buatlah sebuah interface yang menampung nilai variabel integer dan teks/char.
3. Tuliskan dan jelaskan library Java yang digunakan untuk mengaktifkan ActionListener Java.
4. Jelaskan fungsi ActionListener dan ActionPerformed.
5. Jelaskan fungsi dari komponen AWT berikut.
a. textbox
b. choice
c. button
d. scrollbar
Untuk menjawab soal nomor 6-7, perhatikan kode program berikut.
1 import java.awt.*;
2
3 public class TextAreaExample (
4 public static void main(String args[]) {
5 // STEP 1
6 Frame f new Frame ("PERHATIKAN KODE INI");
7 Label 11, 12;
8 // STEP 2
9 List L new List();
10 L.setBounds (30, 50, 70, 50);
11 L.add("SOTO");
12 L.add("BAKSO");
13 L.add("GUDEG");
14 // STEP 3
15 f.add(L);
16 f.setSize(100, 200);
17 f.setLayout(null);
18 f.setVisible(true);
19 }
20 }
6. Jelaskan apa yang dilakukan kode program tersebut dan fungsi dari masing-masing step.
7. Perhatikan STEP 2, ubahlah baris kode (30, 50, 70, 50) menjadi (35, 60, 70, 60), kemudian jelaskan apa yang terjadi dan fungsi dari nilai-nilai tersebut.
Untuk menjawab soal nomor 8-10,perhatikan kode program berikut.
1 import javax.swing.*
2
3 public class ButtonExample (
4 public static void main(String[] args) (
5 // STEP 1
6 JFrame f new JFrame("FORM PAKAI TOMBOL");
7 // STEP 2
8 JButton b new JButton("TEKAN DI SINI BRO");
9 b.setBounds (50, 100, 95, 30);
10 // STEP 3
11 f.add(b):
12 f.setSize(400, 400);
13 f.setLayout (null);
14 f.setVisible(true):
15 }
16 }
8. Apa yang dilakukan kode program tersebut? Jelaskan.
9.Perhatikan STEP 3, ubahlah nilai setVisible(true) menjadi false, kemudian jelaskan apa yang terjadi.
10. Jelaskan fungsi dari STEP 1, STEP 2, dan STEP 3.
C. Praktik
Buatlah sebuah aplikasi dengan bahasa pemrograman Java yang digunakan untuk menghitung luas persegi panjang menggunakan ilustrasi tampilan sebagai berikut.
Catatan:
1. Nilai dimasukkan berdasarkan input user.
2. Implementasikan dengan menggunakan AWT dan Swing.
3. Kerjakan dengan Java-Editor atau NetBeans.
Ulangan Akhir Semester Gasal
1. Pengertian interface dalam Java adalah....
a. interface adalah class
b. class adalah interface
c. salah satu fungsi Java untuk tombol, form, dan textfield
d. sebuah tipe referensi pada Java dan secara struktur serupa dengan class
e. sebuah tipe referensi pada Java dan secara struktur tidak serupa dengan class
2. Fungsi dari interface dalam Java adalah....
a. tempat class utama
b. tempat menyimpan objek
c. tempat menyimpan function Java
d. membuat atribut yang bersifat constant
e. tempat menyimpan method kosong dan atribut yang bersifat constant atau final (dapat disebut juga template method)
3. Kata kunci dari penggunaan interface dalam Java adalah...
a. int
b. class
C. protected
d. implements
e. public void
4. Perhatikan kode program berikut. MyInterface obj = new Demo(); obj.method1();
Fungsi dari kode program tersebut adalah...
a. membuat objek obj turunan dari class Demo
b. membuat objek obj dengan menggunakan fasilitas dari Demo
c. membuat objek obj dengan menggunakan fasilitas dari MyInterface
d. membuat objek dengan sistem bertingkat kolaborasi antara MyInterface dan Demo
e.kesalahan program
5. Hubungan antara interface dan inheritance adalah..
a. inheritance sama dengan interface
b. interface wajib ada dalam inheritance
c. inheritance (pewarisan) adalah hubungan antara superclass (class induk) dengan subclass-nya (class anak)
d. extends digunakan untuk mewariskan method dan properti dari class induknya, sedangkan implements digunakan untuk mewariskan interface
e. extends digunakan untuk mewariskan method dan property dari class induknya, sedangkan implements digunakan untuk mewariskan class
6. AWT adalah singkatan dari....
a. abstract toolkit
b. abs windowing tool
c. abstract wind toolkit
d. accurate windowing toolkit
e. absolute windowing toolkit
7. API adalah singkatan dari...
a. a form programming interface
b. abstract programming Interface
C. absolute programming interface
d. applicating programming interface
e. application programming interface
8. Perhatikan kode program berikut.
import java.awt.Frame;
import java.awt.Button;
Fungsi dari kode program tersebut adalah...
a. melakukan import frame
b. melakukan import library java frame
c. melakukan import library java frame dan button
d. melakukan import library java button
e. melakukan import package
9. Perhatikan kode program berikut.
Frame f = new
Frame ("LATIHAN MENGGUNAKAN
BUTTON 1");
Button b = new
Button ("Tekan Di sini");
Fungsi kode program tersebut adalah....
a. membuat header frame
b. membuat header button
C. import library frame dan button
d. membuat objek frame dengan header "LATIHAN MENGGUNAKAN BUTTON 1" dan membuat objek button dengan tulisan "Tekan Di sini"
e. membuat objek class dengan header "LATIHAN MENGGUNAKAN BUTTON 1" dan membuat objek class dengan tulisan "Tekan Di sini"
10. Perhatikan kode program berikut. f.add(checkbox1);
f.add(checkbox2);
f.setSize(400,400);
f.setLayout(null);
f.setVisible(true);
Fungsi kode program tersebut adalah .....
a. menambahkan checkbox
b. mengatur posisi checkbox
c. melakukan import sebuah checkbox
d. membuat tulisan checkbox1 dan checkbox2
e. menambahkan checkbox dan mengatur posisinya
11. ActionListener dalam pemrograman GUI Java adalah ....
a. salah satu bentuk objek
b. bentuk lain dari event click
C. salah satu bentuk objek dan class
d. merupakan sebuah function yang memanggil class
e. ActionListener digunakan untuk mendengarkan action dari event
12. Perbedaan antara Java Swing dan AWT adalah ......
a. Swing lebih berat dan memakan memori
b. tampilan AWT lebih baik dari Swing
C. AWT dapat diaplikasikan sebagai applet
d. Swing tidak dapat digunakan sebagai applet
e. AWT adalah kumpulan komponen GUI (widget) dan layanan terkait lainnya yang diperlukan untuk pemrograman GUI di Java
13. Pengertian dari thread adalah....
a. salah satu bentuk method
b. bentuk lain pembentukan objek
c. thread adalah rangkaian eksekusi dari sebuah aplikasi Java dan setiap program Java minimal memiliki satu buah thread
d. thread adalah rangkaian eksekusi dari sebuah aplikasi Java dan setiap program Java minimal memiliki tiga buah thread
e. thread adalah rangkaian eksekusi dari sebuah aplikasi Java dan setiap program Java minimal memiliki satu buah thread dan class
14. Berikut pendapat yang salah tentang thread adalah ....
a. thread memiliki life cycle
b. thread pada umumnya berbentuk method atau objek
C. thread umumnya digunakan untuk pemrograman multitasking dan networking, yang melibatkan pengaksesan ke sumber daya secara bersamaan
d. thread merupakan kemampuan yang disediakan oleh Java untuk membuat aplikasi yang tangguh, karena thread dalam program memiliki fungsi dan tugas tersendiri
e. dengan adanya thread, dapat membuat program yang lebih efisien dalam hal kecepatan dan penggunaan sumber daya, karena Anda dapat membagi proses dalam aplikasi pada waktu yang sama
15. Berikut yang bukan merupakan bagian thread life cycle adalah .....
a. new
b. dead
C. class
d. break
e. runnable
16. Perhatikan kode program berikut.
1 public class UjiThreadl implements Runnable {
2 public static void main(String[] args) {
3 Thread Threadl = new Thread ("Percobaan 1");
4 Thread Thread2 = new Thread ("Percobaan 2");
5 Threadl.start();
6 Thread2.start();
7 System.out.println ("thread berjalan:");
8 System.out. println(Thread1. getName());
9 System.out. println(Thread2. getName());
10 }
11
12 public void run() {
13 }
14 }
Hasil dari kompilasi program tersebut adalah....
a. Thread berjalan
Percobaan 1
Percobaan 2
b. Thread berjalan:
Percobaan 2
Percobaan 2
C. Thread berjalan:
Percobaan 1
Percobaan 2
d. Thread berjalan:
Percobaan 2
Percobaan 1
e. pesan error
17. Fungsi New dalam thread life cycle adalah....
a. thread menunggu secara bergantian untuk running atau berjalan
b. menentukan tahap berikutnya yang akan dimasuki suatu thread
C. pada fase ini, terjadi pembentukan thread, thread akan berjalan jika method start () terbentuk dan berjalan (terpanggil)
d. pada bagian ini, thread berhenti dan dinyatakan mati/terhenti atau biasa disebut dead state
e. instance threads siap dipanggil dengan method start(). Kontrol thread diberikan kepada scheduler untuk menyelesaikan eksekusi
18. Fungsi Runnable dalam thread life cycle adalah....
a. thread menunggu secara bergantian untuk running atau berjalan
b. menentukan tahap berikutnya yang akan dimasuki suatu thread
C. pada fase ini, terjadi pembentukan thread, thread akan berjalan jika method start() terbentuk dan berjalan (terpanggil)
d. pada bagian ini, thread berhenti dan dinyatakan mati/terhenti atau biasa disebut dead state
e. instance threads siap dipanggil dengan method start(). Kontrol thread diberikan kepada scheduler untuk menyelesaikan eksekusi
Untuk mengerjakan soal nomor 19 dan 20, perhatikan kode program berikut.
1 //STEP 1
2 class Multix implements Runnable {
3 public void run() {
4 System.out.println("thread is running...");
5 }
6 //STEP 2
7 public static void main (String args()) {
8
9 //STEP 3 Multix ml = new Multix();
10 Thread tl = new Thread(ml);
11 //Step 4
12 tl.start();
13 }
14 }
19. Fungsi dari //STEP 2 adalah....
a. menutup thread
b. membuat thread
C. memanggil thread
d. membuat objek baru
e. menjadi method utama
20. Fungsi dari //STEP 3 adalah ....
a. membuat thread
b. memanggil thread
C. membuat objek baru
d. menghentikan thread
e. membuat objek berupa thread
21. Fungsi thread dalam pemrograman adalah ......
a. bentuk objek Java
b. bentukan class Java
C. membuat life cycle Java
d. kumpulan blok eksekusi
e. bagian program yang akan dieksekusi berulang
22. Perbedaan single thread dan multithread adalah .....
a. jumlah class-nya
b. jumlah thread-nya
C. jumlah interface-nya
d. bergantung pada jumlah objeknya
e. bergantung pada jumlah package-nya
23. Berikut pernyataan yang tepat tentang interface adalah....
a. interface adalah thread
b. interface adalah class baru
C. interface adalah objek baru
d. interface harus di-extends oleh class
e. interface wajib di-implement oleh class
24. Deklarasi interface yang tepat adalah....
a. interface();
b. class <interface name>
C. interface{interface name}
d. class name class name object = new
e. interface <interface name>{}
25. Alasan penggunaan interface dalam Java adalah .....
a. sebagai penghubung class
b. sebagai penghubung objek
c. dapat mendukung multi-inheritance
d. digunakan untuk membuat class baru
e. dapat digunakan untuk membuat objek baru
Untuk menjawab soal nomor 26-28, perhatikan kode program berikut.
1 //STEP 1
2 interface printable {
3 void print();
4 }
5
6 //STEP 2
7 class A6 implements printable {
8 public void print() {
9
10 //STEP 3
11 System.out.println("Hello");
12 }
13
14 //STEP 4
15 public static void main (String args[]) {
16
17 //STEP 5
18 A6 obj = new A6();
19 obj.print();
20 }
21 }
26. Bagian yang menunjukkan pembentukan interface adalah....
a. //STEP 1
b. //STEP 2
c. //STEP 3
d. //STEP 4
e. //STEP 5
27. Bagian yang menunjukkan implementasi interface adalah..
a. //STEP 1
b. //STEP 2
c. //STEP 3
d. //STEP 4
e. //STEP 5
28. Bagian yang membuat objek dari hasil implementasi interface adalah
a. //STEP 1
b. //STEP 2
c. //STEP 3
d. //STEP 4
e. //STEP 5
29. Berikut pernyataan yang tepat untuk event- driven adalah...
a. ActionListener bukan bagian dari event-driven.
b. Setiap aplikasi tidak membutuhkan event-driven.
c. Event-driven digunakan dalam pemrograman teks.
d. Event-driven adalah salah satu sarana komunikasi antara pengguna dan mesin.
e. Event-driven tidak terlalu dibutuhkan dalam pemrograman modern berbasis desktop.
30. Frame dalam pemrograman Java digunakan untuk....
a. mengelola property
b. mengelola basis data
c. mengelola komponen
d. mengelola ActionListener
e. memperindah tampilan program
B. Jawablah pertanyaan-pertanyaan berikut dengan benar......
1. Perhatikan bagan berikut.
Jelaskan yang terjadi pada tahapan thread life cycle tersebut.
2. Tuliskan langkah-langkah membuat interface Java menggunakan editor NetBeans.
3. Jelaskan fungsi interface dalam sebuah aplikasi menurut pendapat Anda.
4. Tuliskan langkah-langkah untuk membuat sebuah project Android sederhana dengan menggunakan Android Studio.
5. Jelaskan menurut pendapat Anda kriteria aplikasi yang baik.
6. Jelaskan lima komponen AWT yang Anda ketahui.
7. Jelaskan lima komponen Swing yang Anda ketahui.
8. Tuliskan langkah-langkah untuk membuat program dengan menggunakan JOptionPane yang menampilkan "HAI, SELAMAT DATANG DI JAVA
9. Jelaskan perbedaan penggunaan interface Runnable dan turunan class Thread untuk membuat thread.
10. Perhatikan tabel berikut.
Jelaskan kegunaan dari masing-masing komponen pembuatan frame pada tabel tersebut.
C. Praktik
1. Perhatikan kode program berikut.
1 //STEP 1
2 import java.awt.event.*;
3 import javax.swing.*:
4
5//STEP 2
6 public class ButtonAction {
7 public static void main(String[] args) {
8 // STEP 3
9 JFrame f new JFrame("FORM SWING ACTION LISTENER");
10 final JTextField tf new JTextField();
11 tf.setBounds (50, 50, 150, 20);
12 // STEP 4
13 JButton b new JButton("TEKAN DI SINI"); 14 b.setBounds (50, 100, 95, 30);
15 // STEP 5
16 b.addActionListener(new ActionListener()
17 public void actionPerformed (ActionEvent e) { 18 tf.setText("HAI..ACTION");
19 }
20});
21 // STEP 6 22 f.add(b);
23 f.add(tf);
24 f.setSize (400, 400);
25 f.setLayout(null);
26 f.setVisible(true);
27 }
28 }
Tugas:
1. Implementasikan kode program tersebut pada komputer Anda.
2. Lakukan pengamatan terhadap hasil kompilasi.
3. Jelaskan kegunaan masing-masing STEP.
2. Dengan menggunakan JOptionPane, buatlah sebuah program yang akan menampilkan jendela dialog yang berisi tulisan setelah tombol ditekan. Terdapat empat buah tombol dengan ketentuan sebagai berikut.
a. Tombol 1, akan menampilkan "HALO!!!!"
b. Tombol 2, akan menampilkan "SELAMAT DATANG"
c. Tombol 3, akan menampilkan "DI PEMROGRAMAN"
d. Tombol 4, akan menampilkan "BERORIENTASI OBJEK"
Buatlah program tersebut sesuai ketentuan tersebut, Anda dibebaskan mengatur tampilan layout tombol dan program sesuai keinginan.
Ulangan Akhir Bab 3
A. Pilihlah salah satu jawaban yang tepat
1. Pengertian import library dalam Java adalah....
a. membuat paket Java
b. membuat objek Java
C. memanggil fasilitas Java
d. membuat class library Java
e. mempersiapkan komponen Java
2. Berikut yang bukan merupakan komponen dalam koneksi basis data Java adalah....
a. Driver
b. Statement
C. Connection
d. Import SQL
e. DriverManager
3. Berikut yang merupakan syntax SQL untuk membuat tabel Customers adalah....
4. Berikut yang merupakan syntax SQL untuk insert data ke tabel adalah ....
a. INSERT INTO TABLE NAME VALUES (valuel, value2, value3,...valueN);
b. INSERT INTO TABLE NAME (column1, column2, column3.... columnN)
VALUES (valuel, value2, value3,...valueN);
c. INSERT INTO TABLE NAME (columni, column2, column3,... columnN)
d. INSERT INTO (columni, column2, column3,...columnN) VALUES (valuel, value2, value3,...valueN);
e. INSERT INTO TABLE NAME (columni, column2) VALUES (valuel, value2, value3,...valueN);
Untuk menjawab soal nomor 5-7, perhatikan kode program berikut.
1 import java.sql.*;
2
3 public class select_data {
4 //STEP 1
5 // JDBC driver name and database URL
6 static final String JDBC_DRIVER = " "com.mysql.jdbc.Driver";
7 static final String DB URL =
8
9 // Database credentials
10 static final String USER = "root";
11 static final String PASS = "";
12
13 public static void main(String[] args) {
14 Connection conn null;
15 Statement stmt = null;
16 try {
17
18//STEP 2: Register JDBC driver
19 Class.forName("com.mysql.jdbc.Driver");
20
21 //STEP 3: Open a connection
22 System.out.println("Connecting to a selected database...");
23 conn DriverManager.getConnection(DB URL, USER, PASS);
24 System.out.println("Connected database successfully...");
25
26 //STEP 4: Execute a query
27 System.out.println("Creating statement...");
28 stmt = conn.createStatement();
29
30 String sql = "SELECT id, first, last, age FROM Registration";
31 ResultSet rs = stmt.executeQuery (sql);
5. Bagian yang menunjukkan execute query adalah....
a. STEP 1
b. STEP 2
C. STEP 3
d. STEP 4
e. import java.sql.*;
6. Maksud dari STEP 2 adalah ......
a. registrasi komponen JDBC Java
b. mengoneksikan basis data dengan internet
c. memanggil komponen JDBC secara online
d. membuat koneksi client-server secara online
e. registrasi komponen JDBC Java secara online
7. Bagian yang menunjukkan pengambilan nilai dari user dan password basis data serta URL adalah.....
a. STEP 1
b. STEP 2
C. STEP 3
d. STEP 4
e. import java.sql.*;
8. Perhatikan kode program berikut.
ResultSet rs = stmt.
executeQuery (sql)
Fungsi dari kode program tersebut adalah.....
a. membuat query
b. menghapus class
C. mengeksekusi query
d. menghapus tabel dan query
e. memasukkan data dengan query
9. Perhatikan kode program berikut.
Connection con =
DriverManager.getConnection (n
ilaiURL, user,pass);
Fungsi dari kode program tersebut adalah....
a. membuat query
b. menghapus class
c. membuat koneksi
d. mengeksekusi query
e. memasukkan data dengan query
10. Perhatikan kode program berikut.
System.out.println("Creating statement...");
stmt = conn.createStatement();
String sql = "UPDATE Registration 17 +
"SET age = 300 WHERE id in (100, 101)";
stmt.executeUpdate(sql);
// Now you can extract all the records
// to see the updated records
sql = "SELECT id, first, last, age FROM Registration";
ResultSet rs = stmt.executeQuery(sql);
Fungsi dari kode program tersebut adalah.....
a. menghapus data
b. memasukkan data dengan age = 300
c. meng-update age dan menampilkan data pada age = 300
d. mengeksekusi query dengan update data age 300 menjadi 100 dan 101
e. meng-update age menjadi 300 pada id 100 dan 101 serta menampilkan data
11. Syntax untuk membuat basis data adalah....
a. Create tables...;
b. Create table sukses;
C. Create database user;
d. Create database (java);
e. Drop user;
12. Langkah-langkah untuk membuat tabel dalam basis data adalah.....
a. membuat koneksi, membuat basis data, dan mengelola tabel
b. membuat basis data, membuat field, dan membuat tabel
c. membuat koneksi, membuat basis data, dan membuat tabel
d. membuat tabel, membuat basis data, dan membuat koneksi
e. membuat basis data, membuat koneksi, dan membuat tabel
13. Library yang dibutuhkan untuk mengoneksikan basis data ke Java adalah.....
a. import java.sql.*;
b. import java.awt.*;
c. import java.swing.*;
d. import javax.media.*;
e. import java. JoptionPane;
14. Fungsi registrasi JDBC dalam pemrograman Java adalah.....
a. membuat tabel dalam Java
b. membuat basis data dalam Java
c. menentukan jenis tampilan dalam Java
d. menentukan jenis mesin server basis data
e. memasukkan komponen basis data dalam bentuk button
15. Berikut yang dimaksud dengan bagian database credentials dalam pemrograman Java adalah.....
a. membuat tabel dalam Java
b. membuat basis data dalam Java
C. menentukan username dan password
d. menentukan jenis tampilan dalam Java
e. menentukan jenis mesin server basis data
B. Jawablah pertanyaan-pertanyaan berikut dengan benar.
1. Tuliskan library Java yang digunakan untuk mengaktifkan koneksi basis data Java.
2. Perhatikan kode program berikut.
//Retrieve by column name
int id = rs.getInt("id");
int age = rs.getInt("age");
String first = rs.getString("first");
String last = rs.getString("last");
Jelaskan fungsi kode program tersebut.
Untuk menjawab soal 3 dan 4, perhatikan kode program berikut.
public class create_database {
// JDBC driver name and database URL
static final String JDBC_DRIVER = "com.mysql.jdbc.Driver";
static final String DB_URL = "jdbc:mysql://localhost/SORRY";
// Database credentials
static final String USER = "root";
static final String PASS = "";
3. Tuliskan potongan kode program yang menunjukkan deklarasi jenis server basis data.
4. Tuliskan potongan kode program yang menunjukkan identifikasi username dan password.
5. Tuliskan jenis-jenis server basis data yang dapat terkoneksi dengan Java. mengelola basis data dengan Java.
6. Tuliskan aplikasi-aplikasi yang diperlukan untuk membuat sebuah program yang dapat
7. Jelaskan komponen-komponen yang terdapat pada JDBC.
8. Jelaskan perbedaan pengelolaan tabel dengan DDL dan DML.
9. Jelaskan perintah yang umum digunakan dalam DDL dan DML.
10. Tuliskan langkah-langkah instalasi JDBC untuk MySQL Database Server.
C. Praktik
Buatlah sebuah aplikasi dengan Java yang terkoneksi dengan basis data TOKO, dan memiliki tabel Barang dengan struktur sebagai berikut.
Catatan:
1. Nilai dimasukkan berdasarkan input user.
2. Implementasikan dengan menggunakan Java Scanner atau JOptionPane.
Ulangan Akhir Bab 4
A. Pilihlah salah satu jawaban yang tepat.
1. Library JMF dalam Java digunakan untuk....
a. memanggil fasilitas Java multimedia
b. mempersiapkan komponen Java multimedia
c. memasangkan atau menempelkan semua komponen dari AWT pada lembar kerja (frame)
d. memungkinkan audio, video, dan media berbasis waktu lainnya ditambahkan ke aplikasi dan applet Java
e. merupakan komponen GUI yang terdiri atas widget grafik yang dapat ditambahkan dan diatur dalam tampilan
2. Di antara potongan kode berikut yang tidak digunakan dalam pemrograman Java dengan JMF adalah....
a. void stop() {
myPlayer.stop();
myPlayer.close();
}
b. import java.io.File;
import javax.media.Manager;
import javax.media.Player;
c. try {
Driver myDriver = new oracle.jdbc.driver.OracleDriver();
DriverManager.registerDriver (myDriver );
}
d. Manager.createRealizedPlayer (new File("........").toURL()).
start();
} catch (Exception ex) {
ex.printStackTrace();
}
e. void play() {
try {
URL url = new URL("file", null, "D:\\Lafadz.mpg");
myPlayer = Manager.createRealizedPlayer (url);
myPlayer.start();
} catch (Exception e) {
System.out.println("Unable to create the audioPlayer :" + e);
}
}
3. Berikut yang merupakan syntax untuk import library kebutuhan pemrograman dengan JMF adalah....
a. import java.awt.*;
b. import java.sql.*;
c. setBounds (50,100,80,30); f.add(b);
d. static final String JDBC_DRIVER = "com.mysql.jdbc.Driver";
static final String DB_URL = "jdbc:mysql://localhost/";
e.import java.io.File;
import javax.media.Manager;
import javax.media.Player;
4. Berikut yang merupakan syntax untuk mengatur posisi pada Java Media Player adalah....
a. myPlayer.start();
} catch (Exception e) {
b. myPlayer.stop();
myPlayer.close();
c. this.getContentPane().add(panelControl, BorderLayout.SOUTH); this.getContentPane().add(visualComponent, BorderLayout.CENTER);
d. this.pack();
this.setSize (new Dimension (500, 400));
this.setVisible(true);
e. URL url = new URL("file", null, "D:\\Lafadz.mpg");
myPlayer = Manager.createRealizedPlayer (url);
myPlayer.start();
Untuk menjawab soal nomor 5-8, perhatikan kode program berikut.
1 //STEP 1
2 public class HelloJMF extends JFrame {
3 static Player myPlayer = null;
4 public HelloJMF() {
5 super("Demo JMF");
6
7 //STEP 2
8 play();
9 Component panelControl = myPlayer.getControlPanelComponent();
10 Component visualComponent = myPlayer.getVisualComponent();
11
12 //STEP 3
13 this.getContentPane().add(panelControl, BorderLayout.SOUTH);
14 this.getContentPane().add(visualComponent, BorderLayout.CENTER);
15 this.addWindowListener(new WindowAdapter()
16 //STEP 4
17 void play() {
18 try {
19 URL url = new URL("file", null, "D:\\Lafadz.mpg");
20 myPlayer = Manager.createRealizedPlayer (url);
21 myPlayer.start();
22 } catch (Exception e) {
23 System.out.println("Unable to create the audioPlayer :" + e);
24 }
25 }
26
27 //STEP 5
28 void stop() {
29 myPlayer.stop();
30 myPlayer.close();
31 }
32 }
5. Bagian yang menunjukkan execute file media adalah ....
a. STEP 1
b. STEP 2
c. STEP 3
d. STEP 4
e. STEP 5
6. Fungsi dari STEP 2 adalah.....
a. membuat koneksi file online
b. memanggil komponen JMF online
c. mengoneksikan basis data dengan internet
d. registrasi komponen library Java Media Framework (JMF)
e. memanggil method Java Media Framework (JMF) untuk memainkan atau menjalankan media
7. Bagian yang menunjukkan pengambilan file dan menjalankan file media adalah ...
a. STEP 1
b. STEP 2
c. STEP 3
d. STEP 4
e. STEP 5
8. Fungsi dari STEP 4 dan STEP 5 adalah...
a. hanya mengambil file
b. hanya menghentikan file
c. mengambil file dan menghentikan file
d. mengambil file, menghentikan, dan menjalankan kembali
e. mengambil file, menjalankan, dan menghentikan proses pemutaran file
9. File yang tidak di-support oleh JMF Media Player adalah....
a. AVI/
b. RAR
c. MIDI
d. MPEG
e. QuickTime
10. Berikut yang bukan kegunaan framework dalam dunia pemrograman adalah....
a. mempercepat proses coding dan memudahkan testing program
b. mempercepat proses pembuatan aplikasi, baik itu aplikasi berbasis desktop, mobile, maupun web
c. membantu para developer dalam perencanaan, pembuatan, dan pemeliharaan sebuah aplikasi
d. memudahkan para developer dalam membaca kode program dan lebih mudah dalam mencari bugs
e. menghasilkan aplikasi yang menjadi lebih stabil dan andal, karena framework sudah melalui proses uji, baik itu stabilitas maupun keandalannya
11. Format file yang tidak didukung dalam JMF adalah....
a. MP3
b. JPG
c. WAV
d. MIDI
e. MPG
12. Berikut yang tidak termasuk file yang dibutuhkan untuk membuat aplikasi media player dengan JMF adalah.....
a.import.java.sql.*;
b. import java.io.File;
c. import java.awt.event.*;
d. import javax.media.Player;
e. import javax.media.Manager;
Untuk menjawab soal nomor 13 dan 14.
1 //STEP 1
2 import java.io.File;
3 import javax.media.Manager;
4 import javax.media.Player;
5
6 //STEP 2
7 public class Main_lagu {
8
9 static Player audioPlayer = null;
10 public static void main(String[] args) {
11 try {
12 //STEP 3
13 System.out.println(" MANA GAMBARNYA YA....");
14 Manager.createRealizedPlayer (new File("D:\\XXX.mp3").toURL()). start();
15 } catch (Exception ex) {
16 ex.printStackTrace();
17}
18 }
19 }
13. Bagian yang menunjukkan import library JMF adalah....
a.STEP 1
b. STEP 2
c. STEP 1 dan STEP 2
d. STEP 1 dan STEP 3
e. STEP 2 dan STEP 3
14. Jenis file yang diputar pada kode program tersebut terlihat pada....
a. STEP 2
b.STEP 3
c. STEP 1 dan STEP 2
d. STEP 1 dan STEP 3
e. STEP 2 dan STEP 3
15. Perhatikan kode program berikut.
this.getContentPane().
add (panelControl,
BorderLayout.SOUTH);
this.getContentPane().
add (visualComponent,
BorderLayout.CENTER)
Fungsi dari kode program tersebut adalah....
a. mengatur ukuran media player
b. membuka file media yang akan diputar
c. meng-import library package media player
d. membuat objek turunan yang akan dipanggil
e. mengatur posisi media player di layar monitor
B. Jawablah pertanyaan-pertanyaan berikut dengan benar.
1. Tuliskan dan jelaskan library Java yang digunakan untuk mengaktifkan Java Media Framework (JMF).
2. Perhatikan kode program berikut.
Manager.createRealizedPlayer (new File("........").toURL()).start();
Jelaskan fungsi dari kode program tersebut.
3. Jelaskan fungsi dari JMF dalam Java.
4. Jelaskan langkah-langkah untuk membuat pemutar film dengan JMF.
5. Jelaskan langkah-langkah untuk menginstal JMF.
6. Jelaskan arsitektur dari JMF.
7. Jelaskan langkah-langkah untuk membuat mp3 player sederhana dengan Java.
8. Jelaskan langkah-langkah untuk menggunakan file multimedia secara langsung dari JMF tanpa Java.
9. Jelaskan langkah-langkah men-download JMF.
10. Jelaskan file media yang di-support oleh JMF.
C .Praktik
Buatlah sebuah aplikasi Java dengan JMF untuk menampilkan file dengan tipe .mpeg dengan ketentuan sebagai berikut.
1. Bentuk tampilan program bebas.
2. Dapat menggunakan tipe eksekusi dengan command line ataupun berbasis frame JMF.
3. Setiap bagian blok kode program diberi remark atau tanda untuk menjelaskan proses yang terjadi pada program.
Ulangan Akhir Bab 5
A. Pilihlah salah satu jawaban yang tepat.
1. Pengertian MVC dalam Java adalah.....
a. class untuk mengatur struktur dari aplikasi yang dibuat
b. method untuk mengatur struktur dari aplikasi yang dibuat
c. konsep untuk mengatur struktur dari aplikasi yang dibuat
d. package untuk mengatur struktur dari aplikasi yang dibuat
e. konsep untuk mengatur struktur dari aplikasi yang dibuat dengan memecah class dalam bagian yang lebih kecil dan saling terkait
2. Berikut yang bukan merupakan komponen dari MVC adalah...
a. view
b. class
c. model
d. control
e. pattern
3. Berikut yang merupakan kegunaan class control adalah ...
a. membentuk objek baru
b. menjadi tampungan class
c. menjadi tampungan method
d. untuk mengontrol variabel saja
e. untuk mengontrol variabel yang masuk serta mengarahkan variabel ke class lainnya
4. Class model merupakan otak dari operasi MVC. Di antara pernyataan berikut, yang merupakan kegunaan class model adalah...
a. Class model merupakan class utama serta tampilan utama yang akan dieksekusi pertama kali oleh program.
b. Class model merupakan class yang akan mengontrol variabel yang masuk serta mengarahkan ke class lainnya.
c. Dalam class model dibentuk GUI yang dibutuhkan untuk mengakomodasi penghitungan rumus persegi panjang dengan MVC.
d. Dalam class model dibentuk variabel dan method yang dibutuhkan untuk mengakomodasi proses pengolahan data.
e. Dalam class model dibentuk objek variabel yang dibutuhkan untuk melakukan operasi matematika dengan MVC.
5. Berikut yang merupakan kegunaan class view adalah ....
a. membuat variabel
b. menampilkan data
c. menampilkan class
d. menampilkan objek
e. menampilkan hasil operasi
6. Kegunaan sebuah pattern adalah...
a. menampilkan hasil
b. mempersiapkan hasil
c. menampilkan frame
d. menampilkan tampilan input data
e. menampilkan tampilan input dan mengakomodasi class lainnya
Untuk menjawab soal nomor 7-9, perhatikan kode program berikut.
1 public class MVC Pattern {
2 public static void main (String[] args) {
3 //STEP 1
4 Scanner keyboard = Scanner(System.in);
5 //STEP 2
6 Model model = input_tampil();
7 View view = new View();
8 //STEP 3
9 Control controller = new Control (model, view);
10 controller.updateView();
11 }
12 }
7. STEP 1 pada kode program tersebut menunjukkan...
a. membuat objek operasi
b. memanggil class keyboard
c. membuat objek untuk input
d. menggunakan fungsi scanner
e. menampilkan input dari keyboard
8. Step yang berfungsi melakukan pemanggilan class view untuk digunakan sebagai pembuatan objek baru adalah....
a. STEP 1
b. STEP 2
c. STEP 3
d. STEP 1 dan STEP 2
e. STEP 1 dan STEP 3
9. Fungsi STEP 3 adalah......
a. membuat class baru
b. membuat method baru
c. hanya membuat objek baru
d. membuat class dan menggunakan class control
e. membuat objek berupa controller dan dapat menggunakan method yang ada dalam class control
10. Berikut yang bukan keuntungan menggunakan MVC adalah...
a. class coding dapat dipisah dengan class viewer
b. setiap bagian program memiliki fungsi kerjanya masing-masing
c. hak akses user untuk membuka program lebih mudah
d. class dibagi sesuai dengan peruntukannya masing-masing
e. jika ada kesalahan kode program, dapat langsung terdeteksi class-nya
11. Class yang akan dieksekusi pertama kali oleh program adalah....
a. GUI
b. model
c. view
d. control
e. MVC pattern
12. Fungsi dari package dalam MVC adalah...
a. model
b. view
c. control
d. class utama
e. subfolder project penyimpan class
13. Class yang digunakan untuk mengarahkan nilai variabel dalam teknik MVC adalah...
a. GUI
b. model
c. view
d. control
e. MVC pattern
14. Perhatikan kode program berikut.
import javax.swing.
SwingUtilities;
import mvc.Model.*;
import mvc.View.*;
import mvc.Controller.*;
Potongan kode program tersebut menunjukkan bahwa...
a. nilai dimasukkan dari program
b. program berjalan tanpa package
c. program menggunakan model import dari keyboard
d. program diaplikasikan dengan menggunakan tampilan form dengan control komponen Swing
e. program diaplikasikan dengan menggunakan tampilan form dengan control komponen AWT
15. Berikut pernyataan yang tepat tentang MVC programming adalah...
a. MVC tidak membutuhkan ActionListener jika diaplikasikan dengan form AWT dan Swing.
b. MVC menyulitkan teknik pemrograman karena adanya pembagian dalam class lain yang terpisah.
c. Pemrograman versi enterprise tidak memerlukan MVC karena telah menggunakan model GUI.
d. Konsep untuk mengatur struktur dari aplikasi yang dibuat dengan memecah class dalam bagian yang lebih kecil dan tidak saling terkait.
e. Penggunakan MVC akan memudahkan programmer untuk memisahkan aktivitas coding sehingga jika terdapat kesalahan, akan diperiksa per class, karena setiap class satu dengan yang lainnya saling berkaitan.
B. Jawablah pertanyaan-pertanyaan berikut dengan benar.
1. Tuliskan dan jelaskan library Java yang digunakan untuk memasukkan data melalui keyboard dan dapat diakses pada MVC pattern.
2. Jelaskan fungsi penting controller dalam MVC.
3. Jelaskan fungsi penting pattern dalam MVC.
4. Jelaskan langkah-langkah pembentukan aplikasi dengan metode MVC menggunakan NetBeans.
Untuk menjawab soal nomor 5-8, perhatikan potongan program berikut.
1 package Luas_Kubus;
2
3 public class Model {
4 private int Sisi;
5 private int Luas;
6
7 public int getSisi() {
8 return Sisi;
9 }
10
11 public void setSisi (int Sisi) {
12 this.Sisi = Sisi;
13 }
14
15 public int getLuas() {
16 return Luas;
17 }
18
19 public void setLuas (int Luas) { 20 this.Luas = Luas;
21 }
22}
5. Tuliskan variabel-variabel yang dimiliki oleh class Model.
6. Jelaskan sifat dari variabel-variabel yang terdapat pada class Model tersebut.
7. Tuliskan method-method yang dimiliki oleh class Model.
8. Jelaskan fungsi masing-masing method tersebut.
9. Jelaskan kegunaan pattern dalam MVC.
10. Buatlah sebuah contoh MVC pattern dalam kode program sederhana.
C. Praktik
Buatlah sebuah aplikasi Java, yang digunakan untuk menghitung luas lingkaran. Lakukan pemecahan masalah dengan menggunakan teknik MVC.
Catatan:
1. Nilai dimasukkan berdasarkan input user. 2. Kerjakan dengan Java-Editor atau NetBeans.
Ulangan Akhir Semester Genap
A. Pilihlah salah satu jawaban yang tepat.
1. Berikut yang merupakan kegunaan class Control adalah....
a. membentuk objek baru
b. menjadi tampungan class
c. menjadi tampungan method
d. mengontrol variabel yang ada
e. mengontrol variabel yang masuk serta mengarahkan variabel ke class lainnya
2. Pengertian MVC dalam Java adalah....
a. class untuk mengatur struktur dari aplikasi yang dibuat
b. konsep untuk mengatur struktur dari aplikasi yang dibuat
c. method untuk mengatur struktur dari aplikasi yang dibuat
d. package untuk mengatur struktur dari aplikasi yang dibuat
e. konsep untuk mengatur struktur dari aplikasi yang dibuat dengan memecah class dalam bagian yang lebih kecil dan saling terkait
3. Fungsi dari JDBC dalam Java Connection MySQL adalah...
a. membuat query di Java
b. mengeksekusi syntax SQL
c. konektor Java ke basis data
d. menjalankan basis data di Java
e. membuat objek basis data di Java
Untuk menjawab soal nomor 4-7, perhatikan kode program berikut.
1 //STEP 1
2 import java.sql.*;
3
4 //STEP 2
5 class MysqlCon {
6 public static void main(String args[]) {
7
8 //STEP 3
9 try {
10 Class.forName("com.mysql. jdbc.Driver");
11 Connection con = DriverManager.getConnection(
12 "jdbc:mysql:// localhost:3306/"sonoo", "root", "root");
13
14
15 //STEP 4
16 Statement stmt = con. createStatement();
17 ResultSet rs = stmt. executeQuery("select emp"); * from
18
19 //STEP 5
20 while (rs.next())
21 System.out.println(rs. getInt(1) + rs.getString (2) 11 + 11 + rs.getString(3)); 11 +
22 con.close();
23 } catch (Exception e) {
24 System.out.println(e);
25 }
26 }
27 }
4. Fungsi dari STEP 4 adalah...
a. memanggil tabel
b. mencetak isi tabel
C. menutup basis data dan tabel
d. melakukan import library Java
e. membuat syntax query dan mengeksekusi query
5. Bagian yang memanggil interface Driver basis data adalah....
a. STEP 1
b. STEP 2
c. STEP 3
d. STEP 4
e. STEP 5
6. Nama basis data dan tabel yang digunakan dalam kode program tersebut adalah..
a. root
b. jdbc
c. sonoo
d. mysql
e. localhost
7. Secara keseluruhan fungsi dari kode program tersebut adalah
a. memanggil tabel
b. menutup koneksi
c. membuka koneksi
d. mengoneksikan basis data
e. memanggil dan menampilkan isi data tabel
8. Berikut yang bukan merupakan bagian koneksi Java ke basis data adalah...
a. membuat class baru
b. membuat sebuah koneksi
c. mengeksekusi sebuah query
d. mengimpor package java.sql.*;
e. mendaftarkan driver atau pilih driver yang akan digunakan
9. Driver dan URL yang digunakan untuk koneksi dari Java ke MySQL adalah...
a. driver: com.mysql.jdbc.Driver, URL: jdbc:mysql://hostname/ databaseName;
b. driver: oracle.jdbc.driver.OracleDriver, URL jdbc:oracle:thin:@hostname:portN umber:databaseName;
c. driver: COM.ibm.db2.jdbc.net. DB2Driver, URL: jdbc:db2:hostname:portNumber/ databaseName
d. driver: com.sybase.jdbc.SybDriver, URL: jdbc:sybase:Tds:hostname:portNu mber/databaseName
e. driver: com.sybase.jdbc.SybDriver, URL: jdbc:db2:hostname:portNumber/ databaseName
Untuk menjawab soal nomor 10-12, perhatikan kode program berikut.
1 //STEP 1
2 import java.io.File;
3 import javax.media.Manager;
4 import javax.media.Player;
5
6 //STEP 2
7 public class Main2 {
8
9 //STEP 3
10 static Player audioPlayer null; =
11 public static void main(String[] args) {
12
13 //STEP 4
14 try {
15 Manager. createRealizedPlayer (new File("D:\\a.mp3").toURL()). start();
16 } catch (Exception ex) {
17 ex.printStackTrace();
18 }
19 }
10. Fungsi dari STEP 1 adalah....
a. membuka file multimedia
b. mengaktifkan library Java
c. menggunakan file IO Java
d. melakukan import library Java
e. mencari file multimedia dengan library Java
11. Bagian membuka dan menjalankan file musik adalah....
a. STEP 2
b. STEP 3
c. STEP 4
d. STEP 1 dan STEP 2
e. STEP 3 dan STEP 4
12. Secara keseluruhan kode program tersebut digunakan untuk...
a. menjalankan file video
b. melakukan import library Java
c. melakukan import file multimedia
d. mengambil file multimedia dan menjalankan file
e. hanya mengambil dan menyimpan file multimedia
13. Fungsi textbox dalam AWT dan Swing adalah...
a. memperindah tampilan
b. sebagai label dalam form
c. hanya sebagai media input hanya sebagai media output
e. sebagai media input dan output
14. Berikut yang merupakan komponen dari Swing adalah....
a. Button
b. Scrollbar
d. Checkbox
e. JComboBox
c. TextField
15. Kegunaan dari pattern adalah....
a. menampilkan hasil
b. menampilkan frame
c. mempersiapkan hasil
d. menampilkan tampilan input data
e. menampilkan tampilan input dan mengakomodasi class lainnya
16. Komponen driver basis data pada JDBC memiliki fungsi antara lain...
a. menangani koneksi ke basis data
b. fasilitas eksekusi syntax SQL dalam Java
c. membuat pernyataan SQL atau MySQL
d. menjalankan query SQL atau MySQL dalam basis data
e. melihat dan memodifikasi catatan atau record yang dihasilkan
17. Antarmuka yang memiliki objek yang digunakan programmer untuk mengirimkan pernyataan SQL ke basis data adalah ...
a. Driver
b. Connection
c. Statement
d. ResultSet
e. DriverManager
18. Perhatikan kode program berikut.
jdbc:oracle:thin:@
hostname:port
Number:databaseName
Format URL tersebut digunakan untuk....
a. MySQL
b. DB2
c. ORACLE d. SYBASE
e. MariaDB
19. Perhatikan kode program berikut.
String URL =
"jdbc:oracle:thin: username/ password@amrood:1521:EMP";
Connection conn
= DriverManager.
getConnection(URL);
Jenis setting koneksi basis data tersebut adalah..
a. hanya mengunakan URL basis data
b. menggunakan StatementSet
c. menggunaan String Connection MySQL
d. menggunakan basis data URL dan property objek
e. menggunakan basis data URL dengan username dan password
20. Urutan implementasi pembuatan tabel dalam basis data dengan Java adalah ...
a. membuat tabel → membuat basis data dan field
b. membuat basis data → membuat tabel membuat field
c. membuat koneksi membuat basis data membuat field
d. membuat koneksi membuat tabel → membuat basis data
e. membuat koneksi membuat basis data membuat tabel dan field
21. Bagian yang berguna untuk memastikan keberadaan media yang akan diproses, berupa gambar, suara, atau film pendek dalam JMF adalah...
a. input
b. proses
c. output
d. driver
e. koneksi
22. Perhatikan kode program berikut.
public void play() {
audioPlayer.start();
}
public void stop() {
audioPlayer.stop();
audioPlayer.close();
}
Kegunaan kode program tersebut dalam implementasi JMF adalah....
a. membuka file
b. menutup program
c. membuat kompilasi file
d. menjalankan dan menghentikan file
e. method untuk menjalankan file dan setelah berakhir menghentikan serta menutup file
23. Berikut kode program yang mengatur media player berada pada posisi off atau akan memutar media pada awal track adalah...
a. static Player audioPlayer = null;
b. static Player audioPlayer > 1;
c. static Player audioPlayer = 0;
d. static Player audioPlayer <> 1;
e. static Player audioPlayer = "";
24. Perhatikan kode program berikut.
Manager.
createRealizedPlayer (new
File("D:\\a.mp3").toURL()).
start();
}
catch (Exception ex) {
ex.printStackTrace();
}
Fungsi dari kode program tersebut adalah....
a. membuka file mp3
b. menghentikan file mp3
c. mengompilasi file mp3
d. media player berada pada posisi on atau akan memutar media pada awal track
e. media player berada pada posisi off atau akan memutar media pada awal track
25. Perhatikan kode program berikut.
void play() {
try {
URL url = new URL ("file",
null, "D:\\XXXX.mpg");
myPlayer Manager.
createRealizedPlayer (url);
myPlayer.start();
Fungsi dari kode program tersebut adalah...
a. menjalankan program media player
b. method untuk menjalankan file mpg
c. method untuk menghentikan file mpg
d. method untuk mencoba membuat koneksi mpg
e. membuat koneksi ke internet yang mengandung file mpg
Untuk menjawab soal nomor 26-28, perhatikan potongan kode program berikut.
private static Model input_
tampil() {
System.out.println("HITUNG LUAS PERSEGI KUBUS DENGAN MVC");
//STEP 1
Scanner keyboard = new
Scanner (System.in);
//STEP 2
Model tampil = new Model();
System.out.print("INPUT SISI: "); int x = keyboard.nextInt();
//STEP 3
tampil.setPanjang (x);
return tampil;
}
}
26. Kode program tersebut menunjukkan bahwa nilai variabel dimasukkan melalui..
a. user
b. objek
c. program
d. setPanjang
e. method tampil()
27. Fungsi dari STEP 1 adalah....
a. menampilkan hasil
b. melakukan scanning nilai
c. menampilkan tulisan teks "INPUT SISI:"
d. membuat objek untuk memasukkan nilai-nilai dari program
e. membuat objek untuk memasukkan nilai-nilai dari keyboard
28. Fungsi STEP 2 adalah....
a. Menampilkan hasil
b. Melakukan scanning nilai
c. Menampilkan tulisan teks "INPUT SISI:"
d. Membuat objek dan memasukkan nilai dari program
e. Membuat objek dan memasukkan nilai dari keyboard
29. ActionListener dalam pemrograman MVC diletakkan dengan bagian....
a. model
b. view
c. control
d. MVC pattern
e. statement
30. Class yang berguna untuk menerima nilai dari class Control dan mengoperasikan nilai tersebut serta menampilkan hasil akhir adalah.
a. model
b. view
c. control
d. MVC pattern
e. statement
B. Jawablah pertanyaan-pertanyaan berikut dengan benar.
1. Jelaskan jenis driver connection pada basis data Java.
2. Jelaskan langkah-langkah membuat koneksi Java ke basis data.
3. Jelaskan secara singkat tentang model, view, dan controller dalam Java.
4. Jelaskan Library yang perlu di-import ketika programmer akan membuat frame dengan Java.
5. Perhatikan kode program berikut.
import javax.swing.SwingUtilities;
import mvc.Model.*;
import mvc.View.*;
import mvc.Controller.*;
Jelaskan fungsi dari kode program tersebut.
Untuk menjawab soal nomor 6-7, perhatikan penjelasan berikut.
Sebuah Software House akan membuat basis data dengan menggunakan program MySQL, dengan nama basis data PURE_CONTROL dan tabel di dalamnya bernama OMG. Struktur tabel OMG adalah sebagai berikut.
6. Implementasikan penjelasan tersebut dengan MySQL.
7. Buatlah aplikasi sederhana untuk mengoneksikan basis data dan tabel tersebut menggunakan Java dan MySQL.
8. Jelaskan jenis server basis data, driver, serta URL driver yang dapat di-support oleh Java.
9. Perhatikan bagan berikut.
Buatlah penjelasan mengenai bagan tersebut yang berkaitan dengan implementasi JMF.
10. Jelaskan langkah-langkah untuk menambahkan library JMF.
C. Praktik
Buatlah sebuah aplikasi basis data menggunakan Java, dengan ketentuan sebagai berikut.
Nama basis data: Percobaan
Nama tabel : Siswa
Adapun struktur dari tabel tersebut adalah sebagai berikut.
Tugas:
1. Tambahkan fungsi yang dibutuhkan untuk mengoperasikan basis data, yaitu tambah, simpan, dan hapus data.
2. Desain GUI dengan menggunakan JOptionPane, Swing, atau Scanner Java.
Tidak ada komentar:
Posting Komentar