Zum Inhalt springen

Begriffe aus Programmiersprachen


Empfohlene Beiträge

Geschrieben

Kann mir jemand folgende Begriffe erklären und vielleicht ein kleines Beispiel dazu geben?

Ich komme damit immer durcheinander und bin mir nicht sicher was jetzt genau was bedeutet!

Anweisung

Zuweisung

Argument

Ausdruck

(abstrakte) Klasse(n)

recht herzlichen Dank im Voraus!

Geschrieben

Servus!!

Also, ich probiers mal:

Anweisung: wie zuhause hol solange Butter, bis der Kühlschrank voll ist (do while)

Zuweisung: einer Varbiablen wird ein Wert zugewiesen (int x = 2)

Argument: wird einer Methode übergeben, die dann damit arbeiten kann.

public int addiere(int zahl1, int zahl2)

{

return zahl1 + zahl2;

}

Ausdruck: kommt ausm Drucker (Witz); ein Ausdruck kann irgendwie alles sein (meine Meinung) eine Codezeile ist z.B. ein Ausdruck

(abstrakte) Klasse(n): Klassen werden in der objektorientierten Programmierung verwendet. Sie sind abstrakte Objekte (z.B. Haus, Auto) und können Eigenschaften und Verhalten (Methoden) haben. Beim Auto: Eigenschaften: Farbe, PS, VMax; Methoden: anfahren, bremsen.

Ich hoffe, es hilft Dir, und vor allem, dass es richtig ist...

Schönen Tag noch,

k.o. b

Geschrieben

Erstmal Danke für die Antwort!

Ich hab mal in nem Buch nachgeschlagen.:

Ein Ausdruck ist z. B. auch folgendes:

1;

:rolleyes:

Geschrieben

Hallöchen,

nur noch kurz was zu abstrakten Klassen.

Eine abstrakte Klasse ist eine Klasse von der man keine Instanzen (Objekte) erstellen

kann. Beim Beispiel Auto wäre es eine Oberklasse in der Vererbungshierarchie.

Warum keine Instanzen gebildet werden (dürfen) kann verschiedene Gründe haben!

Entweder es macht ganz einfach keinen Sinn oder man kann mit der Instanz der Klasse nichts anfangen.

So, ich hoffe ich habe Dich nicht zu sehr verwirrt!

Thommy!

Geschrieben

Ich dachte immer von einer abstrakten (Basis-)Klasse kann man keine

Instanzen bilden weil all ihre Methoden virtuell sind.

Oder anders ausgedrückt, eine Klasse welche nur eine nicht

virtuelle Methode enthält ist keine abstrakte Klasse. :confused:

Geschrieben

Ja, da hast Du Recht...... ich halt mich an die verständlichere Version! Für mich!

Dabei handelt es sich leider um schwer verständliche Definitionen! Denke ich zumindest!

Ich brauch sowas recht selten und schau eigentlich immer aufs Neue nach!

Grüßle, Thommy!

Geschrieben

Leider hat Lachdanan nicht wirklich recht. Natürlich kann ich von einer Klasse, die virtuelle Funktionen besitzt, ein Exemplar erzeugen. Das liegt aber eher daran, daß virtuelle Funktionen alleine noch keine abstrakte Klasse bedeuten. Um eine abstrakte Klasse zu haben muß man eine "pure virtual function" haben. Und hier imuß man auch noch einmal aufpassen. Sobald ich nur eine pure virtual function habe ist meine Klasse abstrakt. Auch wenn ich ganz "normale" Funktionen in der Klasse definiert habe.

HTH

Jan

PS:


#include <iostream>


class Animal

{

    public:

        virtual void move ()

	{

	    std::cout << "move...\n";

        }

};


class Bird : public Animal

{

    public:

        void move ()

        {

	    std::cout << "fly...\n";

        }


};


class AbstractClass

{

    public:

	void sayHello ()

	{

            std::cout << "Hello World!\n";

        }


        virtual void doTheBartman () = 0;


};


void test ( Animal &animal )

{

	animal.move ();

}


int main ( void )

{

	Animal a;

	Bird b;


	test ( a );

	test ( b );


	AbstractClass ac;	//won't work

}

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...