XCode 2.4 / JAVA

  1. scree

    scree Thread StarterMacUser Mitglied

    Mitglied seit:
    01.03.2006
    Beiträge:
    12
    Zustimmungen:
    0
    hallo forum.

    folgendes problem: ich habe zwei java files in meinem src folder, wobei eine die andere extended. allerdings kann ich immer nur ein file ausführen, wobei ich dann keine ausgabe erhalten, da die main methode leer ist.

    file Berechnungen.java

    Code:
    import java.lang.Math;
    
    public class Berechnungen {
    
    	public static final double pi = Math.PI;
    
    	static double berechneUmfang (double r) {
    		return 2 * pi * r;
    	}
    	
    	static double berechneFlaeche (double r) {
    		return pi * (r * r);
    	}
    
        public static void main (String args[]) {
            
    		// testing
    		
    		// int radius = 10;
    		// System.out.println("radius:        " + radius);
    		// System.out.println("circumference: " + berechneUmfang(radius));
    		// System.out.println("area:          " + berechneFlaeche(radius));
        }
    }
    file TestBerechnungen.java

    Code:
    public class TestBerechnen extends Berechnungen {
    	 
    	 public static void main (String args[]) {
            
    		// set radius
    		int radius = 10;
    		
    		System.out.println("radius:        " + radius);
    		System.out.println("circumference: " + berechneUmfang(radius));
    		System.out.println("area:          " + berechneFlaeche(radius));
        }
    }
    ich will einfach nur TestBerechnen ausführen, allerdings ignoriert XCode das irgendwie und führt mir immer Berechnungen.java aus. hat da jemand eine idee vielleicht?
     
    scree, 19.11.2006
  2. Sojus

    SojusMacUser Mitglied

    Mitglied seit:
    30.05.2006
    Beiträge:
    143
    Zustimmungen:
    3
    Code:
    public class TestBerechnen extends Berechnungen {
    	 
    	 public static void main (String args[]) {
            TestBerechnen t = new TestBerechnen();
    		// set radius
    		int radius = 10;
    		
    		System.out.println("radius:        " + t.radius);
    		System.out.println("circumference: " + t.berechneUmfang(radius));
    		System.out.println("area:          " + t.berechneFlaeche(radius));
        }
    }
    
    wenn du eine klasse machst musst du aus der auch irgendwo ein objekt erstellen

    mfg
     
    Sojus, 19.11.2006
  3. worf

    worfMacUser Mitglied

    Mitglied seit:
    06.01.2005
    Beiträge:
    848
    Zustimmungen:
    13

    Das ist nur bedingt richtig.

    Dafür hat er doch die Methoden statisch deklariert. Warum jetzt XCode das nicht will kann ich allerdings auch nicht sagen.

    LG Worf
     
    worf, 19.11.2006
  4. scree

    scree Thread StarterMacUser Mitglied

    Mitglied seit:
    01.03.2006
    Beiträge:
    12
    Zustimmungen:
    0
    es ist ja so, dass, wenn ich auf "build & run" klicke, immer die main methode von "Berechnungen" aufgerufen wird. frage wäre, wie man die andere Klasse zum laufen bringt...
     
    scree, 19.11.2006
  5. ruerueka

    rueruekaMacUser Mitglied

    Mitglied seit:
    04.04.2004
    Beiträge:
    1.080
    Zustimmungen:
    85
    Build & Run erzeugt ein Jar und führt dieses aus. Um eine andere als die automatisch mit dem Projekt erzeugte Klasse auszuführen, kannst du einfach im Manifest die andere Klasse als Startklasse eintragen. (Ich hab zwar noch xcode 2.2.1, aber da sollte sich nix geändert haben).
     
    ruerueka, 19.11.2006
  6. scree

    scree Thread StarterMacUser Mitglied

    Mitglied seit:
    01.03.2006
    Beiträge:
    12
    Zustimmungen:
    0
    juhu, das wars. vielen vielen dank.
     
    scree, 19.11.2006
  7. palman

    palmanMacUser Mitglied

    Mitglied seit:
    21.11.2003
    Beiträge:
    131
    Zustimmungen:
    0
    Man kann auch die 2 Dateien in einem Standard Package zusammenpacken oder?

    greetz palman
     
    palman, 19.11.2006
  8. Sojus

    SojusMacUser Mitglied

    Mitglied seit:
    30.05.2006
    Beiträge:
    143
    Zustimmungen:
    3
    stimmt ja die sind statisch, habe ich nicht gesehen

    *ascheaufhaupt*
     
    Sojus, 19.11.2006
Die Seite wird geladen...