# typedef  unter Java?



## JayJay (7. Jun 2007)

Hi, gibt es sowas wie Typedef unter Java? Ich will ein HWND INT definieren. ?


----------



## tfa (7. Jun 2007)

JayJay hat gesagt.:
			
		

> Hi, gibt es sowas wie Typedef unter Java? Ich will ein HWND INT definieren. ?



Kein Ahnung was Du machen willst, aber in Java gibt es kein typedef. Man braucht es auch nicht.


----------



## JayJay (7. Jun 2007)

Sieht doch schöner aus? anstatt INT ein HWND


----------



## tfa (7. Jun 2007)

JayJay hat gesagt.:
			
		

> Sieht doch schöner aus? anstatt INT ein HWND



Was soll das sein? INT? HWND? Irgendwelche Klassen?


----------



## JayJay (7. Jun 2007)

ganz normale 4 byte große variablen die nicht int heißen sondern HWND


----------



## tfa (7. Jun 2007)

JayJay hat gesagt.:
			
		

> ganz normale 4 byte große variablen die nicht int heißen sondern HWND



Wie hässlich  :roll:


----------



## nocxsville (7. Jun 2007)

Ist das sowas delphimäßiges, der man alles zuweisen kann (von int, über double bis hin zu Strings)?


----------



## Prometheus (7. Jun 2007)

HWND kommt glaube ich aus der WinAPI.


----------



## Evolver (8. Jun 2007)

Jupp, das ist ein WindowHandle. Das ist etwas, das mit an C/C++ nie gefallen hat: Jede API macht ihre eigenen Typedefs für alle möglichen primitiven Datentypen.


----------



## Jango (8. Jun 2007)

Evolver hat gesagt.:
			
		

> Jupp, das ist ein WindowHandle. Das ist etwas, das mit an C/C++ nie gefallen hat: Jede API macht ihre eigenen Typedefs für alle möglichen primitiven Datentypen.


...und obendrein kann jeder Programmierer sich eigene Definationen festlegen - das nennt sich dann Macros - und dient der besseren Lesbarkeit (soll es wenigstens). :wink:


----------



## Prometheus (8. Jun 2007)

Und wenn dann ein fremder den Code ließt kapiert der erstmal garnicht was mit dem ganzen Zeug gemeint ist.


----------



## Jango (8. Jun 2007)

Prometheus hat gesagt.:
			
		

> Und wenn dann ein fremder den Code ließt kapiert der erstmal garnicht was mit dem ganzen Zeug gemeint ist.



LOL - das ist richtig - aber die Defination steht ja darüber. Das macht auch nur Sinn, wenn man beispielsweise hundert Variable vom Typ _unsigned long int_ deklarieren möchte. Da lässt sich das eben leichter realisieren, wenn man dafür eben nur _ulint_ oder Ähnliches schreibt.
Edit: Man muss es ja nicht benutzen - aber man kann.


----------



## Gast (8. Jun 2007)

bei abkürzungen mag das ja noch sinn machen aber insgesamt führt es nicht zu lesbaren code

aber gibt ja java


----------



## Gast (8. Jun 2007)

typedef wird wahnsinnig gern in zusammenhang mit templates genutzt


```
template<type T>
class Point
{ /**/ };

typedef Point<int> PointInt;
```

blödes beispiel, aber bringt die idee rüber ;D

gibt aber auch so beknackte schweinereien wie


```
typedef int* int_ptr
```

im code steht dann irgendwo nen int_ptr und ohne die typedef zu kennen, hat man null plan, dass man grad mit nem pointer hantiert.

typedef hat schon seine daseinsberechtigung, ist aber auch nichts, was man unbedingt braucht. in java würd sowas eher über ne saubere vereerbung (oder interface implementierung) gelöst werden.


----------

