Beiträge von Martinez

    Beides zu verwenden, also vor die abstrakte Klasse dann noch ein Interface zu schalten, wuerde ich als unnoetig und ueberspezifiziert betrachten.

    ok, argumentation vergessen: da es sich ja um ne lib handlet, würd ich auf jeden fall ein interface verwenden, um bei späteren refactoring flexibler zu sein und um meine klassenstruktur nicht den usern der lib zu offenbaren. die könnten dann nämlich ungewollte sachen damit anstellen, sie zB erweitern oder so. das wäre bei einem framework (zb Swing) erwünscht, nicht aber bei einer lib.
    Die abstrakte Klasse deshalb, um eine hierachie in das modell zu bekommen, natürlich nur wenn man das möchte. eine flache hierachie hat auch ihre vorteile. das hängt von mehreren faktoren ab.
    auf jeden fall ein interface verwenden wenn man eine lib schreibt würd ich sagen.

    lg

    Martinez: man kann allerdings auch methoden in einem interface als abstrakt definieren, dann davon eine abstrakte klasse ableiten, die ebenfalls nur ein paar der methoden implementiert...

    du willst von einem interface eine abstrakte klasse ableiten? wie geht denn das?
    ausserdem deklariert man eine funktion als abstrakt, definieren kannst du sie ja eben nicht, sonst wär sie ja nicht abstrakt.

    wie auch immer:
    alle funktionen in einem interface sind per definition abstrakt, das keyword wird deshalb meist weggelassen, muss man aber nicht. ändert aber auch nix an der tatsache das ALLE FUNKTIONEN IN EINEM INTERFACE ABSTRAKT SIND!

    der unterschied ist dass wenn du ein interface implementierst, MUSST du ALLE funktionen implementieren. wenn du eine abstrakte klasse erweiterst kannst du auch nur n paar (musst also NICHT alle) abstrakten funktionen implementieren. die abgeleitete klasse ist dann wieder abstrakt, solange bis alle funktionen implementiert sind.

    in deinem fall würd ich beides verwenden. schreib ein interface mit all den funktionen die so ein 'MusicTag' haben soll. behalt die 'abstract base class' MusicTag, implementier dort dein grad geschriebenes interface, IMusicTag (wie auch immer). wie gesagt, du musst nur die funktionen implementieren die alle MusicTags gemeinsam haben. die restlichen überlässt du den abgeleiteten Klasse wie ID3Tag, usw. dort implementierst du dann die restlichen abstrakten funktionen und kannst diese klasse dann auch instanzieren.

    zB. IMusicTag mt = new ID3Tag();

    lg

    btw.: Hat vielleicht irgendjemand schon Erfahrungen mit SableVM oder JamVM gesammelt? Die sind nämlich auf dem Zielsystem schon implementiert...

    noch nie gehört, ka.


    wegen doku:
    reichen dir die spepcs denn nicht aus? ich mein, genauer wirst es nicht beschrieben finden.

    für einen überblick vielleicht erstmal da reinschaun:
    http://java.sun.com/javame/technology/index.jsp

    weiters gibts genug doku über JavaME im netz, habs selbst gelsen. also ne brille würd vielleicht nicht schaden ;)

    lg

    martinez

    ich will in einer borland c++ builder anwendung matlab code aufrufen. dafür hab ich mir mit dem matlab compiler eine dll gebaut. Diese funktioniert auch einwandfrei, wenn ich sie in einer consolenanwenung verwende und dann mit mbuild compiliere. Nur will ich die dll in einer GUI anwendung mit VCL verwenden. Nur funktioniert hier nicht mal das anlegen eines mwArrays. Er legt es zwar an, doch is die grösse immer 0.
    Hat da wer erfahrung damit?

    problem mit glade und autogen: hab gui gebaut, uebersetzt nach c++ und dann autogen ausgefuehrt.
    bei make bleibt er stecken: no rule to make target "makefile.am" needed by "makefile.in
    im ordner m4

    was kann man da machen?

    lg

    hab mir vor n paar monaten debian installiert.
    doch die pakete im apt-cache sind alle nicht aktuell:
    gcc 3.3, kde 3.3, kernel 2.6.8 usw.

    hab ich da ne einstellung falsch oder ist das beabsichtig?

    (ja, ich hab apt-get update ausgeführt)

    :confused:

    lg

    Zitat von MaxAuthority

    Also grad Probleme loesen ist unter linux wirklcih viel einfacher WENN man sich mal auskennt damit, weil dir das system alles nur erdenkliche sagt, wennst die richtigen commands eingibst.

    Sicher kann man sagen, unter windows hat man vielleicht bestimmte probleme einfach gar nicht, um die man sich im linux kuemmern muss, aber _wenns_ mal spinnt, bist arm dran.

    meine worte.

    nur wenn man das "irgendwas im terminal herumtipseln" nennt, is hopfen und malz verloren!!

    :ausheck:

    Zitat von Stephe

    versteh ich auch nicht. außerdem kann man probleme in windows glaube ich leichter lösen als in linux (irgendwas im terminal herumtipseln) aber das liegt wahrscheinlich daran dass ich mit windows mehr erfahrung hab und eher linux-neuling bin

    was meinst du mit "irgendwas im terminal herumtipseln"?

    hast du das schonmal gemacht?

    :confused: