Final Exam 4

Bukan Untuk Di Contek Namun Dipelajari

1. GameCanvas merupakan suatu komponen …

abstract class

<supportLists]—>2. Apa yang terjadi jika potongan listing program di bawah ini dijalankan?

<” alt=”” border=”0″ />—[if !vml]—>

<” alt=”” border=”0″ />—[if —[endif]—><” alt=”” border=”0″ />—[if !vml]—>

a

<” alt=”” border=”0″ />—[if !vml]—>

<” alt=”” border=”0″ />—[if !vml]—>

<” alt=”” border=”0″ />—[if !vml]—>

<” alt=”” border=”0″ />—[if !vml]—>

<supportLists]—>3. Apa fungsi dari method getKeyStates() pada class GameCanvas?

Mengambil varibel pada keypad.

Mengambil gerakan pada keypad.

Menjalankan perintah pada keypad.

Mengambil perintah pada keypad.

Menjalankan gerakan pada keypad.

<supportLists]—>4. Terdapat listing program dibawah ini.

<” alt=”” border=”0″ />—[if !vml]—>

Bergerak kemana kah obyek tersebut apabila di tekan tombol keatas (Up)?

Obyek ke atas

Obyek ke bawah

Obyek ke kanan

Obyek ke kiri

Obyek ke kanan atas

<supportLists]—>5. Apakah fungsi method flushGraphics() yang terdapat pada GameCanvas?

Untuk menggambar

Menampilkan gambar

Menggambar kembali.

Menghilangkan gambar berkedip

Menampung gambar sementara

<supportLists]—>6. Pada mobile device, konstanta manakah yang sesuai untuk mengaktifkan keypad No. 1 pada game canvas?

GAMEAPRESSED

LEFTPRESSED

GAMEBPRESSED

RIGHT PRESSED

GAMECPRESSED

<supportLists]—>7. Class apakah yang menyediakan method getHeight() dan getWidth() ?

GameCanvas

Layer

Sprite

LayerManager

TiledLayer

<supportLists]—>8. Dimanakah perbedaan superclass javax.microedition.lcdui.Canvas dengan turunannya javax.microedition.lcdui.GameCanvas?

graphics buffering

key states

control pada event seperti key stroke dan screen repaint

paint method

<supportLists]—>9. Manakah berikut ini yang merupakan Field dari kelas GameCanvas?

UPPRESSED

DOWNPRESSED

GAMEA

GAMEB

GAMEC

<supportLists]—>10. Pernyataan mana yang benar berikut ini?

Method paint() tidak pernah dipanggil oleh turunan/subclass dari GameCanvas

GameCanvas Proses gambar secara synchronous pada display dari device dapat dilakukan dengan menggunakan

GameCanvas selalu membutuhkan sebuah thread terpisah untuk menggambar apapun pada layar

Canvas.serviceRepaints() dan Canvas.callSerially() dapat digunakan untuk menciptakan sebuah frame-rate animation loop

<supportLists]—>11. Bagaimana cara sebuah MIDlet dengan menggunakan GameCanvas, secara efisien meng-update sebuah daerah kecil pada layar, dari data pada off-screen buffer?

Pixel yang tidak di-flush harus dibuat transparan

Panggil serviceRepaints() dan tentukan sebuah clip region pada method paint() dari object Graphics

Panggil flushGraphics(int , int, int ), kemudian tentukan region yang akan di-flush

Tulis code tambahan untuk menyatukan pemanggilan flushGraphics(), dari banyak loop ke satu pemanggilan

<supportLists]—>12. Untuk menggambar pada class GameCanvas menggunakan method …

drawScreen();

paint();

graphics();

flushGraphics();

repaint();

<supportLists]—>13. Perhatikan class berikut ini. Pernyataan mana yang benar mengenai lebar1, tinggi1 dan lebar2, tinggi2?

<” alt=”” border=”0″ />—[if !vml]—>System mencoba menyediakan visible area maksimum terhadap MIDlet dengan dimensi lebar2 dan tinggi2

<supportLists]—>14. Konstanta manakah yang digunakan untuk mengaktifkan keypad no 4 pada game canvas?

GAMEAPRESSED

RIGHT PRESSED

GAMEBPRESSED

LEFTPRESSED

GAMECPRESSED

<supportLists]—>15. Berapa variabel dari UP_PRESSED?

2

64

4

32

8

<!– –>

1. Mengapa terjadi error pada potongan kode berikut ini :

thread-1
Method setName(String a) tidak dideklarasikan oleh MIDP
Method getName() tidak teridentifikasi
Class CobaRunnable bukan sebuah MIDlet
Class CobaThread bukanlah sebuah MIDlet
Method setName() tidak dapat menerima parameter String
Constructor Thread tidak dapat menerima parameter apapun

2. Perhatikan kode berikut ini :
thread-2
Kesalahan apakah yang terjadi pada kode diatas?

Class CobaThread tidak diperbolehkan untuk mengimplementasikan method start() karena method tersebut sudah dimiliki oleh Thread
Class CobaThread harus mengoverride method run() karena ia mengimplementasikan interface Runnable

Object thread seharusnya memanggil method run() yang diimplementasikan oleh Runnable

3. Jika Anda menginginkan supaya nilai i ditampilkan pada consol dengan delay 0.5 detik untuk tiap tampilan, maka kode apa yang perlu ditambahkan pada kode berikut ini :
thread-3

System.out.println(i);
try{Thread.sleep(500);}catch(Exception e){}*

System.out.print(i);
Thread.sleep(500);

System.out.print(i);
Thread.yield(500);

System.out.print(i);
try{Thread.sleep(500);}catch(Exception e){}

System.out.print(i);
try{Thread.wait(500);}catch(Exception e){}

System.out.println(i);
try{Thread.wait(500);}catch(Exception e){}

4. Berikut ini yang merupakan method yang bersifat static pada class Thread adalah …
join();
interrupt();
getPriority();
yield();

run();

5. Tanpa mendefinisikan Thread secara koding, pernyataan berikut yang paling benar adalah …

Setiap program java secara default telah mengimplementasikan beberapa Thread dalam eksekusinya.
Setiap program java telah mengimplementasikan sebuah Thread dalam eksekusinya.
*

Setiap program java tidak akan mengimplementasikan satu Thread pun.
Setiap program java tetap berjalan namun tidak bisa mengakses fitur Thread.
Setiap program java akan jalan apabila di panggil Thread tersebut.

6. Method dan parameter yang salah pada class Thread dengan object thread adalah …

thread.sleep();
thread.interrupt();
thread.getPriority();
thread.yield();
thread.isAlive();

7. apakah yang membedakan antara method sleep() dan method yield() ?

Sebuah thread yang dikenai method sleep() pasti akan berhenti sementara, sedangkan jika dikenai method yield() belum tentu thread tersebut akan berhenti

Method sleep() dalam sebuah thread akan menyebabkan thread tersebut berada pada kondisi waiting, sedangkan pemanggilan method yield() menyebabkan thread tersebut berada didalam antrian thread yang akan berjalan

Jika sebuah method sleep() dipanggil maka thread tersebut akan berada pada kondisi runnable selama periode tertentu, dimana tepat ketika periode-nya habis maka thread tersebut kembali berjalan. Sedangkan ketika method yield() dipanggil, maka thread tersebut akan berada pada kondisi waiting. *

Method sleep() menyebabkan thread tersebut berhenti sementara minimal sesuai dengan periodenya, sedangkan method yield() menyebabkan thread tersebut berhenti sementara dan akan berjalan kembali sesuai dengan time slicing. *

8. Thread memungkinkan sebuah aplikasi Java untuk… (kecuali)

Menjalankan suatu operasi tertentu di background (balik layar).
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. Pada environtment J2ME profil MIDP 2.0 & konfigurasi CLDC 1.0, method dari Thread berikut ini yang tidak disupport adalah …

sleep() dan stop()
interrupt() dan sleep()
stop() dan interrupt()

start() dan sleep()
semua benar

10. Construktor manakah dari Thread berikut ini yang salah?

Thread();
Thread(String name);
Thread(Runnable target);
Thread(Runnable target, String name);
Thread(Runnable target, String name);
Thread(int c);

11. Perhatikan kode berikut ini :
thread-111
Mengapa pada kode diatas, string yang menunjukkan “Thread sekarang” akan selalu tampil sebelum string yang menyatakan “Loop”?

Karena method println() bekerja terlebih dahulu sebelum method start() dipanggil
Karena method start() selalu running terlambat
Karena pemanggilan method run() membutuhkan lebih banyak waktu dibandingkan dengan pemanggilan println()
Karena pada saat start() dijalankan, maka object-object tersebut harus masuk kedalam state runnable terlebih dahulu sebelum pada akhirnya dipanggil oleh PROCESSOR *

12. Agar suatu Thread yang menjalankan operasi looping while bisa berhenti (dead), maka dapat dilakukan dengan …

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.
mentrigger Thread tersebut dari suatu external event yang ditetapkan, agar Thread beruah state.
memberikan sebuah flag untuk mengeksekusi method stop() dengan kondisi yang ditentukan.

memberikan sebuah flag untuk mengeksekusi method close() dengan kondisi yang ditentukan.

13. Dimanakah letak kesalahan pada kode berikut ini?
thread-13

Method start() dalam Thread tidak boleh dipanggil dua kali dari object yang sama
Untuk menjalankan sebuah thread diperlukan sebuah class yang mengimplementasikan interface Runnable
Untuk menjalankan sebuah Thread diperlukan pemanggilan method run() dari Thread object

14. Perhatikanlah kode berikut ini :
thread-14
Mengapa terjadi kesalahan pada kode diatas?

Karena thread ke-dua dan ketiga tidak pernah dijalankan
Karena multithread tidak didukung oleh J2ME
Karena method start() seharusnya diimplementasikan oleh class CobaThread
Karena method start() tidak pernah dipanggil *

15.Apakah yang akan terjadi kemudian setelah kita melakukan pemanggilan method static sleep() dari Thread, dengan perintah
Thread.sleep(400)?
Thread tersebut akan kembali pada state runnable danPROCESSOR memerintahkan dia untuk berjalan menunggu sampai
Thread kembali dijalankan
Thread akan kembali dijalankan tepat pada saat 400 mili detik
Parameter dalam thread menjadi durasi minimum thread berada dalam state waiting

Thread kadang-kadang akan kembali dijalankan setelah 0.4 detik
Thread tersebut akan berhenti sementara dalam waktu < 0.4 detik

16. Tidak semua method yang dimiliki Class Thread pada versi mobile mendukung versi desktop. Method manakah yang mendukung pada versi mobile maupun versi desktop?

getAllStackTraces();
dumpStack();
getStackTrace();
getThreadGroup();
interrupt();*

17. 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
thread-14

a. thread-17a1

dan thread-17a2

b. thread-17b1 dan

thread-17b2*
c. thread17c1dan

thread-17c2
d. thread-17d1dan

thread-17d2

e. thread-17e1 dan

thread-17e2
f. thread-17f1 dan

thread-17f2

18. Misal suatu kondisi dalam sebuah program java terpenuhi, sehingga menyebabkan dieksekusinya suatu Thread yang menjalankan single operation dan sedang dalam state ready. Maka selanjutnya state Thread tersebut berubah menjadi …

dead kemudian live
live kemudian dead
running kemudian terminated
suspended kemudian terminated
suspended kemudian running

19. Perhatikan kode berikut ini:
thread-19
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

20. Cara untuk menggunakan Thread pada program adalah …
mendefinisikan kelas baru sbg turunan kelas Thread, mengoverride method run dari kelas Runnable.
mendefinisikan kelas baru sbg turunan kelas Thread, melakukan instantiate terhadap kelas tersebut.
mendefinisikan kelas baru sbg turunan kelas Runnable, melakukan instantiate terhadap kelas tersebut.
mendefinisikan kelas baru sbg turunan kelas Runnable, mengoverride method run dari kelas Runnable.**
mendefinisikan kelas baru sbg turunan kelas Runnable, melakukan instantiate terhadap kelas yang baru.

<!– –>

Jawaban Jeni 4 = MMAPI

lulus 74%

Manakah pernyataan yang benar tentang class Manager ? na cara memanggil audio secara looping 2 kal

Dengan class Manager kita dapat mengakses resource-resource yang dapat kita gunakan untuk multimedia processing
Class Manager membantu kita untuk mengakses Player untuk memainkan resource audio
Class Manager juga menyediakan method yang membantu kita untuk memainkan tone yang sederhana
Class Manager memiliki kemampuan untuk memainkan resource dari media locator maupun dari InputStream

Method (tanpa parameter) yang salah pada class yang di butuhkan pada MMAPI adalah?

playMedia();

prefetch();

playerUpdate();

createPlayer();

setLevel();

Apa kelemahan yang terjadi apabila hanya terdapat satu object Player?

Hanya dapat mengakses satu suara saja.
Hanya dapat menghentikan satu suara saja
Menghentikan semua suara secara serentak.
Membunyikan suara secara serentak.
Tidak dapat mengeluarkan suara.

Manakah pernyataan-pernyataan yang benar mengenai PlayerListener ?

PlayerListener merupakan sebuah interface yang berfungsi untuk menerima asynchronous event dari Player

PlayerListener merupakan sebuah interface yang berfungsi untuk menerima asynchronous event dari Manager

Untuk mengimplementasikan PlayerListener, kita harus mengimplementasikan PlayerUpdate()

Untuk menangani event dari Player sehingga bisa dibaca oleh PlayerListener, maka method object dari Player tersebut harus didaftarkan terlebih dahulu kepada Player dengan menggunakan method addPlayerListener()

Untuk menangani event dari Player sehingga bisa dibaca oleh PlayerListener, maka method object dari Player tersebut harus didaftarkan terlebih dahulu kepada Player dengan menggunakan method addPlayer()

Dari pilihan-pilihan berikut ini, mana yang merupakan state dari sebuah Player?

UNREALIZED
REALIZE
STARTED
STOPED
PREFETCHED
CLOSED
READY

Method yang digunakan Secara eksplisit mengubah kondisi Player dari kondisi realized ke kondisi prefecth adalah …

deallocate()

allocate()

realize()

prefecth()

realized()

Potongan script berikut yang digunakan untuk memanggil file audio midi adalah …

player = Manager.CreatePlayer(getclass().getResourceAsStream(file), “audio/midi”).

player = Manager.createPlayer(getclass().getResourceAsStream(file), “audio/midi”).

player = Manager.createPlayer(getlass().getresourceAsStream(file), “audio/midi”).

player = Manager.createPlayed(getclass().getResourceAsStream(file), “audio/midi”).

player = Manager.createPlayer(getclass().getresourceAsStream(file), “audio/midi”).

Berikut ini yang bukan cara untuk mematikan bunyi pada MMAPI?

volumeControl.setLevel(0);

volumeControl.setMute(true);

player.close();

player.stop();

player.setLoopCount(0);

MMAPI merupakan subset class dari packet …

javax.microedition.lcdui.;

javax.microedition.media.;
javax.microedition.midlet.;

javax.lang.;
javax.io.*;
Perhatikan code berikut ini. Pernyataan mana yang benar mengenai volume dari audio playback dari Player, ketika code dieksekusi?

Volume dari audio nilainya tepat 40 dB

Volume dari audio nilainya kira-kira 0.4 dB

Volume dari audio tergantung dari device MIDP

Volume dari audio harus sama pada setiap device MIDP

Manakah yang merupakan siklus hidup yang benar dari sebuah Player?

started-realize-unrealized-stoped

unrealized-realize-prefetched-started-closed

unrealized-realized-started-stoped

unrealized-realized-prefetched-started-stoped

realize-started-closed-unrealized

Method pada obyek layer yang berfungsi memberitahukan layer untuk melepaskan sumber daya. Method yang digunakan adalah …

deallocate()
allocate()
realize()
prefecth()
realized()

Berikut ini class manakah yang tidak dibutuhkan dalam membuat MMAPI?

Class PlayerListener
Class Player
Class ControlVolume.
Class Control
Class Manager

Bagaimana cara memanggil audio secara looping 2 kali ?

player.setLoopCount(1);
player.prefetch();
player.realize();
player.setLoopCount(-2);
player.setLoopCount(2);

Metode createPlayer() menggenerasi Player yang terasosiasi dengan ……………… yang menyediakan data.

Manager
Player
Control
DataSource
interface
Manakah pernyataan yang tidak benar tentang Player?

Player merupakan sebuah class abstract

Player merupakan sebuah interface yang dapat diimplementasikan secara bebas oleh MIDlet tanpa terpengaruh oleh hierarki inheritance

Player merupakan sebuah interface, sehingga harus diimplementasikan sesuai dengan hierarki inheritance class.

Player memiliki method-method yang digunakan untuk menangani siklus hidupnya

Player berfungsi untuk mengontrol playback

Player digunakan untuk me-manage resource

Object apa yang harus diciptakan untuk menghasilkan sebuah tone sederhana?

Sebuah Player harus diciptakan
Sebuah Player dan Tone Control harus diciptakan
Sebuah Player dan sebuah PlayerListener harus diciptakan
Tidak ada. Manager dapat digunakan untuk menghasilkan sebuah tone sederhana
Mana yang merupakan method dari class ToneControl?

setLevel()

playTone()

setSequence()

startPlayback()

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.TONEDEVICELOCATOR bukan merupakan field yang benar
Media control mana yang ada pada setiap device MIDP 2.0?

ToneControl

PitchControl

VideoControl

RecordControl

VolumeControl

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.

<!– –>

Jawaban Jeni 4 = Sprite + LayerManager

Sprite. by pitiq

75%

Disediakan gambar dengan listing program di bawah ini.

Animasi apa yang akan di lakukan apabila di pilih tombol Up?

Gambar bergerak ke kiri.
Gambar bergerak ke kiri.
Gambar bergerak ke kanan.
Gambar bergerak ke bawah.
Gambar bergerak ke kanan

Method dan parameter mana yang paling benar untuk mengganti gambar pada class sprite?

sprite.setImage(Image img);
sprite.getImage(Image img);
sprite.setImage(Image img, int frameWidth, int frameHeight);
sprite.getImage(Image img, int frameWidth, int frameHeight);
sprite.setImage();

Terdapat gambar menjadi gambar yang tidak benar adalah?

sprite.setFrame(2);
sprite.setTranform(TRANSROT270);

sprite.setFrame(0);
sprite.setTranform(TRANSMIRRORROT180);

sprite.setFrame(3);
sprite.setTranform(TRANSMIRRORROT90);

sprite.setFrame(3);
sprite.setTranform(TRANSROT90);
sprite.setFrame(2);
sprite.setTranform(TRANSMIRRORROT90);

Bagaimana cara untuk membuat animasi seperti gambar berikut yang mana jika ditekan keypad no 5 akan melakukan gerak ke kanan dengan gambar asli berikut ini

lesssssssssssss

Diberikan image berupa gambar helikopter dibawah ini.

Bagaimana cara gambar 1 yang mana mengadap ke arah kanan agar berubah menghadap ke arah kiri?

sprite.setFrame(2);
sprite.setFrame(0);
sprite.setTranform(TRANSROT180);

sprite.setTranform(TRANSMIRRORROT180);

sprite.setTranform(TRANSMIRROR);
6.
Pernyataan dibawah ini yang sesuai dengan gambar diatas dan sesuai dengan constant dalam class Sprite adalah:


TRANSROT180


TRANS
ROT180MIRROR


TRANS
ROT90


TRANSROT90


TRANS
ROT0

ABCE

Apabila ada sebuah class yang bernama CanvasKu, pilihan mana berikut ini yang tidak dapat digunakan, jika CanvasKu merupakan turunan/subclass langsung dari Canvas?

flushGraphics();
isDoubleBuffered();
Sprite s = new Sprite(sebuahImage, 20, 20);
gameAction = getGameAction(keyCode){}
public CanvasKu(boolean t){
super(true);
}
keyStates = getKeyStates();
if((keyStates & LEFTPRESSED) != 0 {}

Diantara method-method dibawah ini manakah yang digunakan untuk mengetahui berapa panjang sprite?

getFrameSequenceLength();
getRawFrameCount();
getRawFrameLength();
getFrameSequenceCount();
getSequenceLength();

Apa yang terjadi pada gambar kapal berikut jika di berikan action TRANSROT180?

lesssssssssssss

Bagimana cara membuat animasi di bawah ini dengan mengurutkan 1 s/d 5?

sprite.getRawFrameCount();
sprite.prevFrame();
sprite.getFrame();
sprite.nextFrame();
sprite.getRawFrameCount();
sprite.nextFrame();
int[] id = {1,2,3,4,5} ;
sprite.setFrame(id);
sprite.getFrameSequenceLength();
sprite.nextFrame();

Seorang mobile application developer mencoba meningkatkan performa dari game dengan menggunakan MIDP Game API. Pendekatan mana yang benar berikut ini, yang dapat memenuhi tujuan developer?

Poll untuk key state, jika diperlukan saja
Membatasi jumlah frame setiap Sprite hingga menjadi satu
Base collision detection pada batas kotak
Mengimplementasi keyPressed(), keyReleased(), dan keyRepeated()
Memastikan bahwa view window lebih besar dari pada layar yang terlihat

Terdapat gambar dengan listing program di bawah ini …

Animasi apa yang akan di lakukan apabila di pilih tombol Up?

Gambar bergerak ke bawah.
Gambar bergerak ke atas.
Gambar bergerak ke atas
Gambar bergerak ke bawah
Gambar bergerak ke bawah.
Dengan gambar berikut ini bagaimana cara menggerakkan miring ke kiri-atas dengan panah apabila menekan keypad nomer 1?

lesssssssssssss

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); (X)

Bagaimana caranya membuat sebuah background tepat pada screen tengah mobile device dengan ukuran gambar 128×128 seperti pada gambar dibawah ini?

layerManager.paint(g, (getWidth()-128)/2, (getHeight()-128)/2);
layerManager.paint(g, 128/2, 128/2);
layerManager.paint(g, getWidth()/2, getHeight()/2);
layerManager.paint(g, getWidth()-128, getHeight()-128);
layerManager.paint(g, getWidth(), getHeight());

Dimana letak gambar dan screen apabila terdapat potongan program seperti berikut?

zzzzzzzzzzzzz

Bagaimana hasil dari potongan listing program di bawah ini ?

zzzzzzzzzzzzz

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
}
}

Bagaimana cara menambahkan sebuah sprite pada class LayerManager dengan dengan gambar yang sama seperti pada gambar di bawah ini?

zzzzzzzzzzzzzzzzzzzzzzzz

Bagaimana menganimasikan gambar pada LayerManager apabila menekan keypad select akan memanjangkan layar tersebut dengan arah ke kanan?

zzzzzzzzzzzzz
Bagaimana meletakkan gambar pada titik awal dengan x = 30, y = 20 dengan luas 200×400 dan di letakkan pada pada sudut kiri atas, yang ditampilkan pada screen mobile hanya 125×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);

Bagaimana menggambar dan menempatkan gambar di bawah ini dengan menggunakan metode LayerManager ditampilkan pada screen mobile hanya 125×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);
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

Method dan parameter yang salah pada class LayerManager adalah?

layermanager.getLayerAt(int index);

layerManager.insert(Layer l, int index);

layerManager.remove(Layer l, int index);

layerManager.setViewWindow(int x, int y, int width, int height);

layerManager. getSize();

Apa yang terjadi apbila terdapat baris program seperti ini?

zzzzzzzzzzzzz

Tinggalkan Balasan

Please log in using one of these methods to post your comment:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s


%d blogger menyukai ini: