. Jawaban Jeni 2 :Modul 1-5 (Modul-1-pengenalan-j2-me / Modul-2-low-level / Modul-3-high-level / Modul-4-persistant / Modul-5-jaringan) | HORIZON NUSANTARA
loading...

Jawaban Jeni 2 :Modul 1-5 (Modul-1-pengenalan-j2-me / Modul-2-low-level / Modul-3-high-level / Modul-4-persistant / Modul-5-jaringan)

loading...
iklan tautan

High Level Level

MODUL#2 Higt Level User Interface

Your browser does not support inline frames or is currently configured not to display inline frames.
Waktu Sisa : 0:30:48
1.
Apa yang terjadi apabila potongan kode berikut ini diimplementasikan pada sebuah MIDlet aktif?


Tertulis "Selamat pagi Indonesia" pada layar device
Kode sukses di-compile, kemudian tertulis "Form dan Item" yang diikuti oleh "Selamat pagi Indonesia"
Tertulis "Form dan Item" sebagai judul dari Form, kemudian muncul teks yang tidak dapat diedit "Selamat Pagi Indonesia"
Tidak ada tulisan apapun yang tampil di layar device
Kode error, karena pemanggilan konstruktor dari Form yang salah
Kode error, karena terdapat kesalahan dalam pemanggilan konstruktor StringItem
2.
Apakah yang menjadi error pada potongan kode berikut ini ?


Terdapat kesalahan pada saat mendefinisikan object dari Form
Terdapat kesalahan pada saat mendefinisikan object dari StringItem
Object dari StringItem tidak pernah ditambahkan pada Form
Terdapat kesalahan pada saat menampilkan string ke layar device
3.
Apa hasil dari kode berikut ini?


Tidak dapat dikompile
Akan dikompile, tetapi akan menghasilkan sebuah Exception
Menampilkan Rp. 1500 pada layar device.
Tidak menampilkan apa-apa.
Gagal untuk diinstal.
4.
Berikut ini manakah pendefinisian yang benar tentang object TextField!

tfPhone = new TextField("Phone Number", "", 50, TextField.PHONENUMBER);
tfPhone = new TextField("Phone Number", "", TextField.PHONENUMBER, 50);
tfPhone = new TextField("Phone Number", TextField.PHONENUMBER, "", 50);
tfPhone = new TextField("Phone Number", TextField.PHONENUMBER, 50, "");
tfPhone = new TextField("Phone Number", 50, "", TextField.PHONENUMBER);
5.
Apakah yang menjadi output dari potongan kode berikut ini?


Kode tereksekusi dengan baik sehingga mendapatkan output "JENI Java Education Network Indonesia" yang diikuti oleh "Hello Jeni"
Kode tereksekusi dengan baik akan tetapi tidak mendapatkan output apapun
Kode dapat decompile sehingga muncul sebuah form dengan judul "Form dan Item" kemudian diikuti oleh dua buah teks yaitu "JENI Java Education Network Indonesia" dan "Hello Jeni"
Terjadi Exception pada kode diatas karena MIDlet tidak didefinisikan dengan benar
Terjadi error pada kode diatas karena method setCurrent() dari object Display tidak dipanggil
6.
Apakah yang menyebabkan potongan kode berikut ini tidak dapat menampilkan tanggal hari ini?


Object dari DateField tidak ditampilkan
Method untuk mendefinisikan tanggal hari ini tidak pernah dipanggil
Terdapat kesalahan pada saat pendefinisian object dari Date
Terdapat kesalahan pada saat menampilkan object dari Date ke layar
7.
Diberikan kode sebagai berikut!



Akan terjadi error saat kode di-compile, apakah yang menyebabkan demikian?

Terjadi kesalahan saat mendefinisikan object dari List
Salah dalam meng-overide method startApp()
Kesalahaan saat mendefinisikan object dari Command
Salah dalam meng-overide method commandAction
8.
Apakah output dari potongan kode berikut ini?


Akan tampil form yang berisi "0" dan "World"
Akan tampil form yang berisi "World" saja
Kode tidak dapat di-compile
Kode dapat dikompile tapi terjadi exception saat dijalankan
Berhasil dieksekusi akan tetapi tidak tampil apapun
9.
Apa yang menyebabkan error pada kode berikut ini?


Kesalahan saat mendefinissikan object dari List
Kesalahan dalam mendefinisikan object dari Command
Kesalahan dalam mendefinisikan object dari Ticker
MIDlet di atas tidak mengoveride obstrak metode pauseApp()
10.
Perhatikan potongan kode berikut ini!



Apa yang terjadi jika kode tersebut dijalankan?

Akan terjadi error IOException
Akan tampil sebuah image dengan nama J2ME.jpg
Tidak akan tampil apapun
Akan tampil sebuah String "J2ME.jpg"
11.
Apa yang menjadi output dari potongan kode berikut ini?


Akan tampil sebuah menu yang menampilkan tanggal hari ini disertai dengan waktu
Tidak ada apapun yang tampil di layar device
Akan tampil sebuah kalender
Akan tampil sebuah jam
Akan tampil sebuah menu untuk kalender yang menunjukkan tanggal dan juga sebuah menu yang menunjukkan jam
12.
Perhatikan kode MIDlet berikut ini!



Apakah yang terjadi pada Command "Keluar"?

Tombol tampil di sebelah kanan layar device
Tombol terletak pada sebelah kiri layar device
Tombol tidak akan tampil
Tombol tampil di sebelah kanan layar, tetapi tidak berfungsi
Tombol tampil di sebelah kiri layar, tetapi tidak berfungsi
13.
Lengkapilah titik-titk pada potongan kode berikut ini sehingga error berupa java.lang.NullPointerException tidak terjadi!


super();
display.setCurrent(teks);
Display display = new Display();
disp = Display.getDisplay(this);
display = Display.getDisplay(this);
14.
Perhatikan kode berikut ini!



Agar kode tersebut berjalan dengan baik, method apakah yang semestinya diberikan pada object list pada kode "if (list.[.........] == 0){" diatas?

getSelectedItem()
getSelectedString()
getItem()
getSelectedIndex()
getSelectedChoice()
15.
Perhatikan kode berikut ini!



Mengapa pada kode diatas teks "Selamat Pagi Jeni" tidak dapat ditampilkan ke layar?

Terdapat kesalahan pada saat pendefinisian object dari StringItem
Terdapat kesalahan pada saat menampilkan string ke layar
Teks Selamat Pagi Jeni tidak pernah diletakkan kedalam sebuah form
Form berjudul “Form dan Item” tidak pernah ditampilkan ke layar
16.
Apakah yang menyebabkan error pada potongan kode berikut ini ?


Object display, form, dan datefield tidak boleh dideklarasikan private
Object datefield harus dideklarasikan didalam konstruktor
Tidak diperbolehkan untuk meletakkan object dari DateField kedalam sebuah Form
Terdapat kesalahan dalam pendefinisian konstruktor
17.
Diberikan kode sebagai berikut!



Jika kode di atas dijalankan maka akan terjadi error exception. Baris manakah yang menyebabkan demikian?

setCommandListener(this)
addCommand(cmOk)
addCommand(cmExit)
removeCommand(cmOk)
repaint();
18.
Perhatikan potongan kode berikut ini!



Apa yang terjadi jika kode tersebut dijalankan? (Asumsikan proses kompile berhasil)

Tidak akan tampil apapun
Muncul Alert, akan tetapi tidak ada isinya
Terjadi error exception
Muncul Alert yang tampil terus menerus selama belum ditekan tombol keluar
Alert hanya muncul beberapa detik atau sementara saja
19.
Bagaimanakah cara mendefinisikan object dari TextBox yang benar?

tbClip = new TextBox("Clip Board", 156, TextField.ANY);
tbClip = new TextBox("Clip Board", "",156, TextField.ANY);
tbClip = new TextBox("Clip Board", "", TextField.ANY);
tbClip = new TextBox("Clip Board", null,156, TextField.ANY);
20.
Manakah dari baris kode berikut yang menunjukkan bahwa alert diset menjadi sebuah Modal Alert?


showAlert()
alTest.setTimeOut(Alert.FOREVER)
alTest = new Alert("New Alert", "Time for more Java", im, AlertType.INFO)
private Alert alTest
public ModalAlert()




MODUL#5 Jaringan

MODUL#5 Jaringan
Your browser does not support inline frames or is currently configured not to display inline frames.
Waktu Sisa : 0:35:49
1.
Dari method-method HTTPConnection berikut ini, manakah yang merupakan method yang diperlukan untuk mendapatkan informasi dari server?

getProtocol()
getHost()
getPort()
getRef()
getType()
2.
Apa terjadi apabila sebuah device secara otomatis me-load sebuah MIDlet ketika sesuatu event terjadi?

Push Registry
Record Management System
Alarm Clock System
Discovery Application
3.
Mengapa tipe-tipe koneksi dalam CLDC dinyatakan sebagai generic?

Karena mendukung tipe-tipe generic
Karena interface hierarki dalam GCF bisa dengan mudah di-extend
Karena memiliki connection factory
Karena menyediakan API dasar untuk tipe-tipe koneksi dasar
Karena mendukung standard URL untuk mengindikasikan tipe koneksi
4.
Lengkapi potongan koding berikut:

Dimanakah alamat URL
http://jeni.jardiknas.org diletakkan?

scheme://alamat
Connection.open(nama)
Kus
handle exception
5.
Jika anda mengirim data menggunakan layer TCP, data tersebut akan dipotong menjadi bagian yang lebih kecil yang disebut dengan paket. Layer TCP akan memastikan bahwa semua paket akan dikirim oleh sender dan diterima oleh recipient, dengan susunan yang sama seperti pada saat ia dikirimkan. Jika sebuah paket tidak diterima oleh reipient, ia akan mengirimkannya kembali. Hal ini berarti, sekali Anda mengirim sebuah pesan, Anda dapat memastikan bahwa pesan tersebut akan berhasil dikirim kepada recipient dengan format yang sama seperti pada saat Anda mengirimkannya, tanpa ada data yang hilang atau disisipi (dihalangi oleh sebuah siklus tertentu seperti recipient disconnect dari jaringan). Apa kepanjangan TCP?

Transfer Control Protocol
Transfer Connection Protocol
Transmission Control Protocol
Transmission Connection Protocol
6.
Apa fungsi dari HTTP?

Berfungsi untuk memindahkan web page dari web server ke web browser
Berfungsi untuk meneruskan web page dari web server ke web browser
Sebuah protocol yang memberikan respon kepada user
Untuk memudahkan user saat browsing internet
7.
Tipe exception apa yang didukung oleh GCF?

IOException
FileNotFoundException
ConnectionNotFoundException
EOFException
InterruptedIOException
8.
Diantara potongan koding berikut, koding manakah yang benar untuk membuka sebuah koneksi?

Connector.Open("socket://www.corej2me.com.com:55");
Connector.Open("http://www.corej2me.com");
Connector.Open("datagram://www.corej2me.com:1000");
Connector.Open("file://makefile.txt");
Connector.Open("C:/makefile.txt");
9.
Apa kepanjangan dari HTTP?

HyperText Transfer Protocol
HyperText Transmitter Protocol
HiperText Transmitter Protocol
HyperText Transfer Protocol
10.
Perhatikan :
url ::== "comm:" port_id *(option_list)
port_id ::== 1*(characters)
option_list ::== *(baudrate | bitsperchar | stopbits | parity | blocking | autocts | autorts)
baudrate ::== ";baudrate=" digits
bitsperchar ::== ";bitsperchar=" bit_value
bit_value ::== "7" | "8"
stopbits ::== ";stopbits=" stop_value
stop_value ::== "1" | "2"
parity ::== ";parity=" parity_value
parity_value ::== "even" | "odd" | "none"
blocking ::== ";blocking=" on_off
autocts ::== ";autocts=" on_off
autorts ::== ";autorts=" on_off
on_off ::== "on" | "off"

Paket yang mana yang seharusnya diimport?

javax.microedition.io.CommConnection.*;
javax.microedition.io.Connection.*;
javax.microedition.io.Connector.*;
javax.microedition.midlet.*;
11.
Apa yang dimaksud dengan Generic Connection Framework (GCF)?

GCF adalah sebuah set penghubung yang terdapat diseluruh paket WTK
GCF adalah satu set alat penghubung yang digambarkan pada paket javax.microedition.io
GCF adalah suatu penghubung untuk I/O yang terdapat di paket midlet
GCF adalah sebuah koneksi umum yang digunakan untuk mengakses internet melalui mobile device
12.
Pernyataan berikut ini yang salah adalah?

Session Cookies dapat ditemukan dalam MIDP
Server Sockets terdapat dalam MIDP
Koneksi port serial terdapat dalam MIDP
SNMP terdapat dalam MIDP
13.
Dari pilihan berikut ini, manakah yang merupakan sebuah class?

ByteArrayOutputStream
Connector
ServerSocketConnection
Datagram
EOFException
14.
Manakah dari pernyataan berikut ini yang tidak akan menghasilkan compile error?

StreamConnection s = (SocketConnection) Connector.open("socket://localhost:8080");
DatagramConnection d = (UDPDatagramConnection) Connector.open("datagram://localhost:8080");
SocketConnection sc = (SocketConnection) Connector.open("datagram://localhost:8080");
FileConnection fc = (FileConnection) Connector.open("file:///myFile.txt");
InputConnection ic = (OutputConnection) Connector.open("file:///myFile.txt");
15.
Pernyataan manakah yang benar mengenai method open() yang didefinisikan didalam package javax.microedition.io berikut ini?

open(String url)
open (int mode, String url)
open(String url, int mode)
open(String url, int mode, boolean timeouts)
open(boolean timeouts, String url, int mode)
16.
Kode dibawah ini kurang lengkap. String manakah yang tepat untuk melengkapi kode tersebut sehingga benar?

String url = "http://kusmadi.ueuo.com";
String url = "http://localhost/site_1/index.php";
String url = " http://localhost/site_1/info.txt";
Semuanya benar
17.
Jika sebuah device mobile mendukung MIDP 2.0 dan CLDC 1.1, dimanakah library untuk GCF didefinisikan?

MIDP 2.0 dan CLDC 1.1
MIDP 2.0
CLDC 1.1
Tidak didefinisikan dalam keduanya, GCF didefinisikan oleh vendor
18.
Baud Rate merupakan istilah yang berhubungan dengan protokol...

HTTP Connection
UDP Connection
TCP/IP Connection
Comm Connection
19.
Manakah yang tidak tepat untuk melengkapi potongan kode pada titik - titik berikut?

ContentConnection connection = (ContentConnection) Connector.open(url);
ContentConnection connection = (ContentConnection) Connector.run(url);
ContentConnection connection = (ItemConnection) Connector.load(url);
ContentConnection connection = (ItemConnection) Connector.read(url);
20.
Protokol manakah yang mampu mengirim data dalam format yang terenkripsi?

HTTPS Connection
UDP Connection
TCP/IP Connection
Comm Connection



MODUL#3 Low Level Interface

MODUL#3 Low Level Interface

Your browser does not support inline frames or is currently configured not to display inline frames.
Waktu Sisa : 0:18:58
1.

Dimanakah anchor untuk string yang digambar dengan script diatas?

Atas Kiri
Atas Tengah
Atas Kanan
Exception
Error
2.

Dimanakah letak tulisan tersebut muncul?

Kanan - Atas layar
Kanan - Bawah layar
Kanan - Tengah layar
Tidak Muncul
Muncul tapi tidak terlihat
3.

Berapa luas daerah yang berwarna hitam?

Seluas Layar
185,5 px2
114,5 px2
35,5 px2
150 px2
4.

Apakah hasil dari kelas Test tersebut?

Muncul kotak putih setelah di-instantiate dan dijalankan
Muncul kotak hitam setelah di-instantiate dan dijalankan
Tidak muncul apa-apa setelah di-instantiate dan dijalankan
2 Error saat di-compile
1 Error saat di-compile
5.

Apa yang terjadi bila porgram dengan potongan kode diatas dieksekusi?

Layar berwarna merah
Layar berwarna hijau
Layar berwarna biru
Layar berwarna kuning
Program tidak dapat di-compile
6.

Dimanakah anchor untuk string yang digambar dengan script diatas?

Atas Kiri
Atas Tengah
Atas Kanan
Exception
Error
7.

Dimanakah anchor untuk string yang digambar dengan script diatas?

Atas Kiri
Atas Kanan
Atas Tengah
Exception
Error
8.

Bila Object dari kelas MyCanvas tersebut dipanggil hasilnya adalah...









9.
Stroke style yang digunakan untuk membuat garis putus-putus adalah

DEFAULT
SOLID
DOTED
SOLLID
DOTTED
10.
Dimanakah letak sudut 0° pada method drawArc()?

Arah jam 6
Arah jam 9
Arah jam 12
Arah jam 3
Tengah
11.
Berikut ini yang merupakan pernyataan valid adalah ...

Graphics.setColor(0x555555);
Graphics.setColor(1/2, 1/2, 1/2);
Graphics.setColor(0.5, 0.5, 0.5);
Graphics.setColor(0, 0, 0);
Graphics.setColor(256, 256, 256);
12.

Pada kelas Test diatas, dimanakah letak gambar Persegi Panjang yang dihasilkan?

Mulai tengah layar sebesar 10x10 pixel
Tidak ada
Tepat di tengah layar sebesar 20x20 pixel
Mulai titik (10,10) sampai titik (30,30)
Mulai titik (10,10) sampai titik (20,20)
13.

Apa yang terjadi bila suatu program yang memiliki potongan kode diatas di-compile dan dijalankan?

Error saat dapat di-compile
Dapat di-compile tapi tidak bisa dijalankan
Dapat di-compile dan dijalankan dengan baik
Dapat di-compile dengan warning
Dapat di-compile dan dijalankan dengan Exception
14.

Pada layar aktif 128x128 pixel, tulisan apakah yang seharusnya muncul sesuai dengan program diatas?

A Text
128,128
New Text
Text too
This is text
15.

Dengan potongan kode diatas, bagaimana hasil program ini?





Error saat di-compile
Error saat dijalankan
16.

Warna apa yang terdapat pada layar?

Biru
Biru Muda
Hijau
Hijau Muda
Error
17.

Dari potongan kode diatas, bagaimanakah baris kode yang harus ditambahkan agar dapat membentuk gambar berikut ini?

g.DrawLine(0, 0, 0, 50);
g.DrawLine(0, 0, 50, 0);
g.DrawLine(0, 0, 50, 50);
g.DrawLine(0, 50, 50, 50);
g.DrawLine(50, 0, 50, 50);
18.

Berapakah sudut yang dibentuk oleh dua garis yang digambar dengan kode diatas?

60°
75°
90°
105°
120°
19.

Berapa nilai x dan y agar luas daerah yang berwarna hitam 6000 px2 ?

50 dan 20
20 dan 50
50 dan 70
70 dan 50
Tidak ada yang benar
20.

Bila kode pada baris ke-21 diletakkan pada baris ke-24, tulisan apakah yang seharusnya muncul?

Text too
This is text
New Text
128,128
A Text








Pengenalan Java 2 ME.doc

Your browser does not support inline frames or is currently configured not to display inline frames.
Waktu Sisa : 0:20:58
1.
Manakah dibawah ini yang tidak dibutuhkan untuk JTWI?

MIDP 2.0
WMA 1.1
MMAPI 1.1
CLDC 1.0#
2.
Fitur J2SE yang tidak terdapat dalam CLDC adalah

Security
Asynchronous Exceptions#
Internasionalization
Reflection#
Java Native Interface#
3.
Tentukan output dari potongan kode berikut ini :

Muncul Tulisan "Hello,world!"
Tidak muncul apa-apa
Tidak bisa di-compile
Tidak bisa di-run
4.
Perhatikan kode dibawah ini:

Apa yang terjadi apabila kode diatas di-compile pada wireless toolkit ?

Kode error karena CLDC tidak menerima package java.util
Kode dapat berjalan dengan baik
Kode error karena tidak memiliki method startApp(), pauseApp(), dan destroyApp(boolean a)
Kode error karena class tersebut bukan MIDlet
5.
Berikut ini yang benar mengenai configuration, kecuali
Menggambarkan fitur minimal dari lingkungan lengkap Java runtime
Untuk menjamin kemampuan portabilitas dan interoperabilitas optimal diantara berbagai macam perangkat yang dibatasi sumber dayanya
Menggambarkan fitur tambahan
Menggambarkan suatu komplemen yang minimum dari teknologi JAVA
6.
Bagaimanakah status MIDlet pada saat pertama kali dijalankan?

Started
Paused#
Active
Running
Destroyed
7.
Atribut MIDlet-Jar-Size dari file JAD menentukan ukuran file jar MIDlet dalam ukuran byte.

Benar
Salah
8.
Berikut ini pernyataan yang benar mengenai CLDC adalah

Mengimplementasikan seluruh fitur J2SE
JVM yang digunakan adalah CVM
Digunakan perangkat pada genggam dengan memori minimal 2MB
Digunakan perangkat genggam dengan memori minimal 160-512KB
Prosessor hanya 32 bit saja
9.
Tentukan output dari potongan kode berikut ini :

"Hello, world!"
"Hello, world!" selama 2 detik
"Hello, world!" selama 5 detik
"Hello, world!" muncul dan langsung hilang
Tidak muncul apa-apa
10.
Perhatikan kode berikut!

Apakah yang terjadi jika kode berikut dijalankan Wireless Toolkit?

Menampilkan "foo" dan "bar" secara berulang-ulang jika tombol Lauch ditekan berulang-ulang.
Terjadi error exception saat ditekan tombol Launch
Tidak bisa dikompile
Menampilkan "foo" dan "bar" sekali saja meskipun tombol Launch ditekan berulang-ulang.
Hanya menampilan "foo" saja
11.
Tentukan output dari potongan kode berikut ini :

Muncul tulisan "Hello, world!"
Muncul layar kosong
Muncul tulisan "Hello, world!" lalu berganti dengan layar kosong
Muncul layar kosong lalu berganti dengan "Hello, world!"
Error
12.
Berikut ini atribut manakah yang menjelaskan versi dari CLDC dalam file JAD?

Configuration
MIDP-Configuration
Microedition-Configuration
MIDlet-Configuration
MIDlet-Version
13.
Diberikan potongan kode midlet console sebagai berikut

Apakah yang menjadi output dari kode diatas?

Kompilasi sukses, dan kode tidak menghasilkan exception, tetapi tidak ada yang dihasilkan dari method tersebut.
"jeni" dan "dua" keduanya ditampilkan pada console
Kode menghasilkan runtime exception.
Kompilasi gagal
"jeni" kemudian menampilkan exception
14.
Berikut ini yang tidak termasuk atribut MIDlet adalah

MIDlet-Info-URL
MIDlet-Jar-URL
MIDlet-Version
MIDlet-Description
MIDlet-Profile
15.
Berikut diberikan contoh perintah untuk membuat file JAR.
jar cvfm HelloMidlet.jar manifest.txt HelloMidlet.class
Apakah arti dari parameter "f" pada perintah diatas?

Untuk membuat archive (file JAR) baru
Untuk menampilkan proses pembuatan file JAR
Untuk menentukan nama file archive (file JAR)
Menentukan bahwa perintah tersebut menyertakan file manifest
Mengupdate archive (file JAR) yang ada
16.
Berikut ini yang merupakan method dalam kelas MIDlet adalah

notifyStarted()
notifyPaused()
notifyResume()
resumeRequest()
notifyDestroyed()
pauseRequest()
17.
Dalam implementasinya MIDlet memiliki struktur direktori. Direktori apakah yang menyimpan sumber daya yang dibutuhkan oleh MIDlet, seperti gambar icon?

src
res
lib
bin
apps
18.
Sebutkanlah minimal system yang diperlukan untuk menjalankan sebuah MIDlet didalam emulator !

OS - Configuration - Profilegmmmm
OS - KVM - CLDC - MIDP
OS - CLDC - MIDP
OS - Configuration
OS - CLDC - MIDP - Optional Packages
19.
Berikut ini merupakan fitur MIDP 2.0 yang tidak terdapat pada MIDP 1.0

javax.media.*
javax.io.*
javax.rms.*
javax.pki.*
Semua salah
20.
Apa yang terjadi pada kode berikut ini?

Akan menampilkan Alert yang berisi "Hallo Duniaku..."
Kode berhasil dikompile tetapi setelah dijalankan tidak menampilkan apapun
Kode berhasil dikompile, tetapi menghasilkan error exception setelah dijalankan
Kode tidak dapat dikompile atau terjadi error saat dikompile
Semua jawaban salah



MODUL#4 Persistence

MODUL#4 Persistence

1.
Dari potongan kode diatas, berapakah nilai i maksimum yang didapat bila terdapat 5 buah record store?
2
3
4
5
Exception Error
2. Bila terdapat record store RS1, RS2, RS3, RS4, dan RS5, apakah nilai dari names[3] pada kode diatas?
RS1
RS2
RS3
RS4
RS5
3. Bilamanakah names bernilai null?
Saat tidak ada record store yang tersimpan
Saat tidak ada record store yang dibuat oleh aplikasi tersebut
Saat ada record store yang bernama null
Saat ada record store yang dihapus
Saat record store belum dibuka
4. Pernyataan tentang AUTHMODE berikut ini yang benar adalah
AUTHMODE_ANY bisa diakses dari MIDlet suite manapun seperti mengakses AUTHMODE_PRIVATE
AUTHMODE_PRIVATE hanya bisa diakses oleh MIDlet suite yang menciptakan record store tersebut
AUTHMODE_ANY dapat digunakan bersama-sama dengan AUTHMODE_PRIVATE
MIDlet suite yang menciptakan suatu record store selalu mempunyai akses writable pada record store tersebut
Pada AUTHMODE_ANY, MIDlet suite lain hanya bisa membaca record store tersebut

5. Bagaimana cara menggunakan AUTHMODE?

6. Saat membaca record store dengan input stream dan menggunakan CLDC 1.0, manakah method berikut ini yang tidak dapat digunakan?
readChar()
readFloat()
readByte()
readInt()
readLong()
7.
Dengan method diatas, berapa byte data yang terdapat pada stream dout ?
3
4
5
6
7
8.      Apakah yang menjadi output dari potongan kode berikut ini ?

import java.io.*;
import javax.microedition.midlet.*;
import javax.microedition.rms.*;

public class Rms1 extends MIDlet{
  private RecordStore rs = null;
  static final String REC_STORE = "rms_sederhana";

  public Rms1(){
    openRecStore();
  }

  public void destroyApp( boolean unconditional ){
  }

  public void startApp(){
    destroyApp(false);
    notifyDestroyed();
  }

  public void pauseApp(){
  }

  public void openRecStore(){
    try{
      rs = RecordStore.openRecordStore(REC_STORE, true);
      System.out.println("Open Record Store Sukses");
    }
    catch (Exception e){
      db(e.toString());
    }
  }   
  public void db(String str){
    System.err.println("Pesan Error " + str);
  }
}

a.      Terciptalah sebuah record store dengan nama REC_STORE
b.      Muncul teks “Open Record Store” ke layar
c.       Sebuah rms dengan nama rms_sederhana telah terbentuk
d.      Teks “Open Record Store” muncul di layar device, sebagai penanda bahwa record store telah sukses dibuat
e.      Muncul teks “Open Record Store” ke console yang menandai rms_sederhana siap untuk digunakan  

9.      Lengkapilah titik-titik pada kode berikut ini sehingga  di dapatkan sebuah record store seperti di bawah ini :

1
Java ME
2
Jeni

import java.io.*;
import javax.microedition.midlet.*;
import javax.microedition.rms.*;

public class Rms2 extends MIDlet{
  private RecordStore rs = null;
  static final String REC_STORE = "rms_sederhana";

  public Rms2(){
    try{
      rs = RecordStore.openRecordStore(REC_STORE, true);
    }
    catch (Exception e){
      db(e.toString());
    } 
    ………
    ………     
}

  public void destroyApp( boolean unconditional ){
  }

  public void startApp(){
    destroyApp(false);
    notifyDestroyed();
  }

  public void pauseApp(){
  }

  public void writeRecord(String str){
    byte[] rec = str.getBytes();

    try{
      rs.addRecord(rec, 0, rec.length);
               }
    catch (Exception e){
      db(e.toString());
    }
  }
  
  public void db(String str){
    System.err.println("Pesan Error" + str);
  }
}

a.      writeRecord(“Java ME”);
writeRecord(“Jeni”);
b.      writeRecord();
c.       writeRecord(“Java ME Jeni”);
d.      addRecord(“jeni”,1,4);
e.      rs.addRecord(rec, 0, rec.length);
rs.addRecord(rec, 0, rec.length);


10.     Pernyataan manakah yang benar mengenai baris kode berikut. Diumpakan semua objek adalah objek yang valid.
rs.addRecord(rec1, 0, rec1.length);
rs.addRecord(rec2, 0, rec2.length);
rs.addRecord(rec3, 0, rec3.length);
rs.deleteRecord(2);
rs.getRecord(2, data, 0);

A.      Kode tersebut akan berhasil dikompile dan dijalankan
B.       Kode tersebut akan berhasil dkompile tetapi tidak akan melempar sebuah exception saat berjalan.
C.       Kode tersebut akan berhasil dikompile dan berjalan jika “rs.deleteRecord(2)” dihilangkan.
D.      Kode tersebut tidak akan bisa dikompile.

11.     Berikut ini yang benar mengenai RecordStore adalah?
A.      Ketika mengupdate record, user yang lain dapat mengupdate record yang sama pada waktu yang sama pula.
B.       Jika tidak ada RecordStore saat memanggil RecordStore.openRecordStore("MyRecords", true), dihasilkan sebuah RecordStoreNotFoundException.
C.       Sebuah penggilan ke RecordStore.deleteRecord akan mengijinkan recordID untuk digunakan kembali.
D.      RecordStoreNames adalah case-sensitif dan tidak dapat mencapai 32 karakter.

12.     Misalkan anda mempunyai dua MIDlet suite yang menshare sebuah RecordStore.
MIDletA membuat record store.

Apakah hasil dari kode berikut ini. Diasumsikan semua method interface diimplementasikan dengan benar dan form dan command siap ditampilkan. User memilih objek command Delete.
code:
public class MIDletB extends MIDlet implements CommandListener, Runnable{
   private Display myDisplay;
   private Form myForm;
   private Command deleteRecordStore;
   private Command exitRecordStore;

   private RecordStore sharedRecords;

   public MIDletB(){
          try {
                 sharedRecords = RecordStore.openRecordStore                             ("BankAccounts", "VendorName", "MIDletASuite");
          } catch (Exception e) {
                 // Do some exception handling here
          }
   }

   public void commandAction(Command c, Displayable s) {
          if (c == deleteRecordStore) {
                 try {
                        RecordStore.deleteRecordStore("BankAccounts");
                 } catch (Exception e) {
                        // Do some exception handling here
                 }
          }
  
   ...
   }
}
A.      RecordStore yang dishare dengan nama BankAccounts dihapus dari device mobile.
B.       Sebuah RecordStoreException dihasilkan saat memanggil deleteRecordStore().
C.       RecordStore yang dishare dengan nama BankAccounts dihapus dari MIDletB Suite saja.
D.      RecordStore yang dishare dengan nama BankAccounts masih ada, tetapi semua record terhapus.
E.       Sebuah RecordStoreException dihasilkan saat memanggil openRecordStore().
13.     Perhatikan potongan kode berikut ini. Asumsikan method untuk menulis, membaca, menghapus dan menutup Record Store sudah ada dan berjalan dengan baik. Apakah hasil dari kode tersebut?

public class ReadWrite extends MIDlet {
       private RecordStore rs;
       static final String REC_STORE = "db_1";
      
       public ReadWrite(){
              openRecStore();
              writeRecord("Arif Kurniawan");
              writeRecord("Dwi Setyadi");   
              writeRecord("Kanda Mubarrag");
              readRecords();
              closeRecStore();
              deleteRecStore();
       }
       ............................     
       public void openRecStore(){
              try{
                     rs = RecordStore.openRecordStore(REC_STORE, false);
              }
              catch (Exception e){
                     db(e.toString());
              }
       }
       ...........................
}

A.      Tidak bisa dikompile
B.       Bisa dikompile tapi tidak menampilkan apapun
C.       Berhasil dikompile tetapi saat dijalankan menghasilkan error exception
D.      Berhasil dikompile dan dijalankan dengan baik
14.     Berikut method-method untuk mengambil informasi dari record store  (javax.microedition.rms.RecordStore). Method manakah yang bisa mengembalikan jumlah record yang berada pada record store?
A.      int getSize()
B.       int getSizeAvialable()
C.       int getNumRecords()
D.      int getRecordSize(int RecordId)
E.       int getNextRecordID()

15.     Apakah kepanjangan dari RMS?
A.     Resource Management System
B.     Record Management System
C.     Research Management system
D.     Risk Management System
16.                 Apakah hubungan antara RMS dengan Oracle Lite
A Tidak ada hubungannya, keduanya merupakan database mobile yang terpisah
B Oracle merupakan bagian dari RMS
C RMS merupakan bagian Oracle
D RMS dan Oracle merupakan bagian dari SQL Server CE
17.                 Berikut ini, manakah yang bisa dianalogikan sebagai database trigger?
A RecordListener
B RecordFilter
C Dictionary
D Enumeration

18.                 Berapa kolom yang mungkin ada untuk setiap record dalam sebuah sistem RMS termasuk kolom default dari Record ID?
A 4
B 1
C 3
D 10

19.                 Apakah istilah untuk contraints (kunci) pada Record dalam RMS?
A Primary Key
B Foreign Key
C Not Null
D Constraints tidak ada dalam RMS
20.
Kapan kita membutuhkan Record Comparator dan bagaimana cara mengimplementasikan Record Comparator?

a.        Record Comparator digunakan jika kita ingin membandingkan dua buah record atau lebih. Untuk menggunakannya, kita harus meng-implements class Record Comparator kemudian meng-implements method compare(). 
b.        Record Comparator digunakan jika kita ingin mengurutkan records didalam record store. Untuk mengimplementasikannya, kita dapat membuat class baru yang mengoverride method compare() dari interface Record Comparator.
c.        Record Comparator digunakan jika kita ingin mengurutkan output dari sebuah enumerasi. Interface Record Comparator harus di-implements oleh class MIDlet kita, kemudian override method compare() dan set argument kedua dari method enumerateRecords() menjadi this.  
d.        Jika kita ingin mengurutkan sebuah enumerasi dengan cara melakukan pembandingan antar record-nya. Interface Record Comparator dapat di-implements oleh sebuah class baru, maupun dalam class MIDlet itu sendiri. Method compare() otomatis harus dioverride, dan argument dari method enumerateRecords() juga harus diset untuk menerima object dari class yang meng-implements RecordComparator tsb.

21.
Ubahlah kode berikut ini sehingga mendapatkan descending sorting

public int compare(byte[] record1, byte[] record2)
  {
    String string1 = new String(record1),
               string2= new String(record2);
    int comparison = string1.compareTo(string2);
    if (comparison == 0)
      return RecordComparator.EQUIVALENT;
    else if (comparison < 0)
      return RecordComparator.PRECEDES;
    else
      return RecordComparator.FOLLOWS;
  }

a.

if (comparison == 0)
      return RecordComparator.PRECEDES;
    else if (comparison < 0)
      return RecordComparator.FOLLOWS;
    else
      return RecordComparator.EQUIVALENT;
b.
if (comparison > 0)
      return RecordComparator.PRECEDES;
    else {
                        if (comparison < 0)
                        return RecordComparator.FOLLOWS;
                        else
                        return RecordComparator.EQUIVALENT;
        }

c.
if (record1.compareTo(record2) < 0){
                                        return(PRECEDES);
                        } else {
                                        if (record1.compareTo(record2) > 0){
                                                        return(FOLLOWS);
                                        } else {
                                                        return(EQUIVALENT);
                                        }
d.
   if (comparison == 0)
      return RecordComparator.FOLLOWS;
    else if (comparison < 0)
      return RecordComparator.PRECEDES;
    else
      return RecordComparator.EQUIVALENT

22.
Apakah hasil dari potongan kode berikut ini, jika semua package yang diperlukan telah diimport?

public class SortExample extends MIDlet{
  private Display display;
  private Form form;
  private RecordStore recordstore = null;
  private RecordEnumeration recordEnumeration = null;
  private Comparator comparator = null;
  public SortExample (){
    display = Display.getDisplay(this);
    form = new Form("Coba RecordEnumeration", null);
  }
  public void startApp(){
           try{
        recordstore = RecordStore.openRecordStore("myRS", true );
          String outputData[] = {"Jeni", "Jena", "Jene"};
        for (int x = 0; x < 3; x++){
          byte[] byteOutputData = outputData[x].getBytes();
          recordstore.addRecord(byteOutputData,0,byteOutputData.length);
          }
          StringBuffer buffer = new StringBuffer();
        Comparator comparator = new Comparator();
        recordEnumeration = recordstore.enumerateRecords(null, comparator, false);
        while (recordEnumeration.hasNextElement()){
          buffer.append(new String(recordEnumeration.nextRecord()));
          buffer.append("\n");
        }
                        String s = buffer.toString();
                        StringItem si = new StringItem("",s);
                        form.append(si);
                        display.setCurrent(form);
                    recordstore.closeRecordStore();
          }
      catch (Exception error){System.out.println("error");} 
  }
  public void pauseApp(){}
  public void destroyApp( boolean unconditional ){}
}
class Comparator implements RecordComparator{
  public int compare(byte[] record1, byte[] record2){
    String string1 = new String(record1),
               string2= new String(record2);
    int comparison = string1.compareTo(string2);
    if (comparison == 0)
      return RecordComparator.EQUIVALENT;
    else if (comparison < 0)
      return RecordComparator.PRECEDES;
    else
      return RecordComparator.FOLLOWS;
  }
}

a.        error
b.        Sebuah form dengan tulisan Jeni Jena Jene
c.        Sebuah form bertuliskan Jena Jene Jeni
d.        Tulisan Jene Jeni Jena pada sebuah form


23. Apakah yang menjadi output pada potongan program dibawah ini?
Dengan catatan bahwa semua object dan package yang belum dideklarasikan,dianggap telah dideklarasikan sebelumnya. Blok pertama dari kode dibawah ini diletakkan pada sebuah MIDlet, yang akan dieksekusi pada saat sebuah Command Ok ditekan dan hasil pembacaan dari enumeration akan ditampilkan oleh sebuah alert. 

    
   recordstore = RecordStore.openRecordStore( "myRS", true );
        String outputData[] = {"Jeni", "Jena", "Jene"};
        for (int x = 0 ; x < 3; x++){
          byte[] byteOutputData = outputData[x].getBytes();
          recordstore.addRecord(byteOutputData, 0, byteOutputData.length);
        }
  filter = new Filter("Java");
        recordEnumeration = recordstore.enumerateRecords(filter, null, false);
        if (recordEnumeration.numRecords() > 0){
          String string = new String(recordEnumeration.nextRecord());
      }


class Filter implements RecordFilter{
  private String search = null;
  public Filter(String search){
    this.search = search.toLowerCase();
  }
  public boolean matches(byte[] suspect){
    String string = new String(suspect).toLowerCase();
    if (string!= null && string.indexOf(search) != -1)
      return true;
    else
      System.out.println(“doesn’t match”);
      return false;
  }
}

a.        Muncul String Jeni, Jena, dan Jene pada Alert
b.        Compile Error
c.        Muncul tiga buah String doesn’t match pada console
d.        Muncul String doesn’t match pada Alert
e.        Muncul String Java pada console 
f.         Tampil String Java pada Alert
g.        Muncul sebuah String doesn’t match pada console

loading...

0 Response to "Jawaban Jeni 2 :Modul 1-5 (Modul-1-pengenalan-j2-me / Modul-2-low-level / Modul-3-high-level / Modul-4-persistant / Modul-5-jaringan)"

Posting Komentar