[Java] Klasse einbinden

Dieses Thema im Forum "Programmierung & Entwicklung" wurde erstellt von Laura, 28. August 2008 .

Status des Themas:
Es sind keine weiteren Antworten möglich.
  1. 28. August 2008
    Klasse einbinden

    Hey
    Ich habe einen Taschenrechner programmiert und will jetzt mein anderes Programm --> Tastatur einbinden sodass ich die geforderten zahlen per tastatur eingeben kann leider finde ich einfach den befehl nicht
    hoffe ihr könnt mir helfen
    greetz
     
  2. 28. August 2008
    AW: Klasse einbinden

    klassen werden noch folgendem chema eingebunden

    import [packet_name].[klassen_name];
     
  3. 28. August 2008
    AW: Klasse einbinden

    Code:
    Exception in thread "main" java.lang.Error: Unresolved compilation problems: 
     Syntaxfehler bei Token "import", Expression ist ungültig
     Syntaxfehler bei Token ".", Identifier wurde nach diesem Token erwartet
     Syntaxfehler bei Token "import", Expression ist ungültig
     Syntaxfehler bei Token ".", Identifier wurde nach diesem Token erwartet
    
     at uebungNr02_TaschenrechnerV1_BallreichT.Taschenrechner.main(Taschenrechner.java:27)
    mein lehrer hat das iwie kürzer hinbekommen gibts vill noch andere befehle
     
  4. 29. August 2008
    AW: Klasse einbinden

    Also etwas kürzeres weiß ich nicht, allerdings müssen die Imports ganz am Anfang der Klasse, also vor dem public class blubb {}, stehen.

    Ich hab zwar lang nicht mehr in Java programmiert, aber laut Fehlermeldungen hast Du die Imports in der main-Funktion oder?
     
  5. 29. August 2008
    AW: Klasse einbinden

    Also ..

    // Variablen Wertzuweißung


    zahl1=******;
    zahl2=******;

    bei den **** soll mein anderes programm (Tastatur) eingebunden werden das programm kann zahlen von der tastatur einlesen also das soll so sein das man später die zahlen eingeben muss zahl1=TASTATUR so in der art soll das gehen
     
  6. 30. August 2008
    AW: Klasse einbinden

    poste am besten mal den code den du bis jetzt hast .. so wie du dir das vorstellst funktioniert das nämlich nicht so ganz
     
  7. 30. August 2008
    AW: Klasse einbinden

    Also importieren tust die ganz am Anfang vom programm!

    Dann schreibst ne neue methode mit der du die Tastatur abfrägst und rufst sie dann auf!

    mfg
     
  8. 30. August 2008
    AW: Klasse einbinden

    Wenn die beiden klassen im gleichen projekt sind brauchst du die nicht einbinden, dann reicht es Taschenrechner name = new Taschenrechner();
    danach kannst du dann auf die public methoden von deiner anderen klasse darauf zugreifen
     
  9. 30. August 2008
    AW: Klasse einbinden

    wenn sie im gleichen packet liegen muss er sie auch nicht einbinden

    außerdem kannst du ganz normal googel zu dem thema nutzen
    vieleicht solltest du dich mal mit einem e-book zum thema java auseinander setzen
     
  10. 30. August 2008
    AW: Klasse einbinden

    super antwort hilft mir weiter ich habe gegoogelt was das zeug hält habe java ist eine insel durchsucht hab ein java 4 u buch aber ich finde nichts
    --------------

    Code:
    package uebungNr02_TaschenrechnerV1_*******;
    
    import uebungNr02_Taschenrechner27Aug08_*****.Tastatur;
    
    
    
    public class Taschenrechner {
    
     /**
     * @param args
     */
     public static void main(String[] args) {
     
    
     
    // Bestimmen Sie die Summer der beiden Zahlen
    // Variablen deklariert
     
     double zahl1;
     double zahl2;
     double ergSumme;
     double ergProdukt;
     double ergDifferenz;
     double ergQuotient;
     double wurzelAusA;
     double wurzelAusB;
     
     // Variablen Wertzuweißung
     
     
     [COLOR="Red"]zahl1=new Taschenrechner();
     zahl2=new Taschenrechner();[/COLOR] 
     //Berechnung der Ergebnisse
     
     ergSumme=zahl1+zahl2;
     ergProdukt=zahl1*zahl2;
     ergDifferenz=zahl1-zahl2;
     ergQuotient=zahl1/zahl2;
     wurzelAusA=Math.sqrt(zahl1);
     wurzelAusB=Math.sqrt(zahl2);
     
     // Ausgabe der Ergebnisse
     
     System.out.println("Summe der beiden Zahlen: " +ergSumme);
     System.out.println("Summe der Zahl "+ zahl1 +" und "+ zahl2+" ist: " +ergSumme);
     System.out.println("Produkt der beiden Zahlen: " +ergProdukt);
     System.out.println("Differenz der beiden Zahlen:" +ergDifferenz);
     System.out.println("Quotient der beiden Zahlen: " +ergQuotient);
     System.out.println("Wurzel aus der Zahl "+ zahl1 +": " +wurzelAusA);
     System.out.println("Wurzel aus der Zahl "+ zahl2 +": " +wurzelAusB);
     
     
     
     
     
     }
    
    }
    
    Also das ist mein programm jetzt habe ích noch ein Programm schon fertig das ermöglicht die eingabe über die tastatur:

    Code:
    package uebungNr02_TaschenrechnerV1_*****;
    import java.io.BufferedReader;
    import java.io.IOException;
    import java.io.InputStreamReader;
    
    /**
     * Diese Klasse dient dazu, Zahlen, Buchstaben und Texte von der Tastatur
     * einzulesen.
     */
    public class Tastatur {
     /**
     * Einlesen eines einzelnen Buchstabens.
     */
     public static char leseZeichen() {
     try {
     return leseText().charAt(0);
     } catch (Exception e) {
     char tmp = ' ';
     return tmp;
     }
     }
    
     /**
     * Einlesen einer Zahl.
     */
     public static int leseZahl() {
     try {
     return Integer.parseInt(leseText());
     } catch (Exception e) {
     return 0;
     }
     }
    
     public static double leseKommazahl() {
     try {
     return Double.parseDouble(leseText().replace(',', '.'));
     } catch (Exception e) {
     return 0;
     }
     }
    
     /**
     * Einlesen eines Textes.
     */
     public static String leseText() {
     try {
     BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
     return reader.readLine();
     } catch (IOException e) {
     }
     return null;
     }
    }
    Und eben diese 2. Programm will ich im 1. Programm oben ROT MARKIERT einbinden dass wenn ich das 1. Programm ausführe nach der zahl gefragt wird also ich sie per Tastatur eintippen muss. Würde ich jetzt zahl1=34 und zahl2=44 würden die ergebnisse ja unten stehen ich will aber die zahlen mit der tastatur bestimmen genauer kann ichs nemmer beschreiben
    greetz
     
  11. 30. August 2008
    AW: Klasse einbinden

    Kurze Antwort von mir (wobei ich grad nich ausm Handgelenk weiß, obs auch klappt..)

    try {
    BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
    zahl1 = Double.parseDouble( ((String)reader.readLine()).replace(',', '.'));
    } catch (IOException e) {}

    Und das dann noch entsprechend für zahl2
     
  12. 31. August 2008
    AW: Klasse einbinden

    naja meine aufgabe ist es ein bereits vorhandenes programm in meins einzubinden dass muss gehen mein lehrer hats auch gemacht mit nem einfachen befehl aber ich weiß ihn einfach ned
     
  13. 31. August 2008
    AW: Klasse einbinden

    Nun bei der klasse taschenrechner fehlt eigentlich ein Konstruktor.
    Code:
    public Taschenrechner() {
    zahl1=Tastatur.leseZahl()
    zahl2=Tastatur.leseZahl()
    }
    Das heißt immer wenn du ein neues Taschenrechner Objekt erstellst würde mit diesen Konstruktor am anfang die methode aus der tastatur leseZahl aufgerufen, die dann die Zahlen einliest und in zahl1 und zahl2 speichert.
    Das darfst du so machen da die Methode der tastatur statisch (static) sind. Ich würd dir empfehlen mal das Kapitel über Konstruktoren zu lesen.

    Methoden einer anderen Klasse kann man aufrufen wenn sie statisch sind mit: Klassenname.methodenanme(Variablen)
    und wenn sie nicht statisch sind muss man halt eine Instanz der klasse erschaffen und kann dann darüber dessen Methoden Aufrufen
    Klasse name = new Klasse(Variablen);
    name.methode(Variablen);
     
  14. 31. August 2008
    AW: Klasse einbinden


    Code:
    zahl1=Tastatur.leseZahl()
    zahl2=Tastatur.leseZahl()
    das wars danke schön jetzt klappts bw haste
     
  15. 2. September 2008
    AW: Klasse einbinden

    Wobei der import glaub ich nicht nötig ist, da ja die beiden Klassen im selben Paket sind

    Aber es läuft und das ist ja das Wichtigste

    ~ closed ~
     
  16. Video Script

    Videos zum Themenbereich

    * gefundene Videos auf YouTube, anhand der Überschrift.