Your browser does not support inline frames or is currently configured not to display inline frames. Waktu Sisa : 0:59:50
1. Cara apa yang digunakan untuk membuat sebuah class menjadi class Thread?
Mengekstends thread deklarasi kelas
Mengimplements thread Runnable
Membuat objek thread setelah extends
Memanggil method start() setelah membuat objek
Meng override method run()
Semuanya Benar
2. Bagaimana cara untuk menghentikan operasi looping while pada Thread?
memberikan sebuah flag yang mengkondisikan syarat looping while tersebut terus mengulang atau berhenti mengulang.
memberikan sebuah flag untuk mengeksekusi method sleep() dengan kondisi yang ditentukan.
men-trigger Thread tersebut dari suatu external event yang ditetapkan, agar Thread berubah state.
memberikan sebuah flag untuk mengeksekusi method stop() dengan kondisi yang ditentukan.
memberikan sebuah flag untuk mengeksekusi method close() dengan kondisi yang ditentukan.
3. Cara mana yang paling tepat untuk menghentikan Thread pada J2ME? Menggunakan flags / variabel tambahan utuk mengecek apah thread masih
berjalan
Menggunakan method stop()
Meggunakan method interrupted()
Menggukan method yield()
Menggunakan method sleep()
4. Untuk menghentikan thread dibutuhkan
stop()
thread tidak dapat dihentikan
sleep()
thread hanya dapat dihentikan dengan meggunakan method finish() yang telah dideklarasikan dalam class tersebut
cancel()
5. Method pada class Thread yang support aplikasi desktop dan mobile adalah?
getAllStackTraces();
dumpStack();
getStackTrace();
getThreadGroup();
interrupt();
6. Jumlah minimum thread yang berjalan bersamaan, yang harus disupport oleh setiap MIDlet suite adalah?
1
3
10
Dua thread untuk setiap class dari MIDlet suite
7. Perhatikan code berikut ini. Keluaran apa yang akan dihasilkan?
Proses compile gagal karena sebuah error pada baris ke 4
Proses compile gagal karena sebuah error pada baris ke 7
Proses compile berhasil dan program berjalan tanpa error
Proses compile gagal karena sebuah error pada sebuah baris selain 4 atau 7
Proses compile berhasil, tapi program menghasilkan sebuah runtime exception atau error
8. Thread memungkinkan sebuah aplikasi Java untuk melakukan hal-hal berikut ini, kecuali..
Menjalankan suatu operasi tertentu pada background.
Melakukan beberapa perhitungan pada waktu yang bersamaan.
Melakukan banyak operasi secara berurutan (sekuensial).
Mengeksekusi suatu method, sementara method lain dalam keadaan dieksekusi (berjalan).
Melakukan beberapa eksekusi yang bersamaan.
9. Perhatikan kode berikut ini:
Mengapa berdasarkan kode diatas proses pertama, kedua, dan ketiga tidak selalu bekerja berurutan?
Karena terdapat pemanggilan method sleep() dalam loop
ketiga proses tersebut tidak tampil berurutan karena pada saat mereka berada pada state runnable(akan running), PROCESSOR-lah yang akan mengatur, thread mana yang akan tampil terlebih dahulu
ketiga proses diatas memang tidak tampil berurutan, tetapi thread pertama selalu tampil terlebih dahulu, baru kemudian proses kedua dan ketiga tampil secara acak tergantung oleh proses algorithma dalam PROCESSOR
ketiga proses diatas tidak tampil berurutan bergantung pada time slicing dan priority pada PROCESSOR
ketiga proses diatas tidak tampil berurutan bergantung pada time slicing pada PROCESSOR
ketiga proses diatas tidak tampil berurutan karena priority-nya berbeda
ketiga proses diatas tidak tampil berurutan karena ketiga process tersebut berada dalam kondisi waiting terlebih dahulu sebelum berada pada state runnable
10.
Pernyataan mana yang benar mengenai penggunaan object Thread di dalam sebuah CLDC 1.1 compliant virtual machine?
Untuk menghentikan sebuah Thread, seorang developer dapat menggunakan method stop()
Sebuah Thread dapat dihentikan hanya dari dalam sebuah class MIDlet
Sebuah Thread tidak mungkin bisa memaksa menghentikan Thread lain
Sebuah Thread hidup sampai keluar dari method run() yang dipanggil pada saat startup
11.
System.out.println(Thread.MAX_PRIORITY)Apakah output dari kode di atas?
1
10
15
50
100
12.
Berikut ini merupakan deklarasi constructor Thread, kecuali..
Thread();
Thread(String name);
Thread(Runnable target);
Thread(Runnable target, String name);
Thread(int c);
13.
Keluaran apa yang akan dihasilkan, jika sebuah pemanggilan terhadap method serviceRepaints(), memicu sebuah thread terpisah untuk memanggil method paint()?
Sebuah deadlock selalu terjadi
Sebuah exception akan dilempar pada saat runtime
MIDP bebas dari thread, maka tidak akan pernah terjadi deadlock
System akan mengalami deadlock jika caller method serviceRepaints() memegang sebuah lock, yang juga dibutuhkan oleh method paint()
14.
Yang bukan merupakan state dari thread adalah :
Alive
Running
Already
Suspended
Terminated
15.
Sebuah class dapat menjalankan sebuah thread jika
Merupakan instance dari java.util
Class tersebut mengoverride method run.
Menggunakan method start()
Terdapat dalam method run()
Terdapat dalam live thread
16.
Diantara pilihan berikut ini yang dikategorikan sebagai live thread adalah?
Running
Terminated
Ready
UpDate
Suspended
17.
Apabila sebuah MIDlet telah memasuki kondisi pause. Tindakan benar manakah untuk membuat MIDlet tersebut aktif?
MIDlet memanggil method startApp() kepunyaannya
MIDlet harus menunggu untuk di-jadwal ulang
MIDlet tidak dapat diubah menjadi kondisi aktif
MIDlet memanggil resumeRequest() melalui sebuah timer
18.
Apakah kegunaan dari Thread
Menjalankan beberapa proses secara bersamaan
Menjalankan proses secara berulang-ulang
Mengatur jalannya program
Menghentikan program yang sedang berjalan
19.
Langkah apakah yang harus kita tambahkan pada class CobaThread2 dan juga pada class Counter, sehingga apabila midlet tersebut dijalankan akan mendapatkan hasil sesuai dengan persyaratan berikut ini :1. Sebuah thread akan menjalankan looping 1 s.d 20,sekaligus mencetak nilai dari loop yang sedang berjalan, dimana pada setiap kelipatan 5 akan tampil string "hahahaha".2. Terdapat delay sebesar 1 detik, disetiap kelipatan 5, pada loop yang sedang berjalan
dan
dan
dan
dan
dan
dan
20.
Berikut ini method yang didukung pada J2ME thread adalah
active()
current()
join()
start()
sleep()
Your browser does not support inline frames or is currently configured not to display inline frames. Waktu Sisa : 0:57:51
1. Method dari Canvas yang kemudian di-override di dalam GameCanvas adalah?
paint()
getGraphics()
getKeyStates()
flushGraphics()
flushGraphics(int, int, int)
2. Graphics g = getGraphics();
Apakah output kode di atas?
Gambar sprite
Gambar kotak hitam
Gambar kotak putih
Tak muncul gambar apa-apa
3. Perhatikan code berikut ini:
Pilihan mana yang benar? serviceRepaints() di-block, menunggu return dari paint()
method paint() selalu dipanggil dua kali, salah satunya jika ada request terhadap repaint()
jika terjadi overlap pada dua region yang ditentukan di dalam repaint(), repaint() akan mencoba menggambar gabungan dari dua area tersebut
method paint() dipanggil tiga kali, salah satunya untuk repaint() dan serviceRepaints()
4. Sebuah game J2ME menggunakan GameCanvas dan perulangan yang sedikit lambat untuk mendapatkan key states, untuk kemudian memproses hasilnya. Jika seorang player menekan tombol atas dan bawah dengan cepat dan terus menerus, apa hasil tindakan tersebut ?
Semua penekanan akan hilang dan menghasilkan permainan yang buruk
Game akan berhenti dengan status ArrayIndexOutOfBoundsException karena penekanan tombol yang tak beraturan
getKeyStates akan memastikan bahwa tak ada penekanan yang hilang
Supaya game dapat dijalankan dengan baik, thread lain harus digunakan untuk mengawasi penekanan tombol
5. Apa kelebihan penggunaan GameCanvas?
memiliki method getKeyStates yang memudahkan pemilihan key
memiliki banyak thread
respon yang lebih cepat
menggunakan single thread
graphic yang lebih bersih
6. Di dalam spesifikasi JTWI 1.0, mana screen size yang direkomendasikan sebagai return dari Canvas.getHeight() dan Canvas.getWidth(), ketika dalam posisi full screen?
96x54 pixel
125x125pixel
176x208pixel
320x240pixel
7. Apa yang terlihat pada display ketika MIDlet dibawah ini dijalankan?
Sebuah java.lang.RuntimeException akan dilempar
Sebuah white screen akan ditampilkan sementara waktu, kemudian diikuti dengan tampilnya sebuah black screen
Sebuah black screen akan ditampilkan sementara waktu, kemudian diikuti dengan tampilnya sebuah white screen
Screen secara berkala berubah warna dari hitam ke putih, kemudian sebaliknya.
8. Jika pada saat pertama kali menjalankan Gamecanvas, kita sedang menahan sebuah tombol, apakah tombol itu akan terdeteksi oleh GameCanvas?
Benar
Salah
9. Apa yang harus dilakukan untuk menghindari efek berkedip pada display? memanggil method flushGraphics()
menggunakan teknik double buffering
mengisi file image dengan lengkap
mendefinisikan thread baru
menggunakan method getKeyStates()
10.
Perhatikan class berikut ini. Pernyataan mana yang benar mengenai lebar1, tinggi1 dan lebar2, tinggi2?
Pemanggilan terhadap setFullScreenMode() diabaikan, karena dimensinya telah ditentukan
Nilai tinggi1 selalu sama dengan tinggi2
Nilai lebar1 selalu sama dengan lebar2
System mencoba menyediakan maximum visible area dari MIDlet, dengan dimensi yaitu lebar2, tinggi2
11.
Pernyataan manakan yang benar di bawah ini dari GameCanvas ?
Akan menambah performance dari aplikasi
Mekanisme penekanan tombol akan berubah
Ukuran gambar yang bisa ditampilkan bergantung pada layar mobile device
Ukuran gambar yang bisa ditampilkan bergantung pada ukuran dimensi GameCanvas(tidak termasuk ticker, command, dsb)
12.
Pada saat penekanan tombol, tombol harus dilepaskan dahulu sebelum ditekan kembali agar dapat dideteksi oleh class GameCanvas
Benar
Salah
13.
Apa fungsi dari flushGraphics()?
menampilkan graphic ke display
untuk menggambarkan image graphic sementara
untuk menghindari flickering graphic
semua benar
14.
Bagaimana cara sebuah MIDlet yang menggunakan GameCanvas, dapat dengan efisien meng-update sebagian kecil region pada screen, dari data pada off-screen buffer?
Pixel yang tidak di-flush harus dibuat transparan
Panggil serviceRepaints() dan tentukan sebuah clip region pada method paint() di object Graphics
Panggil flushGraphics(int , int , int ) yang menentukan bagian dari region yang akan di-flush
Tulis code tambahan untuk menyatukan pemanggilan flushGraphics(), dari banyak loop ke satu pemanggilan
15.
Perhatikan code berikut ini:
Apa yang terjadi ketika serviceRepaints() dipanggil?
Application langsung memanggil method paint()
Application di-block hingga ada return dari method paint()
Application langsung memanggil method repaint()
Application di-block hingga ada return dari method repaint()
16.
Method mana yang digunakan untuk memperoleh sebuah game event yang berhubungan dengan key code pada device?
keyPressed()
getGameAction()
getKeyStates()
keyReleased()
Your browser does not support inline frames or is currently configured not to display inline frames. Waktu Sisa : 0:36:45
1. Sebuah MIDlet diciptakan dengan menggunakan fitur media yang tersedia di dalam MIDP 2.0. Perubahan apa yang dilakukan terhadap MIDlet untuk sebuah device yang mendukung full MMAPI
MIDlet tidak dapat digunakan dalam MMAPI
Semua code yang menghasilkan tone dihapus
Pembuatan object Player harus dimodifikasi
Tidak ada perubahan yang diperlukan. Media API MIDP merupakan turunan yang sesuai dari MMAPI
2. Suatu Player memainkan sebuah sound setelah method start() dipanggil. Cara mana yang paling efesien untuk mem-pause playback sehingga dapat dimulai secepat mungkin ketika dibutuhkan?
Panggil method stop() pada Player
Panggil method close() pada Player
Panggil method setRate(0) pada Player
Panggil System.gc untuk mengumpulkan semua resource yang ditandai bagi garbage collection
3. Property mana dari sebuah Player yang dapat dimodifikasi oleh program? time base
loop count
media source
ukuran dari data buffer
media content type
4. Berikut ini merupakan hierarki class dan interface MIDP 2.0, kotak kosong pada gambar berikut dapat diisi dengan..
Manager
PlayerListener
VolumeControl
Media Exception
5. Pada kondisi manakah, Player telah melepas hampir seluruh resourcenya? closed
prefetch
realized
started
unrealized
6. Method mana yang paling efisien untuk menghasilkan keheningan diantara tone di dalam sebuah tone sequence?
Pause playback dan tentukan volume menjadi -1
Gunakan RateControl dengan ToneControl
Gunakan constant ToneControl.SILENCE
Hentikan playback dari tone sequence kemudian restart
7. Perhatikan code berikut ini. Keluaran apa yang akan dihasilkan jika device tidak men-support mediaTime pada p?
outputString di-set menjadi "mainkan!", tapi media tidak dimainkan
outputString di-set menjadi "IO exception!", dan media tidak dimainkan
outputString di-set menjadi "mainkan!", media dimainkan dari awal
outputString di-set menjadi "media exception!", dan media tidak dimainkan
8. Wav merupakan sebuah content type yang di-support oleh device yang meng-eksekusi
code berikut ini. Pernyataan mana yang benar?
Hasilnya tergantung dari device bersangkutan
Sound.wav dimainkan pada device
Sebuah exception dihasilkan pada saat runtime
Tidak ada exception yang dilempar pada saat runtime. Tidak ada suara yang dimainkan.
9. Object apa yang harus diciptakan untuk menghasilkan sebuah tone sederhana?
Sebuah Player harus diciptakan
Sebuah Player dan ToneControl harus diciptakan
Sebuah Player dan sebuah PlayerListener harus diciptakan
Tidak ada. Manager dapat digunakan untuk menghasilkan sebuah tone sederhana
10.
Perhatikan dua code berikut ini. Pernyataan mana yang benar?
Dua code di atas akan menghasilkan keluaran yang sama
Code kedua memungkinkan developer untuk menentukan playback pitch
Code kedua memungkinkan developer untuk menentukan playback tempo
Manager.TONE_DEVICE_LOCATOR bukan merupakan field yang benar
11.
Perhatikan code berikut ini. Pernyataan mana yang benar?
Proses compile gagal
String "selesai" ditampilkan setelah playTone() dimainkan
String "selesai" ditampilkan langsung setelah playTone() dipanggil
Sebuah IllegalArgumentException dilempar pada saat runtime
12.
Sebuah game yang berjalan pada sebuah device J2ME yang support MMAPI, butuh memainkan tone pada background dari game. Sesekali game tersebut butuh memainkan suara ledakan.Code telah menciptakan dua object Player: satu untuk tone dan satu untuk audio WAV.Bagaimana developer mengetahui jika kedua audio stream dapat didengar secara simultan?
Memainkan audio stream secara simultan tidak dimungkinkan oleh implementasi MMAPI manapun
Developer dapat meng-query system menggunakan System.getProperty("supports.mixing");
Karena dua object Player telah diciptakan
13.
Yang termasuk method dari class ToneControl adalah?
setLevel()
playTone()
setSequence()
startPlayback()
14.
Media control mana yang ada pada setiap device MIDP 2.0?
ToneControl
PitchControl
VideoControl
RecordControl
VolumeControl
15.
Perhatikan code berikut ini:
Pernyataan mana yang benar ? Proses compile gagal
Program bergantung pada loop
Sebuah IllegalArgumentException dilempar pada saat runtime
Sebuah tone sequence muncul dan "Selesai" ditampilkan
16.
Ketentuan pada spesifikasi JTWI sehubungan dengan bagaimana device mengimplementasikan Mobile Media API adalah?
Sebuah device JTWI harus men-support MIDI file playback
Sebuah device JTWI harus men-support MP3 file playback
Sebuah device JTWI harus men-support WAV file playback
Sebuah device JTWI harus men-support HTTP, untuk proses download media file dari semua media format yang ter-support
Sebuah device JTWI harus men-support Real Time Streaming Protocol(RTSP) untuk proses download media file
17.
Manager.createPlayer() dapat memuat synchronous blocking I/O operation, memungkinkan eksekusi dalam rentang waktu yang tidak dapat ditentukan. Cara mana yang paling efektif untuk menciptakan sebuah object Player dan kemudian menerima event yang di-generate oleh Player tersebut
Pastikan System.gc dipanggil sebelum menciptakan Player
Ciptakan Player pada current thread dan dengarkan event-nya pada
Ciptakan Player dari sebuah InputStream, setelah mengkopi data ke dalam memory.
Ciptakan Player di dalam sebuah thread terpisah dari user interface, lalu ciptakan sebuah Player Listener yang menerima event dari Player ini.
18.
Apa itu TimeBase?
Sebuah interface top level MMAPI
Sebuah interface top level MIDP 2.0
Sebuah class MMAPI yang mengimplementasikan interface Control
Sebuah interface MIDP 2.0 meng-extends interface Control
19.
File obscure pada code di bawah ini merupakan sebuah content type yang tidak di-support oleh sebuah device.
Player di-set menjadi null
Sebuah exception dilempar pada saat runtime
File diterjemahkan menjadi sebuah file ASCII
File diterjemahkan menjadi sebuah file HTM
Your browser does not support inline frames or is currently configured not to display inline frames. Waktu Sisa : 0:55:8
1. Class apa saja yang dapat dimasukkan ke dalam append LayerManager ? class Layer;
class Image;
class Canvas;
class Sprite;
class TiledLayer;
2. Bagaimana hasil dari potongan listing program di bawah ini ?
3. Perhatikan program berikut ini.
layerManager.insert(gambar1, 0);layerManager.append(gambar2);layerManager.insert(gambar3, 3);layerManager.append(gambar3);layerManager.remove(layerManager.getLayerAt(2));
Apa yang akan ditampilkan pada saat program dijalankan?
java.lang.IndexOutOfBoundsException
gambar1 akan dihapus
gambar2 akan dihapus
gambar3 akan dihapus
gambar4 akan dihapus
4. Suatu image memiliki tinggi 300, lebar 400, background berwarna putih, dan dinyatakan dalam statement berikut ini :
layermanager.setViewWindow(40, 30, 450, 350)
Pernyataan mana yang benar ?
error exception.
menggambar semua screen menjadi putih
menampilkan gambar dengan resolusi 450 x 350 pada layar.
menampilkan gambar 300 x 400 pada layar.
menampilkan gambar 300 x 350 pada layar.
5. Apa yang akan ditampilkan pada layar, jika program dijalankan?
layerManager.insert(gambar1, 0);layerManager.append(gambar2);layerManager.insert(gambar3, 1);layerManager.append(gambar4);layerManager.append(gambar2);layerManager.append(gambar4);System.out.println(layerManager.getSize());
2
3
4
5
6
6. Suatu display screen dengan tinggi 176 dan dengan lebar 220, dinyatakan dalam statement berikut ini :
layermanager.setViewWindow(200, 250, 150, 150);
Pernyataan mana yang benar ?
error exception.
menggambar semua screen menjadi putih.
menampilkan skala gambar 300 x 400 menjadi 450 x 350 pada layar.
menampilkan gambar 300 x 400 pada layar.
menampilkan gambar 300 x 350 pada layar.
7. Perhatikan program di bawah ini.
layerManager.append(gambar1);layerManager.append(gambar2);layerManager.insert(gambar3, 0);layerManager.insert(gambar4, 2);
Apa yang akan ditampilkan ada saat program dijalankan, jika gambar diurut dari bawah ke atas?
java.lang.IndexOutOfBoundsException
exception
menggambar dengan urutan dari bawah ke atas :1. gambar32. gambar13. gambar24. gambar4
menggambar dengan urutan dari bawah ke atas :
1. gambar42. gambar13. gambar24. gambar3
menggambar dengan urutan dari bawah ke atas :1. gambar42. gambar33. gambar24. gambar1
8. Perhatikan code berikut ini:
Layer layer=sebuahLayerManager.getLayerAt(0);
Pernyataan mana yang benar?
Sebuah IllegalArgumentException akan dilempar
Sebuah ArrayIndexOutOfBoundsException akan dilempar
layer di-assign ke object Layer yang berlokasi pada index 0
getLayerAt() bukan merupakan method yang benar dari class LayerManager
9. Apa keuntungan penggunaan index pada insert(Layer l, int index) dibandingkan dengan append(Layer l) ?
dapat menambahkan layer pada LayerManager dengan parameter index.
dapat menyisipkan layer pada LayerManager.
dapat menampilkan layer pada LayerManager dengan menggunakan index.
dapat mengatur letak penggambaran pada index.
dapat mengambil nilai index layer pada LayerManager.
10.
Seorang mobile application developer menginginkan adanya pengurangan penggunaan memori dan peningkatan kecepatan sebuah game, dengan menggunakan MIDP 2.0 Game API. Berikut ini cara yang sesuai untuk memenuhi tujuan developer tersebut adalah?
GameCanvas game = new GameCanvas(true);// suppress key event
SpriteKu.collidesWith(ScriptLain, false);//pixel level false
LayerManager.setViewWindow(0, 0, getWidth()+50, getHeight()+50);
keyPressed(int keyCode){ //letakkan code untuk memproses keyPressed event disini}
while(gameActive){ int keyStates = getKeyStates(); if((keyStates & LEFT_PRESSED) != 0){ // code untuk menggerakkan sebuah Sprite }}
11.
Developer mendesain sebuah game yang menggunakan class LayerManager dan Sprite. Tiga object Sprite ditambahkan ke sebuah object LayerManager dan sebuah pemanggilan diletakkan pada method LayerManager.paint(Graphics, x, y). Bagaimana seharusnya proses render suatu object Sprite ke display device?
Sprite di-render melalui implementasi tertentu
Sprite yang dianimasi di-render pertama kali
Sprite di-render dengan urutan descending index
Sprite di-render dalam urutan random
12.
Seorang developer mendesain sebuah game dengan menggunakan class LayerManager dan Sprite. Tiga object Sprite ditambahkan ke sebuah object LayerManager dan sebuah pemanggilan diletakkan pada method LayerManager.paint(Graphics, x, y). Dengan urutan yang bagaimana, object Sprite dapat dirender ke display milik device?
Sprite di-render dalam urutan random
Sprite yang dianimasi di-render pertama kali
Sprite di-render dengan urutan index yang paling besar ke index yang paling kecil (descending)
Sprite di-render dengan implementasi tertentu
13.
Dimana letak gambar dan screen apabila terdapat potongan program seperti berikut?
14.
Apa fungsi dari method append(Layer l)?
menambahkan layer pada LayerManager.
menampilkan layer pada screen LayerManager.
menambahkan dan menampilkan layer pada screen LayerManager.
menghapus layer pada screen LayerManager.
mengambil nilai index layer pada LayerManager.
15.
Method yang digunakan untuk memperoleh layer dengan nilai index yang terakhir adalah?
append(Layer l);
insert(Layer l, int index);
getLayerAt(int index);
remove(Layer l);
getSize();
16.
Apa yang terjadi apbila terdapat baris program seperti ini?
17.
Bagaimana menggambar dan menempatkan gambar di bawah ini dengan menggunakan metode LayerManager ditampilkan pada screen mobile hanya 125 x 125 dan diletakkan pada sudut kanan bawah?
layerManager.paint(g, 125, 125);
layerManager.paint(g, getWidth(), getHeight());
layerManager.paint(g, getWidth()-125, getHeight()-125);
layerManager.paint(g, 0, 0);
layerManager.paint(g, 125, 0);
18.
Bagaimana meletakkan gambar pada titik awal dengan x = 30, y = 20 dengan luas 200 x 400 dan di letakkan pada pada sudut kiri atas, yang ditampilkan pada screen mobile hanya 125 x 125 ?
layerManager.setViewWindow(30, 20,125,125);layerManager.paint(g, 200, 400);
layerManager.setViewWindow(30, 20,125,125);layerManager.paint(g, 0, 0);
layerManager.setViewWindow(30, 20, 200, 400);layerManager.paint(g, 125, 125);
layerManager.setViewWindow(0, 0, 200, 400);layerManager.paint(g, 30, 20);
layerManager.setViewWindow(0, 0, 125, 125);layerManager.paint(g, 200, 400);
19.
Bagaimana penggunaan metod dan parameter yang paling benar dalam menambahkan beberapa layer pada LayerManager?
layerManager.insert(Sprtie s);
layerManager.insert(Layer l);
layerManager.append(Image i);
layerManager.insert(Image i);
layerManager.append(Layer l);
20.
Perhatikan program di bawah ini.layerManager.insert(gambar1, 1);layerManager.append(gambar2);layerManager.insert(gambar3, 3);layerManager.append(gambar4);Apa yang akan ditampilkan pada saat program dijalankan, jika gambar diurut dari bawah ke atas?
java.lang.IndexOutOfBoundsException
exception
menggambar dengan urutan dari bawah ke atas :1. gambar32. gambar13. gambar24. gambar4
menggambar dengan urutan dari bawah ke atas :1. gambar42. gambar13. gambar2 4. gambar3
menggambar dengan urutan dari bawah ke atas :1. gambar42. gambar33. gambar24. gambar1
80Your browser does not support inline frames or is currently configured not to display inline frames. Waktu Sisa : 0:58:13
1. Pernyataan mana yang benar mengenai object TiledLayer dan Sprite yang diperoleh oleh object LayerManager?
Object Sprite selalu ditambahkan sebagai background layer
Object TiledLayer selalu ditambahkan sebagai background layer
Object Sprite dan TiledLayer dapat disisipkan pada posisi yang tertentu di LayerManager
Jika object Sprite atau TiledLayer ditambahkan, urutannya dapat diubah hanya dengan menciptakan dan menambahkannya ke sebuah LayerManager yang baru
2. Susunlah pasangan bata dengan lebar 2 bata dan tinggi 3 bata dengan potongan gambar sebagai berikut!
3. Bagaimana penulisan kode program pada TiledLayer dengan 5 kolom dan 7 baris dengan ukuran 5 potongan gambar dengan luas 120 x 20 piksel berikut ini?
4. Diketahui sebuah gambar sebagai berikut
Bagaimanakah gambar yang dihasilkan jika diketahui potongan program di bawah ini?
5.
Diketahui potongan gambar berikut ini dan potongan kode program berikut.
Gambar manakah yang sesuai?
6. Bagaimana cara sebuah TiledLayer dapat menentukan urutan dari frame pada animated tiles?
Urutan dari frame diperoleh dari animated Sprite
Urutannya tidak dapat ditentukan. Animation hanya dimungkinkan dengan menggunakan sebuah Sprite.
Tile yang akan ditampilkan harus ditentukan pada tiap frame di animation
Urutan dari frame diperoleh dari lokasi pada source image
7. Ketika sebuah LayerManager di-render, isi dari object Sprite dan TiledLayer di-render menggunakan informasi posisi yang dimiliki masing-masingnya. Bagaimana cara me-render area pada LayerManager yang tidak digunakan oleh Sprite atau TiledLayer?
Pixel pada destination ditampilkan putih
Pixel pada destination dibiarkan saja
Pixel pada destination ditampilkan putih, Display.COLOR_BACKGROUND
Tidak bisa di-render. Developer harus memastikan bahwa area tersebut terletak di luar dari clip region
8. Method dan parameter yang salah pada class TiledLayer dengan object tiled adalah?
tiled.setAnimatedTile(int animatedTileIndex, int staticTileIndex);
tiled.setStaticTileSet(Image image, int tileWidth, int tileHeight);
tiled.paint(Graphics g);
tiled.getCell(int col, int row);
tiled.fillCells(int col, int row, int numCols, int numRows);
9. Jika ingin menggambar sebuah map seperti di bawah ini
dengan menggunakan gambar berikut ini
.Manakah array map yang benar?
(salah)
(benar)
10. Terdapat potongan program berupa map array sebagai berikut.
dengan hasil gambar seperti dibawah ini.
Manakah resource yang sesuai?
11. Terdapat sebuah animasi. Diketahui potongan program berikut ini.
Dengan potongan gambar berikut dan gambar pertama sebagai berikut.
Menurut potongan program di atas gambar manakah yang merupakan gambar selanjutnya dari animasi tersebut?
12. Apa yang terjadi jika terdapat nilai nol pada komponen variabel array map dengan gambar tiled ini
?
Terjadi error exception.
Tidak menggambar apapun.
Akan menggambar .
Menampilkan error script
Menampilkan angka 0.
13. Bagaimana menyusun potongan gambar berikut ini
menjadi gambar yang utuh seperti pada gambar bawah ini?
Your browser does not support inline frames or is currently configured not to display inline frames. Waktu Sisa : 0:30:15
1. Perhatikan code berikut ini:
Pernyataan mana yang benar mengenai method scheduleExecutionTime()?
Method ini biasanya dipanggil dari luar method run() pada task
Me-return scheduled execution time dari eksekusi yang paling aktual dari task tersebut
Method ini biasanya digunakan bersamaan dengan fixed-delay execution repeating task
Return value-nya bersifat undefined jika task telah memulai eksekusi pertamanya
Merupakan method dari class Timer
Merupakan method dari class TimerTask
2. Value apa yang akan di-return oleh method cancel(), untuk task yang dijadwalkan one-time execution dan repeated execution?
0
true
IllegalArgumentException
false
3. Apa yang akan terjadi jika program di bawah ini dijalankanTimer timer = new Timer();TimerTask timerTask = new Task();timer.schedule(task, 15000);
Program akan dieksekusi setiap 15 detik
Program akan berjalan selama 15 detik dan diulang kembali dalam waktu berikutnya.
Program berjalan setelah 15 detik.
Runtime error.
Compile error.
4. Pernyataan mana yang benar mengenai Timer?
Multiple thread tidak pernah sharing sebuah object Timer tunggal
Sebuah thread tidak dapat menghentikan sebuah object Timer jika menjalankan sebuah task
Multiple thread dapat men-share sebuah object Timer tunggal, tanpa menggunakan external synchronization
Multiple thread dapat men-share sebuah object Timer tunggal hanya dengan menggunakan external synchronization
5. Membunyikan alarm setiap jam atau menjalankan scheduled maintenance setiap hari pada waktu yang telah ditentukan, merupakan beberapa contoh task, dari penggunaan method?
scheduleAtFixedRate(TimerTask task, Date firstTime, long period)
scheduleAtFixedRate(TimerTask task, long delay, long period)
scheduleAtFixedRate(TimerTask task, TimerTask firstTime, long period)
scheduleAtFixedRate(Date task, long delay, long period)
6. Apa yang harus dilakukan untuk menghentikan sebuah Timer?
Memanggil method run kemudian dilanjutkan method stopTimer.
Memanggil method stopTimer.
Memanggil method stopTimer kemudian method start.
Memanggil method cancel.
Memanggil method start dan method cancel.
7. Apa yang akan terjadi jika program di bawah ini dijalankan?Timer a = new Timer();TimerTask b = new Task();timer.schedule(b, 8000);timer.schedule(b, 7000, 8000);
Program akan berjalan selama 7 detik dan diulang kembali dalam waktu 8 detik.
Program akan dieksekusi setiap 7 detik.
Eksekusi terjadi setelah 8 detik.
Runtime error.
Program akan berjalan 8 detik.
8. Interface apakah yang di-implement oleh class TimerTask?
Date
Time
Runnable
Object
Date
9. Class yang digunakan untuk mendefinisikan dan menjadwalkan task adalah?
java.util.TimerTask
java.util.Schedule
java.util.Vector
java.util.Timer
10. Berikut ini merupakan deklarasi class yang digunakan pada proses schedule task, kecuali..
java.lang.TimerTask
java.util.TimerTask
java.microedition.Timer
java.lang.Timer
java.util.Timer
11. Pernyataan mana yang benar mengenai Timer?
Mengextend kelas Runnable
Mengextend kelas Object
Fasilitas untuk menjadwalkan task secara berulang-ulang
Fasilitas untuk menjadwalkan banyak task
Fasilitas hanya untuk menjadwalkan satu task saja
12. Method yang digunakan untuk menjadwalkan task khusus yang dieksekusi dalam repeated fixed-delay, dimulai setelah delay yang ditentukan?
schedule(TimerTask task, Date firstTime, long period)
schedule(TimerTask task, long delay, long period)
schedule(TimerTask task, long delay)
schedule(TimerTask task, Date time)
13. Berapakah jumlah penggunaan maximal Timer pada sebuah aplikasi J2ME?
Tergantung kecepatan perangkat mobile
Tidak ada batasan untuk menggunakan timer
8
4
Terbatas dari memory perangkat mobile
14. Jika sebuah TimerTask telah terhenti, misalnya pada saat method cancel() nya dipanggil, semua usaha untuk men-schedule task baru akan menghasilkan :
IllegalStateException
Task tetap akan dijalankan sesuai yang di schedule
TimerStateException
IllegalArgumentException
Script akan error dan program tak dapat dijalankan
15. Apakah yang akan dihasilkan oleh potongan script di atas di bawah ini?
Timer akan bekerja setelah 3 detik dan menampilkan SuccesCanvas
Timer akan menampilkan SuccesCanvas selama 3 detik
Terjadi error compile karena terdapat 2 penjadwalan timer
Timer akan bekerja setelah 13 detik dan menampilkan SuccesCanvas
Runtime error akan terjadi dan tidak akan tampil apapun di layar
16. Keluaran apa yang akan dihasilkan oleh code berikut ini?
Sebuah exception akan dilempar pada saat runtime
myForm memuat string "waiting..."
myForm memuat string "run count: 0"
myForm memuat string ";run count: 1"
myForm memuat string "run count: 2"l;
17. Apakah yang menjadi output dari program di bawah ini
True dan akan terjadi Exception
True dan mainMenu akan ditampilkan setelah 3 detik
False dan akan terjadi Exception
False dan mainMenu akan ditampilkan setelah 3 detik
Tak ada jawaban yang benar
18. Dari pilihan berikut ini yang termasuk method milik class Timer adalah?
schedule(TimerTask task, Time time)
schedule(TimerTask task, Date firstTime, long period)
schedule(TimerTask task, float delay)
schedule(TimerTask task, long delay, long period)
scheduleAtFixedRate(Timer task, Date firstTime, long period)
19. Pilihan mana yang digunakan untuk menciptakan sebuah Timer yang akan mati dalam waktu 5 detik, diulang setiap 3 detik?
timer.schedule(timerTask, 5, 3);
timer.schedule(timerTask, 5000, 3000);
timer.scheduleAtFixedRate(timerTask, 5, 3);
timer.scheduleAtFixedRate(timerTask, 5000, 3000);
timer.schedule(timerTask, new Date().getTime()+5000, 3000);
20. Jika Script di bawah ini dijalankan, apakah yang akan terjadi?
mainMenu akan ditampilkan setelah 3000 detik
mainMenu akan ditampilkan setelah 3 detik
program akan terus berjalan tanpa menjalankan timerTask yang telah di schedule
program akan terhenti karena terjadi Exception
Tak ada jawaban yang benar