LINUX.ORG.RU
 

J2SE 1.5.0 переименован в J2SE 5.0


0

0

Sun has cut off the "1." to change J2SE 1.5.0 to J2SE 5.0. The reason for the change? Sun claims that "this is the most significant upgrade to the Java platform and programming language since its initial release nearly one decade ago", and that this version is worthy.

>>> Подробности

()
Проверено: maxcom (29.06.2004 17:20:05)

[#]  

Re: J2SE 1.5.0 переименован в J2SE 5.0

Ну хоть перевели бы, ну....

()
[#]  

И правильно! Чего стесняться-то?

Еще точку убрать - и совсем лепота будет: J2SE 50 - красота!

* ()
[#] Ответ на: Re: J2SE 1.5.0 переименован в J2SE 5.0 от ShurkaBurka 29.06.2004 17:25:51  

Re: Re: J2SE 1.5.0 переименован в J2SE 5.0

>Ну хоть перевели бы, ну....

нет уж, не надо. Они так переведут, что половина смысла потеряется.

anonymous ()
[#]  

Re: J2SE 1.5.0 переименован в J2SE 5.0

Давно пора было это сделать. А то несведущий народ путается в версиях.

** ()
[#] Ответ на: Re: J2SE 1.5.0 переименован в J2SE 5.0 от Puzan 29.06.2004 18:07:21  
int19h

Re: Re: J2SE 1.5.0 переименован в J2SE 5.0

> Давно пора было это сделать. А то несведущий народ путается в версиях.

Угу, зато теперь вот все просто и понятно: Java 2 Standard Edition version 5.0. Круче только иксы =)

**** ()
[#]  
WFrag

Re: J2SE 1.5.0 переименован в J2SE 5.0

Дурью маются :( Нафиг надо? Если уж так хочется, назвали бы 2.0.

**** ()
[#] Ответ на: Re: J2SE 1.5.0 переименован в J2SE 5.0 от WFrag 29.06.2004 18:33:27  

Re: Re: J2SE 1.5.0 переименован в J2SE 5.0

2.0? Видно сильно в Java рюхаешь. И что бы тогда ты подумал, если-бы речь зашла о Java 2? 1.5 или 5.0 - пох. Главное фичи там полезные :) Тигра порулит еще.

* ()
[#] Ответ на: Re: Re: J2SE 1.5.0 переименован в J2SE 5.0 от OgreSwamp 29.06.2004 18:39:03  

Re: Re: Re: J2SE 1.5.0 переименован в J2SE 5.0

Более того Java 1.2 была переименована в Java 2 (1.3 и 1.4.x тоже Java 2 платформа). Думаю поэтому 1.5 в 5.0 и переименовали.

* ()
[#] Ответ на: Re: Re: J2SE 1.5.0 переименован в J2SE 5.0 от OgreSwamp 29.06.2004 18:39:03  
WFrag

Re: Re: Re: J2SE 1.5.0 переименован в J2SE 5.0

>2.0? Видно сильно в Java рюхаешь.

Достаточно рюхаю.

> И что бы тогда ты подумал, если-бы речь зашла о Java 2? 1.5 или 5.0 - пох. Главное фичи там полезные :) Тигра порулит еще.

В принципе согласен, будет путаница, надо было раньше 2.0 называть, а не 1.2, а теперь как раз 3.0 была бы. :)

**** ()
[#]  

Re: J2SE 1.5.0 переименован в J2SE 5.0

И правильно делают... а то кое-кто своей .нет не успев разродиться уже по версии старается нагнать =)

()
[#] Ответ на: Re: J2SE 1.5.0 переименован в J2SE 5.0 от RSM 29.06.2004 19:47:16  
int19h

Re: Re: J2SE 1.5.0 переименован в J2SE 5.0

Ну на это есть очень простое решение - у нас уже есть полуофициальные термины .NET 2004 и .NET 2005, а всякие там .NET NT, .NET ME и .NET XP не замедлят воспоследовать =)

Хорошо хоть эти производительность не меряют... а то те еще были бы попугаи, представляете: Java 3 Standard Edition 2 Revision 1 version 3.7 (.NET rating 2010) ;)

**** ()
[#]  

Re: J2SE 1.5.0 переименован в J2SE 5.0

Класс !!! Если после столь НЕЗНАЧИТЕЛЬНЫХ изменения в ЯЗЫКЕ они так напрягаются ... чтож видимо в июле надо ожидать Solaris 2004!

anonymous ()
[#]  
V0ID

Re: J2SE 1.5.0 переименован в J2SE 5.0

Хех. Это чем-то напоминает мне известную басню Крылова ...

*** ()
[#] Ответ на: Re: J2SE 1.5.0 переименован в J2SE 5.0 от anonymous 29.06.2004 19:53:21  
WFrag

Re: Re: J2SE 1.5.0 переименован в J2SE 5.0

>Класс !!! Если после столь НЕЗНАЧИТЕЛЬНЫХ изменения в ЯЗЫКЕ они так напрягаются ... чтож видимо в июле надо ожидать Solaris 2004!

А ихний reflection? Я так понял, это чисто на уровне языка нельзя сделать (хотя вполне возможно, что поддержка метаданных была заложена ранее - те же тэги deprecated).

А вот ихние Generic-и разочаровали :(, в .NET как-то более продуманную вещь обещают (качаю .NET 2.0 Beta :) ).

**** ()
[#]  

Re: J2SE 1.5.0 переименован в J2SE 5.0

Изменения в языке значительные, и полезные настолько, что можно версию на 3 умножить. Вот если бы еще добавили делегатов, то можно было бы назвать и Java 2 50, я думаю ;) Вообще... такой акцией, я думаю, они привлекают к себе внимание - типа "Смотрите сколько много мы сделали!", а колеблющиеся программеры посмотрят, и выберут Java 2 вместо .NET :)

()
[#] Ответ на: Re: Re: J2SE 1.5.0 переименован в J2SE 5.0 от WFrag 29.06.2004 20:21:49  
int19h

Re: Re: Re: J2SE 1.5.0 переименован в J2SE 5.0

> А вот ихние Generic-и разочаровали :(, в .NET как-то более продуманную вещь обещают (качаю .NET 2.0 Beta :) ).

А чем они не устраивают, кстати? Если вспомнить про автобоксинг?

**** ()
[#] Ответ на: Re: Re: Re: J2SE 1.5.0 переименован в J2SE 5.0 от int19h 29.06.2004 20:38:16  
WFrag

Re: Re: Re: Re: J2SE 1.5.0 переименован в J2SE 5.0

>А чем они не устраивают, кстати? Если вспомнить про автобоксинг?

Насколько я понял, это не более чем syntactic sugar, т.е на уровне Reflection-а их нет. Т.е это банальные касты, которые написаны за тебя. Что не добавляет скорости.

В противоположность этому, в .NET - это полноценный элемент Reflection-а. Но это я пока еще не особо разбираюсь - только что докачал, смотрю. Вроде работает. :)

**** ()
[#] Ответ на: Re: Re: Re: Re: J2SE 1.5.0 переименован в J2SE 5.0 от WFrag 29.06.2004 20:45:14  
int19h

Re: Re: Re: Re: Re: J2SE 1.5.0 переименован в J2SE 5.0

> Насколько я понял, это не более чем syntactic sugar, т.е на уровне Reflection-а их нет. Т.е это банальные касты, которые написаны за тебя. Что не добавляет скорости.

Эээ... а причем тут рефлекшн и скорость?? Мне казалось что в дотнете реализация всего этого дела такая же как в яве - автобоксинг в object, разве что с точки зрения программера (в том числе и если смотреть через рефлекшн) это выглядит "по-честному".

**** ()
[#]  
Pi

Re: J2SE 1.5.0 переименован в J2SE 5.0

Слака с 4 на 7 перепрыгнула.

Java с 1.4 на 5.

Зато есть чё в faq'ах писать - флейм из оправданий делать :)

***** ()
[#] Ответ на: Re: Re: Re: Re: Re: J2SE 1.5.0 переименован в J2SE 5.0 от int19h 29.06.2004 20:52:48  

Re: Re: Re: Re: Re: Re: J2SE 1.5.0 переименован в J2SE 5.0

2int19h

Скорее в Jav-е реализация всего этого дела такая же как в .NET :)

anonymous ()
[#] Ответ на: Re: Re: Re: Re: Re: Re: J2SE 1.5.0 переименован в J2SE 5.0 от anonymous 29.06.2004 21:08:02  

Re: Re: Re: Re: Re: Re: Re: J2SE 1.5.0 переименован в J2SE 5.0

> Скорее в Jav-е реализация всего этого дела такая же как в .NET :)

Ха. Не надо. В яве все было раньше, в том числе generics - просто они не были включены в JRE и назывались по другому.

** ()
[#] Ответ на: Re: Re: Re: Re: Re: Re: Re: J2SE 1.5.0 переименован в J2SE 5.0 от Puzan 29.06.2004 21:27:51  

Re: Re: Re: Re: Re: Re: Re: Re: J2SE 1.5.0 переименован в J2SE 5.0

Не надо рассказывать про generics - ты сначала посмотри как сделано это в .NEt а потом сравни как в Java... Почувствуй разницу как говориться... В Джаве это все сделано через ж...у, простите... В дотнет более продуманная реализация....

anonymous ()
[#] Ответ на: Re: Re: Re: Re: Re: Re: J2SE 1.5.0 переименован в J2SE 5.0 от anonymous 29.06.2004 21:45:14  

Re: Re: Re: Re: Re: Re: Re: J2SE 1.5.0 переименован в J2SE 5.0

А вообще народ, если честно - отбросить все эти предубеждения - вам не кажется что последняя джава (1.5 или как там теперь ее - 5.0 :) ) по тупому слизала все из дотНЕТ?...

Я помню читал на САН.КОМ как Гослинг слюной брызгал по поводу "необъектно ориентированности" делегатов? И что в какой нибудь 1.6 (6.0 :))))) ) это будет ?!

anonymous ()
[#] Ответ на: Re: Re: Re: Re: Re: Re: Re: Re: J2SE 1.5.0 переименован в J2SE 5.0 от anonymous 29.06.2004 21:43:15  

Re: Re: Re: Re: Re: Re: Re: Re: Re: J2SE 1.5.0 переименован в J2SE 5.0

> Не надо рассказывать про generics - ты сначала посмотри как сделано это в .NEt а потом сравни как в Java... Почувствуй разницу как говориться... В Джаве это все сделано через ж...у, простите... В дотнет более продуманная реализация....

Смотрел. Сравнил. В яве все реализовано лаконично и самодостаточно, в C# - раздуто и кусочно-обрывочно (как собственно и бОльшая часть .NET).

** ()
[#] Ответ на: Re: Re: Re: Re: Re: Re: Re: J2SE 1.5.0 переименован в J2SE 5.0 от anonymous 29.06.2004 22:10:28  

Re: Re: Re: Re: Re: Re: Re: Re: J2SE 1.5.0 переименован в J2SE 5.0

> Я помню читал на САН.КОМ как Гослинг слюной брызгал по поводу "необъектно ориентированности" делегатов? И что в какой нибудь 1.6 (6.0 :))))) ) это будет ?!

А разве какое-нибудь из нововведений в 1.5 (5.0) не соответствует концепции ОО, как делегаты в .NET?

** ()
[#] Ответ на: Re: Re: J2SE 1.5.0 переименован в J2SE 5.0 от int19h 29.06.2004 18:23:24  

Re: Re: Re: J2SE 1.5.0 переименован в J2SE 5.0

> Java 2 Standard Edition version 5.0. Круче только иксы =)

Ну как же, есть же еще emacs ;-)

anonymous ()
svu

Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: J2SE 1.5.0 переименован в J2SE 5.0

А можно подробнее? Мне правда интересно. То, что в жабке (увы, совместимость) это реализовано как прибамбас ("препроцессор":) компилятора - все-таки повод (хотя, ИМХО, не очень сильный) для упреков. А что кусочно-обрывочного в генериках С# (я с ним знаком поверхностно - и глубже не тянет, известная мне информация меня от этого дела отвращает:)?

***** ()
[#] Ответ на: Re: Re: Re: Re: Re: Re: Re: J2SE 1.5.0 переименован в J2SE 5.0 от anonymous 29.06.2004 22:10:28  
int19h

Re: Re: Re: Re: Re: Re: Re: Re: J2SE 1.5.0 переименован в J2SE 5.0

> вам не кажется что последняя джава (1.5 или как там теперь ее - 5.0 :) ) по тупому слизала все из дотНЕТ?...

Кажется. При этом сделав все то же (скажем, enum'ы) заметно лучше. И что в этом плохого, если учесть, что сам дотнет изначально слизан с явы? ;)

**** ()
[#] Ответ на: Re: Re: Re: Re: Re: Re: Re: Re: J2SE 1.5.0 переименован в J2SE 5.0 от Puzan 29.06.2004 22:17:27  
int19h

Re: Re: Re: Re: Re: Re: Re: Re: Re: J2SE 1.5.0 переименован в J2SE 5.0

> А разве какое-нибудь из нововведений в 1.5 (5.0) не соответствует концепции ОО, как делегаты в .NET?

Делегаты в яве есть уже давно, и называются [anonymous] inner classes. Надо только уиеть их готовить =)

**** ()
[#] Ответ на: Re: Re: Re: Re: Re: J2SE 1.5.0 переименован в J2SE 5.0 от int19h 29.06.2004 20:52:48  
WFrag

Re: Re: Re: Re: Re: Re: J2SE 1.5.0 переименован в J2SE 5.0

>Эээ... а причем тут рефлекшн и скорость?? Мне казалось что в дотнете реализация всего этого дела такая же как в яве - автобоксинг в object, разве что с точки зрения программера (в том числе и если смотреть через рефлекшн) это выглядит "по-честному".

Рефлекшн - это как доказательство несуществования Java Generic-ов в рантайме.

В .NET Generic-и существуют в рантайме и для каждой параметризации будет JIT-ом генерироваться специализация. Но в целях оптимизации несколько специализаций могут делить один native-код, например при параметризации разнвми ссылочными типами, которые занимают определенное число байт. Что-то по аналогии с наследованием vector<T*> от vector<void*> в целях уменьшения разбухания кода. С одной стороны получаем меньшее разбухание кода, чем в C++, а с другой - полное отсутствие кастов (даже в деталях реализации), но при этом, разумеется, типизация не нарушается.

Т.е Generic-и компилируются, а в рантайме JIT генерирует специализации при первом использовании. По этой причине необходимо указывать ограничения на тип-параметр и использовать только задекларированные свойства этого параметра, поскольку дженерик должен откомпилироваться (в отличии от C++, где компилируется только специализация, причем те части, которые реально используются).

Собственно, вот статьи: http://msdn.microsoft.com/msdnmag/issues/03/10/NET/ http://www.artima.com/intv/generics.html

А в Java, насколько я понял, просто тип автоматом будет тип каститься.

>А вообще народ, если честно - отбросить все эти предубеждения - вам не кажется что последняя джава (1.5 или как там теперь ее - 5.0 :) ) по тупому слизала все из дотНЕТ?...

Ну не по тупому, но некоторое взаимодействие проглядывается :)

>Кажется. При этом сделав все то же (скажем, enum'ы) заметно лучше. И что в этом плохого, если учесть, что сам дотнет изначально слизан с явы? ;)

А чем? Я глянул, вроде ничего особенно отличительного не увидел.

**** ()
[#] Ответ на: Re: Re: J2SE 1.5.0 переименован в J2SE 5.0 от WFrag 29.06.2004 20:21:49  

Re: Re: Re: J2SE 1.5.0 переименован в J2SE 5.0

>>А ихний reflection? Я так понял, это чисто на уровне языка нельзя сделать (хотя вполне возможно, что поддержка метаданных была заложена ранее - те же тэги deprecated).

>А вот ихние Generic-и разочаровали :(, в .NET как-то более продуманную вещь обещают (качаю .NET 2.0 Beta :) ).

Потом будет MOP... а потом, богх даст и макросы появятся... back to the future, ё.т.м.

* ()
[#] Ответ на: Re: Re: Re: Re: Re: Re: Re: J2SE 1.5.0 переименован в J2SE 5.0 от anonymous 29.06.2004 22:07:53  

Re: Re: Re: Re: Re: Re: Re: Re: J2SE 1.5.0 переименован в J2SE 5.0

>Нет чтобы сделать яву открытой. Они в циферки играются... Уроды!

Открытая это в смысле ГПЛ? Ну зачем тебе ГПЛ Java? Ты что тут же кинешься форк с неё делать? ВасяПупкин Java 0.0.0.1 beta 3? Ну чего не хватает то? Спецификации все открыты, исходники есть. Ну ей богу как дети. Или хотите тучу не совместимых JVM?

anonymous ()

Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: J2SE 1.5.0 переименован в J2SE 5.0

>> А разве какое-нибудь из нововведений в 1.5 (5.0) не соответствует концепции ОО, как делегаты в .NET?

> Делегаты в яве есть уже давно, и называются [anonymous] inner classes. Надо только уиеть их готовить =)

Только в отличие от делекатов в .NET, inner classes полностью соответствуют ОО.

** ()
[#]  
eXOR

Re: J2SE 1.5.0 переименован в J2SE 5.0

ПыАр!

***** ()
[#] Ответ на: Re: Re: J2SE 1.5.0 переименован в J2SE 5.0 от int19h 29.06.2004 19:51:32  
eXOR

Re: Re: Re: J2SE 1.5.0 переименован в J2SE 5.0

2 int19h:
>у нас уже есть полуофициальные термины .NET 2004 и .NET 2005, а всякие
>там .NET NT, .NET ME и .NET XP не замедлят воспоследовать =)
Сверхнадежная версия .NET построенная на базе .NET CE, .NET NT и .NET CE - .NET CeMeNt! Работать она не будет вовсе, но зато ее и не сломаешь ;-).

***** ()
[#]  

Re: J2SE 1.5.0 переименован в J2SE 5.0

Че вы спорите кто у кого слизал .NET у Java или наоборот... все эти технологии (а в J2EE это вобще не скрывают) основаны прежде всего на спецификациях Object Management Group (www.omg.org)... только вот Microsoft их сильно покоцала и изуверкала, а Sun на них просто основывается.

anonymous ()
[#] Ответ на: Re: Re: Re: Re: Re: Re: Re: Re: J2SE 1.5.0 переименован в J2SE 5.0 от anonymous 30.06.2004 9:15:37  

Re: J2SE 1.5.0 переименован в J2SE 5.0

> Или хотите тучу не совместимых JVM?

А они что ВСЕ совместимы? С каких пор? Да и клепать "стандартные" класссы немудрено. Только вот для CLASSPATH потом ну _очень_ тяжело успевать за этой коммерческой гонкой :( И не факт что она в правильном напрввлении :) Ведь приходиться ВСЕГДА ТОЛЬКО ДОГОНЯТЬ потому что так решили санки, которым надо сметать конкурентов. Вот они и бояться форка.

anonymous ()
[#] Ответ на: Re: Re: Re: J2SE 1.5.0 переименован в J2SE 5.0 от dsa 30.06.2004 6:36:09  

Re: Re: Re: Re: J2SE 1.5.0 переименован в J2SE 5.0

Такие дженерики, как в яве, в .NET были всегда. Ничего же не мешает использовать шаблоны на managed C++. А вообще, давно поря признать, что .NET технологически совершеннее. Никакой крамолы в этом нет. MS умеют писать хороший софт, к тому же они использовали опыт разработки Java и учли предыдущие ошибки. Хотя бы прикол с невозможностью написания на яве функции, которая переставляет местами два int'а.

* ()
[#] Ответ на: Re: Re: J2SE 1.5.0 переименован в J2SE 5.0 от WFrag 29.06.2004 20:21:49  

Re: Re: Re: J2SE 1.5.0 переименован в J2SE 5.0

> качаю .NET 2.0 Beta Что за ".NET 2.0 Beta"? Ты имеешь ввиду Visual Studio 2005 Beta? Или есть еще что-то, о чем я не знаю?

** ()
[#] Ответ на: Re: J2SE 1.5.0 переименован в J2SE 5.0 от anonymous 30.06.2004 10:06:46  

Re: Re: J2SE 1.5.0 переименован в J2SE 5.0

>А они что ВСЕ совместимы? С каких пор? Да и клепать "стандартные" класссы немудрено. Только вот для CLASSPATH потом ну _очень_ тяжело успевать за этой коммерческой гонкой :( И не факт что она в правильном напрввлении :) Ведь приходиться ВСЕГДА ТОЛЬКО ДОГОНЯТЬ потому что так решили санки, которым надо сметать конкурентов. Вот они и бояться форка

А что не совместимы? Я конечно не знаю но у меня class'ы компиленые под sun прекрасно работают на ibm, так что не надо свистеть. Насчёт стандартных классов, НИКТО НЕ ЗАПРЕЩАЕТ ВАМ СДЕЛАТЬ СВОЮ РЕАЛИЗАЦИЮ. Пожалуста сделайте свой rt.jar и распространяйте его под GPL. Ась? Слабо? Ну и о чём мы тогда тут говорим?

anonymous ()
[#] Ответ на: Re: Re: Re: Re: J2SE 1.5.0 переименован в J2SE 5.0 от Eugene_Korobko 30.06.2004 10:27:53  

Re: Re: Re: Re: Re: J2SE 1.5.0 переименован в J2SE 5.0

В догонку насчёт догонять. Как раз в случае форка и начнутся настоящие догоняшки. Посмотрите на MONO, единственная задача которого не отстать от МС.

anonymous ()
[#] Ответ на: Re: Re: Re: Re: Re: Re: J2SE 1.5.0 переименован в J2SE 5.0 от WFrag 30.06.2004 5:56:01  
int19h

Re: Re: Re: Re: Re: Re: Re: J2SE 1.5.0 переименован в J2SE 5.0

> А в Java, насколько я понял, просто тип автоматом будет тип каститься.

Строго говоря, да. Но то что рефлекшн все типизации показывает как один тип - это не баг, это вполне сознательная фича.

> А чем? Я глянул, вроде ничего особенно отличительного не увидел.

Во-первых, возможность ассоциировать с членами enum'а произвольные данные. В .NET в принципе тоже можно, но только одно целое число, и потом приведением типов. В Java, член enum'а - объект, и может иметь поля, методы etc.

Во-вторых, в .NET enum'ы работают по сути так же как в C/C++. Вот вам пример:

// decl.cs

public enum Foo { First, Second }

// test.cs

Console.WriteLine((int) Foo.First); Console.WriteLine((int) Foo.Second);

Соберите decl.cs в отдельную DLL-assembly, а потом уже test.cs со ссылкой на decl.dll. Вроде все замечательно... теперь берем и меняем местами First и Second в decl.cs, и пересобираем его, но test.exe не трогаем. Запускаем... опа! Аналогичные результаты получаются если между First и Second что-нибудь вставить. В яве такого нет: можно как угодно корежить enum, но если не менять названия членов, старый код будет работать.

**** ()
int19h

Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: J2SE 1.5.0 переименован в J2SE 5.0

> Только в отличие от делекатов в .NET, inner classes полностью соответствуют ОО.

Спорное утверждение. Я вот ничего такого "необъектноориентированного" не вижу в делегатах. Больше того, их можно рассматривать просто как syntactic sugar для anonymous inner классов, объявляемых вне методов.

**** ()