# Warum hat Java keine Klassen "True" und "False"?



## ben_bayram (15. Jun 2009)

Hallo ein paar Fragen für die Profis: 

a) Warum hat Java keine Klassen "True" und "False"?
b) Was gibt die Java-Methode "Boolean::booleanValue() "  zurück?
d) Wo sind die logischen Operatoren UND und ODER bei Smalltalk bzw. bei Java implementiert?

Danke
Bayrqam


----------



## SlaterB (15. Jun 2009)

a) weil sinnlos?
b) den angegebenen Rückgabewert
3) in Operatoren wie ||


----------



## Marco13 (15. Jun 2009)

_a) Warum hat Java keine Klassen "True" und "False"?_
Aus dem gleichen Grund wie es keine Klassen "One", "Two", "Three", "FourtyTwo" und "SevenThousandFourHundredThirtySix" hat: Das sind WERTE. Und die gibt es als Konstanten Boolean (Java 2 Platform SE v1.4.2) bzw. Schlüsselwörter *true* und *false*.

_Was gibt die Java-Methode "Boolean::booleanValue() " zurück?_
Eine boolean value - den *boolean* Wert des *Boolean*-Objektes.  

_Wo sind die logischen Operatoren UND und ODER bei Smalltalk bzw. bei Java implementiert?_
&& und ||


----------



## ben_bayram (15. Jun 2009)

SlaterB hat gesagt.:


> a) weil sinnlos?


 da wird sich mein Professor sicher drüber freuen ... ne irgendeine Begründung muss es wohl geben ... 

ich habe etwas, von wegen "weil True und False fest definiert Iterale sind" gelesen. Stimmt das ? bzw. ist das die Erklärung dazu ??


----------



## Final_Striker (15. Jun 2009)

ben_bayram hat gesagt.:


> ich habe etwas, von wegen "weil True und False fest definiert Iterale sind" gelesen. Stimmt das ? bzw. ist das die Erklärung dazu ??



hast du ein beispiel für eine sinnvolle verwendung der klasse "true"?


----------



## bygones (16. Jun 2009)

Marco hat doch schon die Erklaerung gegeben...

es sind Werte.

Ausserdem gibt es ja Boolean.TRUE / Boolean.FALSE

warum sollte es eine Klasse geben... Klassen fassen gemeinsame Eigenschaften, Verhalten, Zustaende zusammen.

Was fuer Zustaende kann TRUE/FALSE haben... was sind ihre Eigenschaften / ihr Verhalten ?

gibts nicht... da Werte


----------



## bygones (16. Jun 2009)

lol... warum wird das Thema zu "Hausaufgaben" verschoben


----------



## musiKk (16. Jun 2009)

Weil das einfach nur eine hingerotzte Aufgabenstellung ohne Eigeninitiative ist.


----------



## bygones (16. Jun 2009)

musiKk hat gesagt.:


> Weil das einfach nur eine hingerotzte Aufgabenstellung ohne Eigeninitiative ist.



ups stimmt... ging ja nicht einfach um die Frage warum kein TRUE / FALSE ^^


----------



## ben_bayram (16. Jun 2009)

hi,

danke für eure antworten. Auch wenn die hälfte Kommentare darüber waren wie blöd die Fragestellung doch ist, habe ich hier mehr gefunden als im web. Auch wenn mir der technische Hintergrund dadurch nicht klarer ist, (also warum genau) weiß ich heut das es einfach sinnlos wäre.

PS: zur EIgeninitiative. Gesucht und gelesen habe ich genug, nur habe ich bis heute keine Begründung (außer das ist blöd, wie denn, hä ... ) gefunden.

Danke.


----------



## icarus2 (16. Jun 2009)

Also ich versuchs jetzt mal kurz.

True oder False sind boolsche Wert, vergleichbar mit Integerwerten wie 1,2,500, 300.

Man schreibt eine Klasse, um Objekte, Methoden und andere Dinge zusammenzufassen.

Genauso wenig Sinn würde es machen, wie oben schon geschrieben, eine Klasse One oder Five zu erstellen, denn es sind bloss Werte. Dafür braucht es keine Klassen oder Methoden.


Ausser du erfindest ein neues Konzept dafür


----------



## tuxedo (17. Jun 2009)

Angenommen True und False wären Klassen... Wie würde dann eine Abfrage aussehen?
Irgendwie so?!

```
boolean b = new True();

if (b instanceOf True) {
System.out.println("b = True");
}
```

Wo hat man jetzt den Gewinn aus einer Klasse True? Das ganze wird "schlimmer" beim Coden und macht es nicht sonderlich leserlich.



> Man schreibt eine Klasse, um Objekte, Methoden und andere Dinge zusammenzufassen.



Und eben deshalb gibt es die Klasse Boolean (okay, das ist nur ne Wrapperklasse, aber es ja mehr um's verdeutlichen). Diese Klasse kann zwei Werte annehmen: True oder False. Sie fasst also Eigenschaften etc. pp zusammen.

- Alex


----------



## bygones (17. Jun 2009)

ben_bayram hat gesagt.:


> PS: zur EIgeninitiative. Gesucht und gelesen habe ich genug, nur habe ich bis heute keine Begründung (außer das ist blöd, wie denn, hä ... ) gefunden.


dann les doch die beitraege.... 

es ist nicht bloed - es ist unsinnig !... es sind werte, keine aggregationen, true false besitzen keine zustaende kein verhalten etc


----------

