# Checkstyle



## MasterInfinite (29. Okt 2005)

Hallo

Ich hab Probleme beim lösen der Checkstyle Probleme. Kann mir da jmd. helfen?
Ich hab die dateien hier upgeloadet

http://s52.yousendit.com/d.aspx?id=3UATT5QVV640A11ID1WTVOTRU0

Vielen Dank im voraus!!!


----------



## bygones (29. Okt 2005)

ganz allgemein wären ein paar infos hilfreich - keine ahnung ob sich jmd einfach mal so unbekannte dateien runterlädt.

was ist das ? wo ist das Problem usw ?


----------



## MasterInfinite (29. Okt 2005)

deathbyaclown hat gesagt.:
			
		

> ganz allgemein wären ein paar infos hilfreich - keine ahnung ob sich jmd einfach mal so unbekannte dateien runterlädt.
> 
> was ist das ? wo ist das Problem usw ?



soll ich den quelltext hier online stellen??? oder wie soll das sonst funktionieren?

Da sind mehrere Fehler ... ich gib mal n paar beispiele!

Felder.java:1: Die Form '.*' für import-Anweisungen sollte vermieden werden - java.awt.*.


```
[i]import java.awt.*;
import java.awt.event.*;[/i]
```

Felder.java:14:3: Javadoc-Kommentar fehlt.



> _public class Felder extends Frame {
> // Anfang Variablen
> private Button bNeu = new Button();_



Felder.java:37:17: Der Parameter title sollte als 'final' deklariert sein.



> _  public Felder(String title) {_




wie bekomm ich das hier weg?

Felder.java:42:22: '765' sollte durch eine Konstante definiert sein.


> _    int frameWidth = 765;_


das ist fast überall und ich kann ja keine konstanten einsetzen!


Felder.java:80:35: Der Parameter evt sollte als 'final' deklariert sein.


> _public void actionPerformed(ActionEvent evt) {_


----------



## Beni (29. Okt 2005)

Das sind keine Fehler, das sind Warnungen.

Ich weiss nicht welches Programm diese Warnungen generiert (einige Warnungen sind auch, naja, "unwichtig"), aber es steht doch genau, was du machen sollst :wink:

Z.B. Javadoc fehlt -> Javadoc-Kommentar einfügen (/** Kommentar */)

Final fehlt -> "final" einfügen

Sollte konstant sein, eine Konstante "public static final int FRAME_WIDTH = ..." in der Klasse einfügen.


----------



## MasterInfinite (29. Okt 2005)

Ja wenn das so einfach wäre...hat ch aber schon vorher probiert.


----------



## L-ectron-X (29. Okt 2005)

@deathbyaclown: Checkstyle ist ein Hilfsmittel (Programm), mit dem man den Code Sun-Java-konform machen kann.
Es zeigt einem nur Codestyle-Fehler, die nicht den Sun Java Coding Convensions entsprechen.
Checkstyle ist ein PlugIn für diverse IDE und Editoren.
More about this? http://checkstyle.sourceforge.net/


----------



## MasterInfinite (29. Okt 2005)

Ah ok danke! das problem hat sich geklärt!


----------



## Beni (29. Okt 2005)

MasterInfinite hat gesagt.:
			
		

> Ah ok danke! das problem hat sich geklärt!


 :shock:  ???:L  

Wie meinst du das jetzt? Jetzt wollt ich gerade dieses ominöse Checkstyle suchen...


----------



## MasterInfinite (29. Okt 2005)

Das mit dem einfügen bei frame width hat nicht geklappt als ich das programm kompiliert habe!



> Felder.java:42: illegal start of expression
> public static final int framewidth = 765;
> ^



Felder.java:381:3: Javadoc-Kommentar fehlt.


```
//**Einfügen in ein sortiertes Feld*/
  final void bEinfuegen2ActionPerformed(final ActionEvent evt) {
```


----------



## MasterInfinite (29. Okt 2005)

http://prdownloads.sourceforge.net/checkstyle/checkstyle-4.0-beta6.zip?download

hier gibts checkstyle...entpacken und dann in der konfiguration bei java pfad angeben!


----------



## L-ectron-X (29. Okt 2005)

FALSCH:
//**Einfügen in ein sortiertes Feld*/


RICHTIG:
/**Einfügen in ein sortiertes Feld*/


----------



## MasterInfinite (29. Okt 2005)

```
import java.awt.*;
import java.awt.event.*;
```

Felder.java:1: Die Form '.*' für import-Anweisungen sollte vermieden werden - java.awt.*.
Felder.java:2: Die Form '.*' für import-Anweisungen sollte vermieden werden - java.awt.event.*.


das läuft auch nicht...Versteh das net!


Felder.java:347: Der erste Satz sollte mit einem Punkt abschließen.

```
/**Binäre Zahl*/
```

Felder.java:339: Fehlender @return-Tag.

```
final int suchen() {
```

Felder.java:348:58: Erwartete Tag @param für 'evt'.

```
final void binareZahlActionPerformed(final ActionEvent evt) {
```


----------



## L-ectron-X (29. Okt 2005)

Syntaktisch richtig. Aber es sollten die Klassen direkt importiert werden, also nicht per Platzhalter:
z.B. 
	
	
	
	





```
import java.awt.event.ActionEvent;
```

@return und @param sind Teile von JavaDoc-Anweisungen, die du in deinen JavaDoc-Kommentar einfügen kannst:
z.B. 
	
	
	
	





```
/**Diese Methode subtrahiert eine Zahl von einer anderen Zahl.*/
@param minuent der Minuent
@param subtrahent der Subtrahent
@return Die Differenz als Ergebnis einer Subtraktion
public double subtrahiere(double minuent, double subtrahent) {
   return minuent - subtrahend;
}
```


----------



## bygones (29. Okt 2005)

oh gott - ich erinner mich, hatte das auch mal als eclipse plugin - so mit vollem Tatendrang.... hat mich dann aber zu sehr gernevt wegen dem ganzen Hin und her


----------



## Beni (29. Okt 2005)

Hihi, Fehler im Code von LeX:


```
/**Diese Methode subtrahiert eine Zahl von einer anderen Zahl.
@param minuent der Minuent
@param subtrahent der Subtrahent
@return Die Differenz als Ergebnis einer Subtraktion */ <-- hier sollte der Kommentar aufhören
public double subtrahiere(double minuent, double subtrahent) {
   return minuent - subtrahend;
}
```


Wegen der Konstante:

```
public class Klasse{
  public static final int FRAME_WIDTH = 100;

  public void blabla(){
     int framewidth = FRAME_WIDTH;
  }
}
```


----------



## L-ectron-X (29. Okt 2005)

hehe, stimmt. Hab wohl schon zu viele Pilse intus. :wink:


----------



## bygones (29. Okt 2005)

L-ectron-X hat gesagt.:
			
		

> hehe, stimmt. Hab wohl schon zu viele Pilse intus. :wink:


boah - pils - ich seh schon im dezember bekommst mal n gscheites Bier... Pils trinkt der tststst


----------

