Anzeige:
Ergebnis 1 bis 4 von 4

Thema: Klassen und Objekte

  1. #1
    Registrierter Benutzer
    Registriert seit
    01.08.2000
    Beiträge
    11

    Post Klassen und Objekte

    Hi Leute,

    hat zwar jetzt nicht direkt was mit Linux zu tun, aber vielleicht kann mir hier jemand helfen. Ich studier Informatik und check hinten und vorne nicht bei Klassen durch! Wie sind die denn aufgebaut. Wo muß was rein? Konstruktor/Destruktor???
    Oh, man ob das Infostudium das richtige für mich ist? Könnt mir jemand vielleicht die Ganze Sache erklären? Bitte. Muß nicht lang sein.
    Thanx

  2. #2
    Registrierter Benutzer
    Registriert seit
    15.07.2000
    Ort
    D 55118 Mainz
    Beiträge
    25

    Cool

    Hallo,

    bitte steinigt mich, wenn ich jetzt Mist erzähle.

    Unter Turbo Pascal, bzw Delphi gab es auch Klassen und Methoden. Diese Begriffe haben mich immer gestört. Objekte find' ich in Ordnung, weil ein Verbund aus Dateien, die in Abhängigkeit zu einander stehen tatsächlich als solche definierbar sind. Aber wie ist das mit Klassen? Man kennt das aus Datenbanken. Klassifizierung. Da macht das auch Sinn. Aber als mir dann ein senior Programmer erklären wollte, dass Klassen, Objekte und Methoden, je nach Bertrachtungsweise das Selbe sind, wollte auch mein Gehirn erst einmal aussteigen. Ich habe fast das Gefühl, dass das wirklich die verschiedenen Programmierer auf ihre Weise anders sehen werden. Was für den einen eine Klasse ist, ist für den Anderen eine Methode.

    Mein Verständnis für die Sache ist folgende. Wenn man sich sein Softwareprojekt in einer hierarchischen Struktur vorstellt, so bildet ein Oberpunkt die Klasse und seine Unterpunkte bilden die Methoden. Das Gesamte Teil ist dann das Objekt. Da ein Projekt ja riesig gross werden kann kann es dann auch vorkommen, dass Objekte auf Klassen anderer Objekte Zugriff haben und diese verwenden können.

    Konstruktor und Destruktor sind mir leider völlig fremd, da ich das Programmieren autodidaktisch lerne. Informatikstudium kommt, wenn ich mir das leisten kann.

    Als dann.

    DasSein

    [ 05. Mai 2001: Beitrag editiert von: DasSein ]
    http://dassein.tripod.com/start.html









    DasSein sagt: Good vibes for everyone, also da people I don't like.











    Mein System:





    AMD K6 III 400





    512KB L2 Cache





    128MB SDRAM





    ATI Rage II Grafik





    Creative Vibra 16 Sound





    3Com 905b Combo





    Teledat 150 ISDN





    Mitsumi 40x CD Rom





    Yamaha CW2100E 16x CD RW



    Debian Potato 2.2r3

  3. #3
    Registrierter Benutzer
    Registriert seit
    11.11.1999
    Ort
    MD
    Beiträge
    44

    Post

    ergänzend:

    constructor/destructor: wie der name schon sagt zum erstellen/verwerfen von objekten. ein constructor ist die prozedur eines objektes, die beim kreieren einer instanz desselbigen aufgerufen wird. der destructor dementsprechend beim cleanen des objektes.

  4. #4
    Registrierter Benutzer
    Registriert seit
    21.01.2001
    Beiträge
    157

    Post

    Betreiben wir ein bisschen Begriffsklaerung:

    Eine Idee der objektorientierten Programmierung ist den Loesungsraum (die zur Loesung angebotnenen Primitive die zu einer Loesung zusammen gesetzt werden) naeher an den Problembereich (Die Dinge die zu Loesen/modellieren/nachzubilden sind) zu bringen.

    Anstatt sich entweder auf die Daten oder die Funktioenen zu konzentrieren, fasst man Daten und die dazugehoerigen Funktionen zu einer Einheit zusammen. Da diese Einheiten oft real existierende Gegenstaende modellieren, nennt man sie Objekte.

    Wie entsteht nun so ein Objekt? Ganz einfach: man macht einen Bauplan. Diesen Bauplan, diese Definition nennt man Klasse. Um nun ein Objekt zu bekommen, muss man diesen Bauplan realisieren. Diesen Vorgang nennt Instanziierung. Meist wird er in objektorientierten Sprachen durch Aufruf eines sogenannte Konstruktors ausgefuehrt. Dies ist eine spezielle Funktion, die dem Bauplan (Klasse) folgend ein neues Objekt erstellt. (d.h. Speicherplatz reserviert und initialisiert + den Programmcode des Konstruktors ausführt)


    Zur verdeutlichung:
    Ein Auto hat gewisse Eigenschaften.
    Es hat vier Raeder, einen Motor und man kann damit fahren. Dieses (zugegeben vereinfachende) Konzept eines Autos ist nun unsere Klasse. Ein VW Käfer oder ein Ferrari F40 sind nun Objekte als Instanzen des Konzepts Autos.


    Hier koennte man jetzt auf weitere Ideen in der OOP verweisen wie Kapselung, Vererbung, etc.. aber da empfehle ich doch besser sich ein gutes Buch zu suchen.

    Also nochmal in Kuerze:

    Objekte sind zusammenfassung von Daten und zugehoeriger Funktionalitaet.
    Die Daten eines Objekts werden oft mit member variables, members, properties oder Eigenschaften genannt.
    Die Funktionen eines Objekts heissen meist, member functions oder Methoden.

    Die Typen von Objekten heissen Klassen und definieren welche Daten und welche Funktionalitaet ein Objekt hat.

    Um ein Objekt zu bekommen wird es instanziiert, d.h. Speicher reserviert. Damit der Programmierer weitere Aktionen festlegen kann gibt es die Konstruktoren.
    Entsprechend gibt es dazu die Destruktoren die aufgerufen werden, bevor der Speicher wieder freigegeben wird und das Objekt zerstoert wird.

Lesezeichen

Berechtigungen

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