hjälp: nybörjar-java [LÖST]

Här diskuteras programmering och utveckling
Användarvisningsbild
Chippen
Inlägg: 1237
Blev medlem: 05 jun 2006, 18:15
Ort: Haninge Kommun

hjälp: nybörjar-java [LÖST]

Inlägg av Chippen »

Jag har precis plockat upp boken lär dig java 2 på 3 veckor som stått i bokhyllan ett bra tag nu.

Men jag har direkt stött på problem. Jag försöker skriva in det första exempelprogrammet men det funkar inte riktigt. jag användet netbeans och koden ser ut såhär:

Kod: Markera allt

    public static void main(String[] args) {
        class VolcanoRobot() {
    String status;
    int speed;
    float temperature;
    
    void chechTemperature() {
        if (temperature > 660) {
            status = "returning home";
            speed = 5
        }
        
    }
    void showAttributes(){
        System.out.println("Status:" + status);
        System.out.println("speed:" + speed);
        System.out.println("Temperature:" + temperature);
    }
    
}
    }
    
}
}
i felmeddelandet står det:
init:
deps-jar:
Compiling 1 source file to /home/chippen/java/test/build/classes
/home/chippen/java/test/src/test/Main.java:26: '{' expected
        class VolcanoRobot() {
1 error
BUILD FAILED (total time: 0 seconds)
Den säger alltså att den förväntar sig ett { på den rad där det står class VolcanoRobot() { och där står ju redan ett { och inte blir det bättre av att jag skriver ett till :S...tacksam för hjälp

MVH
Senast redigerad av 1 Chippen, redigerad totalt 30 gånger.
Sualo
Inlägg: 159
Blev medlem: 18 nov 2006, 17:28
OS: Ubuntu
Utgåva: 16.04 Xenial Xerus LTS
Ort: Malmö

SV: hjälp: nybörjar-java

Inlägg av Sualo »

Nu kan jag ju inte java men är det inte så att du saknar ett }

När jag räknar ser jag 3 st { men bara 2 st }
men som sagt jag kan ju inte java
Okänd
Inlägg: 30172
Blev medlem: 03 mar 2008, 01:30
OS: Ubuntu

SV: hjälp: nybörjar-java

Inlägg av Okänd »

jo den här koden borde fungera:

Kod: Markera allt


public class VolcanoRobot() {
      String status;
      int speed;
      float temperature;

     /* varje klass behöver en konstruktor för att skapa ett objekt */

     
     public VolcanoRobot() {
       /* i konstruktorn så bör man tilldela attribut */  
       status = "en sträng";
         speed = 3;
         temperature = 3;

     }

    
     void chechTemperature() {
        if (temperature > 660) {
            status = "returning home";
            speed = 5;
        }
      }
        
        void showAttributes(){
           System.out.println("Status:" + status);
           System.out.println("speed:" + speed);
           System.out.println("Temperature:" + temperature);
    }
    
     /* main metoden är funktionen som körs först i programmet */
     public static void main(String[] args) {

           /* här skapar vi ett robot objekt och skriver ut dess attrbribute*/
           VolcanoRobot robot = new VolcanoRobot();

           robot.showAttributes();
     }
}
Användarvisningsbild
Chippen
Inlägg: 1237
Blev medlem: 05 jun 2006, 18:15
Ort: Haninge Kommun

SV: hjälp: nybörjar-java

Inlägg av Chippen »

gasol, när jag klistrar in din kod i gedit och döper filen till test2.java och kör komandot

javac ./test2.java så får jag felmeddelandet:
/home/chippen/java/test2.java:2: '{' expected
public class VolcanoRobot() {
                        ^
/home/chippen/java/test2.java:41: '}' expected
^
2 errors

gör jag något fel?
TicToc
Inlägg: 2266
Blev medlem: 27 dec 2006, 17:28
OS: Kubuntu
Utgåva: 20.04 Focal Fossa LTS

SV: hjälp: nybörjar-java

Inlägg av TicToc »

Chippen skrev: gör jag något fel?
Ja, det gör du...

init:
deps-jar:
Created dir: /home/patrik/dvlp/slask/JavaApplication1/build/classes
Compiling 1 source file to /home/patrik/dvlp/slask/JavaApplication1/build/classes
compile:
run:
Status:en sträng
speed:3
Temperature:3.0
BUILD SUCCESSFUL (total time: 0 seconds)

Ändra public class VolcanoRobot() { till
public class VolcanoRobot {
Användarvisningsbild
Chippen
Inlägg: 1237
Blev medlem: 05 jun 2006, 18:15
Ort: Haninge Kommun

SV: hjälp: nybörjar-java

Inlägg av Chippen »

ah, tack så mycket!  det var jag som hade lyckats göra fel (ett helt ologiskt fel till på köpet :S
Okänd
Inlägg: 30172
Blev medlem: 03 mar 2008, 01:30
OS: Ubuntu

SV: hjälp: nybörjar-java

Inlägg av Okänd »

doh! jag kanske skulle ha kompilerat koden själv innan jag postade den :P
Användarvisningsbild
Chippen
Inlägg: 1237
Blev medlem: 05 jun 2006, 18:15
Ort: Haninge Kommun

SV: hjälp: nybörjar-java

Inlägg av Chippen »

asså hur gör jag för att köra den... när jag kör javac och inte får något felmeddelande så händer istället ingenting...
Okänd
Inlägg: 30172
Blev medlem: 03 mar 2008, 01:30
OS: Ubuntu

SV: hjälp: nybörjar-java

Inlägg av Okänd »

när du har kompilerat filen så kommer det att skapas en VolcanoRobot.class fil. För att köra den så skriver du i samma mapp som den filen det här:

java -cp .  VolcanoRobot

Kod: Markera allt

<arlong-park /home/gasol> javac VolcanoRobot.java

<arlong-park /home/gasol> java -cp . VolcanoRobot
Status:en sträng
speed:3

Användarvisningsbild
Chippen
Inlägg: 1237
Blev medlem: 05 jun 2006, 18:15
Ort: Haninge Kommun

SV: hjälp: nybörjar-java

Inlägg av Chippen »

jag får nått fel...
chippen@chippen-desktop:~$ javac /home/chippen/java/test1.java
chippen@chippen-desktop:~$ java -cp . VocolcoRobot
Exception in thread "main" java.lang.NoClassDefFoundError: VocolcoRobot
TicToc
Inlägg: 2266
Blev medlem: 27 dec 2006, 17:28
OS: Kubuntu
Utgåva: 20.04 Focal Fossa LTS

SV: hjälp: nybörjar-java

Inlägg av TicToc »

Chippen skrev: jag får nått fel...
chippen@chippen-desktop:~$ javac /home/chippen/java/test1.java
chippen@chippen-desktop:~$ java -cp . VocolcoRobot
Exception in thread "main" java.lang.NoClassDefFoundError: VocolcoRobot
Varför sitter du inte i netbeans?
Det kan vara så att 'fel' java anropas, du har nog en gnu-variant isnatllerad också. Skriv hela sökvägen till suns java, se om det blir skillnad.
Eller skriv java --version och sedan java -version, då ser man vem som 'svarar'.
Användarvisningsbild
Chippen
Inlägg: 1237
Blev medlem: 05 jun 2006, 18:15
Ort: Haninge Kommun

SV: hjälp: nybörjar-java

Inlägg av Chippen »

java -version
java version "1.5.0_11"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_11-b03)
Java HotSpot(TM) Client VM (build 1.5.0_11-b03, mixed mode, sharing)
ska jag vara ärlig så är jag inte i netbeans för att jag inte förstår allt det som står från början när jag startar ett projekt... du kanske har lust att förklara vad jag ska skriva vart?

Kod: Markera allt

/*
 * Main.java
 *
 * Created on den 28 maj 2007, 21:36
 *
 * To change this template, choose Tools | Template Manager
 * and open the template in the editor.
 */

package javaapplication4;

/**
 *
 * @author chippen
 */
public class Main {
    
    /** Creates a new instance of Main */
    public Main() {
    }
    
    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        // TODO code application logic here
    }
    
}
Användarvisningsbild
Galgalid
Inlägg: 1646
Blev medlem: 08 dec 2006, 12:30

SV: hjälp: nybörjar-java

Inlägg av Galgalid »

Du gör ett nytt projekt och väljer java-application..ger den ett namn och väljer typ enable main class...sen genereras projektet också står där massa skit...bara ta bort det och börja från början...sen när du har skrivt projektet så går du till build och väljer build main project...acceptera..klart...

Koden för en fungerande VOlcanoRobot-applikation ser ut såhär:

class VolcanoRobot {
    String status;
    int speed;
    float temperature;

    void checkTemperature() {
        if (temperature > 660) {
            status = "returning home";
            speed = 5;
        }
    }

    void showAttributes() {
        System.out.println("Status: " + status);
        System.out.println("Speed: " + speed);
        System.out.println("Temperature: " + temperature);
    }

    public static void main(String[] arguments) {
        VolcanoRobot dante = new VolcanoRobot();
        dante.status = "exploring";
        dante.speed = 2;
        dante.temperature = 510;

        dante.showAttributes();
        System.out.println("Increasing speed to 3.");
        dante.speed = 3;
        dante.showAttributes();
        System.out.println("Changing temperature to 670.");
        dante.temperature = 670;
        dante.showAttributes();
        System.out.println("Checking the temperature.");
        dante.checkTemperature();
        dante.showAttributes();
    }
}
Senast redigerad av 1 Galgalid, redigerad totalt 29 gånger.
Användarvisningsbild
Chippen
Inlägg: 1237
Blev medlem: 05 jun 2006, 18:15
Ort: Haninge Kommun

SV: hjälp: nybörjar-java

Inlägg av Chippen »

Tackar, jag har nu lyckats få det att funka... tror det är mina netbeans skills som inte håller måttet :P
Okänd
Inlägg: 30172
Blev medlem: 03 mar 2008, 01:30
OS: Ubuntu

SV: hjälp: nybörjar-java

Inlägg av Okänd »

Problem solved ?
;) ;) ;)
Användarvisningsbild
Chippen
Inlägg: 1237
Blev medlem: 05 jun 2006, 18:15
Ort: Haninge Kommun

SV: hjälp: nybörjar-java

Inlägg av Chippen »

yepp, problem solved ::D
Skriv svar

Återgå till "Programmering och webbdesign"