Anzeige:
Ergebnis 1 bis 4 von 4

Thema: eigene Klassen einbinden - wie?

  1. #1
    Registrierter Benutzer Avatar von BlueJay
    Registriert seit
    27.08.2004
    Beiträge
    825

    eigene Klassen einbinden - wie?

    Hallo Leute,

    wieder eine Anfängerfrage:

    Da habe ich so eine Klasse, die mir Textbausteine bereitstellt.

    Code:
    package otashi;
    
    class hilfetext
    { 
       public String header="eine Ueberschrift";
       public String text[]= {
      "1.Zeile,",
      "2.Zeile",
      ...
      "letzte Zeile"
      };
    
      public hilfetext() {  };
    }
    Diese soll mir einen Textviewer füllen:

    Code:
    package otashi;
    
    import otashi.hilfetext;
    import java.awt.event.*;
    import java.awt.*; 
    import java.awt.Color; 
    import java.awt.Font; 
    import java.applet.*;
    
    public class hilfescreen extends Applet implements KeyListener
    { 
      Graphics g;
    
      hilfetext hilfe=new hilfetext();
    
      // Moto-Screen:
      int sxmax=176;
      int symax=204;
    
    
     u.s.w.
    Beide Dateien, in denen sich die Klassen befinden, sind im gleichen Verzeichnis.

    Zunächst wurde hilfetext compiliert (ok), dann hilfescreen.
    Fehler:
    Code:
    hilfescreen.java:6: cannot find symbol
    symbol  : class hilfetext
    location: package otashi
    import otashi.hilfetext;
                 ^
    CLASSPATH ist .
    Beide Dateien sind im selben verzeichnis.

    ich habe es mit und ohne Importieren von otashi.hilfetext probiert, es gab keinen Unterschied.

    Packt man die beiden Klassen zusammen in eine Datei, geht alles problemlos.
    Was mache ich hier falsch?

    so long,
    BlueJay
    Geändert von BlueJay (16-06-2007 um 18:09 Uhr)
    Eigentlich ganz einfach, wenn man's weiss!

  2. #2
    Administrator Avatar von anda_skoa
    Registriert seit
    17.11.2001
    Ort
    Graz, Österreich
    Beiträge
    5.477
    Die Klasse hilfetext ist im Package otashi (erste Zeile, package Deklaration)

    Wenn du eine Klasse kompilierst, die hilfetext benutzt, dann sucht der Compiler die Klasse auch in diesem Package, d.h. in einem Unterverzeichnis mit dem Namen otashi, unterhalb aller Pfade, die ihm als Classpath angegeben wurden.

    Unter der Annahme, dass die Klassen bereits in diesem Vezeichnis liegen, kannst du sowas machen

    Code:
    cd ..
    javac otashi/hilfescreen.java
    cd otashi
    Ciao,
    _
    Qt/KDE Entwickler
    Debian Benutzer

  3. #3
    Registrierter Benutzer Avatar von BlueJay
    Registriert seit
    27.08.2004
    Beiträge
    825
    Zitat Zitat von anda_skoa Beitrag anzeigen
    dann sucht der Compiler die Klasse auch in diesem Package, d.h. in einem Unterverzeichnis mit dem Namen otashi, unterhalb aller Pfade, die ihm als Classpath angegeben wurden.
    Jau, das war's!

    Allerdings muss man dann wohl den appletviewer/das aufrufende Document wieder vom CLASSPATH-Root mit entsprechend angepassten Pfaden aufrufen, sonst läuft das Programm wieder mit no class dev found vor die Wand.
    Eigentlich ganz einfach, wenn man's weiss!

  4. #4
    Administrator Avatar von anda_skoa
    Registriert seit
    17.11.2001
    Ort
    Graz, Österreich
    Beiträge
    5.477
    Du kannst ja auch das übergeordnete Verzeichnis explizit zum Classpath hinzufügen.

    Ciao,
    _
    Qt/KDE Entwickler
    Debian Benutzer

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •