Java Frage zu Parametern im Methodenkopf

PEASANT KING

Commander
Registriert
Okt. 2008
Beiträge
2.412
Hallo Leute,

ich befasse mich eigentlich schon länger mit Java und dachte mir es gibt nichts neues zu entdecken,
doch falsch heute ist mir folgendes untergekommen und ich würde es gerne besser verstehen doch leider habe ich nichts dazu in Google oder sonst wo gefunden.

Was bedeutet folgender Unterstrich im Kopf der Methode ?

PHP:
public bla(String _name) {

}

also was bedeutet das _name ?

Ist das eine Art Platzhalter wenn Name nicht explizit deklariert ist ?
 
Nein, das ist einfach nur die Bezeichnung. Es spielt keine Rolle ob es "name "oder "_name" in der Signatur steht.
 
Hallo,

"früher" hat man so Instanzvariablen besser kenntlich gemacht. In heutigen Code-Conventions wird es aber nicht mehr empfohlen.

Hat also überhaupt nichts mit der Sprache an sich zu tun...

Gruß
 
das ist einfach nur der name des parameters.

erlaubte zeichen sind dabei alle buchstaben, nummern sowie der unterstrich, wobei zu beachten ist, dass der name nicht mit einer nummer beginnt.
 
Naja Java ist mir nicht neu und danke für die Antworten, ich war nur verwundert, weil mir diese Notation nicht bekannt war, oder jemals untergekommen ist.
 
blond schrieb:
da fehtl aber noch der rückgabewert z.b. void, int, Name der Klasse etc.

Der Ausschnitt könnte auch ein Konstruktor sein, wobei der wie Klassennamen am Anfang groß geschrieben werden sollte.

Wir wissen es nicht, was der TE hier gepostet hat und sollte vermutlich auch nur zur Veranschaulichung dienen - daher fehlt hier wohl nichts.
 
Genau in meiner schnellen Kritzelei diente das ganze nur als Beispiel korrekt wäre natürlich sowas hier gewesen:

Code:
public String bla(_name) {
        return irgendeinstring;
}
 
Der Ausschnitt ist syntaktisch nicht korrekt (von welchen Typ ist _name?), zudem wird _name überhaupt nicht verwendet.
 
Darlis schrieb:
Der Ausschnitt ist syntaktisch nicht korrekt (von welchen Typ ist _name?), zudem wird _name überhaupt nicht verwendet.

Es geht sich glaube ich nur um den Strich ;-)

Da DJ_We$t schon Java Erfahrung hat wird er dies wohl wissen...

Ribo
 
Genau, das kann echt nicht sein, dass hier so schwere Syntaxfehler sowie Warnungen ignoriert werden! Schnell korrigieren, sonst explodiert das hier noch

Code:
public String bla(final String _name) {
   return _name;
}
 
In vielen Syleguides wird einem ans Herz gelegt, zB.

Membervariablen so zu bezeichnen

Code:
class Person {
          private String m_name;

...

In derartigen Styleguildes wird dann auch oft verlangt, sämtliche Parameter in Methodenköpfen
mit einem "_" zu kennzeichnen, um sie im nachfolgenden Code leichter als solche identifizieren zu können.

Code:
class Person {
          private String m_name;

          public void setName(String _name) {
                   this.m_name = _name;
          }

...


Ich persönlich halte es für "bad style" derartige Unterstriche im Methodenkopf zu verwenden ;)

Wenn ich die Klasse schreiben müsste, würde sie schlichtweg so aussehen:
Code:
class Person {
    private String name;
     
    public void setName(String name) {
             this.name = name;
    }
     
    ...
 
Zuletzt bearbeitet:
Hier ist ja ne regelrechte Diskussion entstanden, dabei ging es mir wirklich nur um den Strich.

Und wer sich mit Java beschäftigt wird natürlich wissen, das die Variable natürlich deklariert werden muss.

Ich schreibe es auch so Hubertus, für das Beispiel hielt ich es aber nicht relevant eine ganze Beispielklasse zu schreiben.
 
Zurück
Oben