J2ME-kirjan esimerkki

Mikähän mahtaa olla ongelman syy?

Ilmoittaa vikaa seuraavissa kohdissa:

ImageItem duke=new ImageItem("Copyright: ",

ja

ImageItem.LAYOUT_NEWLINE_AFTER,"Duke");

---------
import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
import java.io.*;

/**
* @author 28.12.2008 J2ME-kirjasta esimerkkiohjelma kuvien sijoittelemisesta
*/
public class ShowImage extends MIDlet {

private Display display=null;
private Form form=null;
private Image img=null;

public ShowImage()
{
form=new Form("ImageTest");

try{
ImageItem duke=new ImageItem("Copyright: ",
Image.createImage("/gnu.png"),
ImageItem.LAYOUT_CENTER|
ImageItem.LAYOUT_NEWLINE_BEFORE)|
ImageItem.LAYOUT_NEWLINE_AFTER,"Duke");
img=Image.createImage("/gnu.png");
}catch(IOException e){
form.append(new StringItem("Err","ImageNotLoaded:" e));

}
}


public void startApp() {

display=Display.getDisplay(this);
display.setCurrent(form);
if(img!=null)
form.append(img);
else
form.append(new StringItem("","Image Not Found"));
}

public void pauseApp() {
}

public void destroyApp(boolean unconditional) {
display.setCurrent(null);
display=null;
notifyDestroyed();
}
}
91125
Äänestä

Muut lukivat myös

Vastaukset 9

Vanhimmat

VÄÄRIN:

ImageItem duke = new ImageItem(
   "Copyright: ",
   Image.createImage("/gnu.png"),
   ImageItem.LAYOUT_CENTER |
   ImageItem.LAYOUT_NEWLINE_BEFORE) |
   ImageItem.LAYOUT_NEWLINE_AFTER,
   "Duke");

OKEIN:

ImageItem duke = new ImageItem(
   "Copyright: ",
   Image.createImage("/gnu.png"),
   ImageItem.LAYOUT_CENTER |
   ImageItem.LAYOUT_NEWLINE_BEFORE |
   ImageItem.LAYOUT_NEWLINE_AFTER,
   "Duke");

Äänestä
  • Kerro jos et huomaa niin paljastan ratkaisun

    Äänestä

  • juu perhanan sulkumerkki

    piti muuten katella pitkään

    Äänestä

  • juu perhanan sulkumerkki kirjoitti:

    juu perhanan sulkumerkki

    piti muuten katella pitkään

    Virheet jotka ohjelman kääntämisestä tuli, olivat:

    1: The constructor ImageItem(String, Image, int) is undefined
    2: The method LAYOUT_NEWLINE_AFTER(String) is undefined for the type ImageItem
    3: Syntax error on token ",", ( expected

    Kohdat joille yllä olevat virheet tulivat, olivat:

    1: new ImageItem("Copyright: ", Image.createImage("/gnu.png"), ImageItem.LAYOUT_CENTER | ImageItem.LAYOUT_NEWLINE_BEFORE)
    2: ,
    3: LAYOUT_NEWLINE_AFTER

    Rivinumero/pallo editorissa kertoo vain sen miltä riviltä virheellinen kohta alkaa, ei välttämättä sitä, millä rivillä todellinen virhe on. Netbeans varmaan näyttää virhettä klikkaamalla, Eclipsen tavoin, sen alueen koodista, eli kohdan, johon virhe kohdistuu. Yleensä ensimmäisen virheilmoituksen virhe on kaikkein paljastavin/kuvaavin, ja sitä kannattaa lähteä selvittämään/korjaamaan, sillä jäljempänä tulevat virheet ovat usein vain seurauksia ensimmäisestä virheestä ja häipyvät kun ensimmäisen virheen saa korjattua.

    Äänestä

java alustaa oliomuuttujat aina nulliksi ilman erillistä alustusta.

Äänestä
  • sinun täytyy kysyä tätä Juha Peltomäeltä joka on kirjoittanut kirjan J2ME-Ohjelmointi Peruskirja.

    Äänestä

  • Juha Peltomäeltä kirjoitti:

    sinun täytyy kysyä tätä Juha Peltomäeltä joka on kirjoittanut kirjan J2ME-Ohjelmointi Peruskirja.

    että "muuttujaa ei ole ehkä alustettu" jos sitä ei alusta.

    Minusta yleensäkkin ottaen fiksua aina alustaa ne.

    PHPssä tais olla niin, että jos et alusta, niin sen voi syöttää URLissa ?muuttuja=arvo ja se saattaa tuoda taas tietoturvaongelmia.

    Äänestä

  • keksa kirjoitti:

    että "muuttujaa ei ole ehkä alustettu" jos sitä ei alusta.

    Minusta yleensäkkin ottaen fiksua aina alustaa ne.

    PHPssä tais olla niin, että jos et alusta, niin sen voi syöttää URLissa ?muuttuja=arvo ja se saattaa tuoda taas tietoturvaongelmia.

    "että "muuttujaa ei ole ehkä alustettu" jos sitä ei alusta. "

    Vain lokaalien muuttujien tapauksessa. Luokan sisäiset muuttujat nollataan tai nullataan aina.

    Äänestä

  • Ei luokan kirjoitti:

    "että "muuttujaa ei ole ehkä alustettu" jos sitä ei alusta. "

    Vain lokaalien muuttujien tapauksessa. Luokan sisäiset muuttujat nollataan tai nullataan aina.

    Jos muuttujalle annetaan arvo vain esim. while silmukassa tai if-else vertailukaaviossa kun arvo on null ilman, että se olisi manuaalisesti alustettu aiemmin (ehkä joillakin ohjelmilla siinäkin tapauksessa) monet javan editointiin tarkoitetut ohjelman valittavat ettei muuttujaa ole alustettu tai että muuttujaa ei välttämättä alusteta, jonka korjaa helposti esim. int i=null; tai int i=0; yms.

    Äänestä

Kommentoi aloitusta


ongelmia taas kirjoitti:

Mikähän mahtaa olla ongelman syy?

Ilmoittaa vikaa seuraavissa kohdissa:

ImageItem duke=new ImageItem("Copyright: ",

ja

ImageItem.LAYOUT_NEWLINE_AFTER,"Duke");

---------
import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
import java.io.*;

/**
* @author 28.12.2008 J2ME-kirjasta esimerkkiohjelma kuvien sijoittelemisesta
*/
public class ShowImage extends MIDlet {

private Display display=null;
private Form form=null;
private Image img=null;

public ShowImage()
{
form=new Form("ImageTest");

try{
ImageItem duke=new ImageItem("Copyright: ",
Image.createImage("/gnu.png"),
ImageItem.LAYOUT_CENTER|
ImageItem.LAYOUT_NEWLINE_BEFORE)|
ImageItem.LAYOUT_NEWLINE_AFTER,"Duke");
img=Image.createImage("/gnu.png");
}catch(IOException e){
form.append(new StringItem("Err","ImageNotLoaded:" e));

}
}


public void startApp() {

display=Display.getDisplay(this);
display.setCurrent(form);
if(img!=null)
form.append(img);
else
form.append(new StringItem("","Image Not Found"));
}

public void pauseApp() {
}

public void destroyApp(boolean unconditional) {
display.setCurrent(null);
display=null;
notifyDestroyed();
}
}

Anonyymi
5000

Ilmoita asiaton sisältö

  • Sisältää materiaalia, joka on loukkaavaa, herjaavaa, rasistista, uhkailevaa tai ahdistelevaa.

  • Materiaali sisältää nimiä, yhteystietoja tai muita henkilökohtaisia tietoja. Julkisuuden henkilöistä, julkisissa viroissa toimivista ihmisistä sekä yritysten vastuuhenkilöistä saa keskustella työhön liittyen. Myös yksityiselämään liittyvistä asioista voi keskustella siltä osin, kuin niistä on julkisesti kerrottu.

  • Sisältää lapsille haitallista tai heiltä kiellettyä materiaalia. Seksuaalinen sisältö on sallittua aiheeseen tarkoitetuilla palstoilla, joiden ikäraja on 18 vuotta.

  • Lainvastaista sisältöä voi olla mm. yksityiselämää loukkaavan tiedon levitys, kiihottaminen kansanryhmää vastaan, laiton uhkaaminen, alaikäisiin liittyvä seksuaalinen sisältö/grooming, petokset, identiteettivarkaudet, kunnianloukkaukset ja tekijänoikeusrikkomukset.

  • Sisältö ei liity palstan tai keskusteluketjun aiheeseen.

  • Viesti ei ole suomea tai ruotsia (pl. International Forums), se sisältää mainontaa, se sisältää tekijänoikeuksin suojattua materiaalia, se on massapostitus tai jokin muu syy.

Jaa keskustelu