Java – datové typy

dl

Java – datové typy
« kdy: 14. 07. 2012, 15:53:11 »
Můžete mi prosím někdo objasnit, proč má Java primitivní datové typy? V čem je jejich výhoda oproti přístupu, který má např. Smalltalk (vše je objekt).
Případně, když mohu deklarovat číslo typu int jako primitivní typ nebo jako instanci třídy Integer, kdy je vhodné použít první a kdy druhý způsob?
Děkuji.



Franta

Re:Java – datové typy
« Odpověď #2 kdy: 14. 07. 2012, 17:04:23 »
To aby céčkaři neremcali, že kvůli každému bajtovému číslu musí hned vytvářet objekt. :-)

Rax

Re:Java – datové typy
« Odpověď #3 kdy: 14. 07. 2012, 17:21:41 »
Můžete mi prosím někdo objasnit, proč má Java primitivní datové typy? V čem je jejich výhoda oproti přístupu, který má např. Smalltalk (vše je objekt).
Případně, když mohu deklarovat číslo typu int jako primitivní typ nebo jako instanci třídy Integer, kdy je vhodné použít první a kdy druhý způsob?
Děkuji.

V Javě se primitivní typy dodělávaly proto, že nebylo prakticky možné aby se na každý triviální int alokovala nějaká instance, bylo to nepoužitelně pomalé.
Mít všechno objekt je následek objektového hujerství a velké nepochopení objektového programování jako celku, práce s primitivními typy nemá s OOP nic společného.

mjiyuyf

Re:Java – datové typy
« Odpověď #4 kdy: 14. 07. 2012, 18:36:22 »
Python ale má vše jako objekty, ne?


Re:Java – datové typy
« Odpověď #5 kdy: 14. 07. 2012, 19:42:30 »
Jediný jazyk, který je objektový a zároveň i rychlý je C++.

Ivan

Re:Java – datové typy
« Odpověď #6 kdy: 15. 07. 2012, 10:13:35 »
Abys mohl napsat: c = a + b; namisto c = a.add(b);

Zkus nekdy na pocitani pouzit BigDecimal a uvidis jak je to pohodlny  a rychly.