Unterschied Parameter und Attribut?

4 Antworten

public class Thing {

  public int a; //attribut

  public void setA(int newA /*newA ist ein Parameter*/) {

    this.a = newA;

  }

  //newA ist hier nichtmehr verwendbar, nur innerhalb der Klammern von setA

}
Woher ich das weiß:Hobby – Ich programmiere in meiner Freizeit mit Java.

attribut:

class Person {
    String name;

    Person() {}
    ...
}

name wäre hier ein attribut. es ist die eigentschaft (membervariable) einer klasse.

parameter

void rename(String name) {
...
}

rename("Udo");

hier wäre "Udo" bzw name ein paramter, also der übergabewert einer funktion.

das ist der unterschied zwischen attribut und parameter

Woher ich das weiß:Studium / Ausbildung – Softwareentwickler, B. Sc. Informatik

Attribute sind Eigenschaften. Gemeint sind hiermit natürlich Eigenschaften von Objekten.

Parameter parametrisieren einen Aufruf, d.h. sie steuern das Verhalten einer Methode in Abhängigkeit des übergebenen Argumentes.

So, das war jetzt vielleicht sehr technisch, nehmen wir mal ein Objekt, das einen Gegenstand abbilden soll. Ein Attribut könnte jetzt zum Beispiel die Farbe des Objektes (Gegenstandes) oder das Gewicht selbigens sein. Ein Methode könnte zum Beispiel bewegen heißen, um es im Raum zu verschieben.

Diese Methode bekommt den Parameter Richtung, um anzugeben in welche Richtung es (Objekt) verschoben werden soll. Beim Aufruf übergibst Du einen konkreten Vektor als Argument, der die Richtung (für diese konkrete Bewegung) festlegt.

Sonnenlicht33  29.11.2021, 19:48

Ist dann der attributwert um wie viel der Gegenstand in eine Richtung verschoben wird?

0
KarlRanseierIII  29.11.2021, 20:23
@Sonnenlicht33

Der Attributwert ist nichts anderes als der dem Attribut zugewiesene Wert.

Hätte mein Objekt ein Attribut Position vom Typ Tupel der Länge 3, dann wäre (3,0,10) ein möglicher Attributwert. Natürlich müßte ich irgendwie noch festlegen, welchen Punkt des Objektes ich damit beschreibe (Mittelpunkt böte sich an).

Bei einem typischen Setter wird aus dem Parameter des Aufrufs letztlich ein Attributwert.

0

Ein Parameter wird bei einem Unterprogramm- oder Konstruktoraufruf mitgegeben:

void einUnterprogramm( String parameter ){
...
}

Dieser wird aber nicht mehr referenzierbar, wenn das UP abgelaufen ist.

Attribute sind die Werte, die ein Objekt konstant hat, also als globale Variablen definiert sind.

So ungefähr, ich hoffe das hilft dir weiter

Woher ich das weiß:eigene Erfahrung