Другое событие NullPointerException
возникает, когда объявляется массив объектов, а затем сразу же пытается разыменовать его внутри.
String[] phrases = new String[10];
String keyPhrase = "Bird";
for(String phrase : phrases) {
System.out.println(phrase.equals(keyPhrase));
}
Этот конкретный NPE можно избежать, если порядок сравнения отменяется ; а именно, использовать .equals
для гарантированного непустого объекта.
Все элементы внутри массива инициализируются их общим начальным значением ; для любого типа массива объектов, это означает, что все элементы null
.
Вы должны инициализировать элементы в массиве перед доступом или разыменованием их.
String[] phrases = new String[] {"The bird", "A bird", "My bird", "Bird"};
String keyPhrase = "Bird";
for(String phrase : phrases) {
System.out.println(phrase.equals(keyPhrase));
}
Visual Studio 2003 все еще доступна для загрузки для подписчиков MSDN.
EULA для Visual Studio включает пункт 'снижения', который появляется, IMNAL, чтобы позволить Вам покупать Visual Studio 2008 и затем устанавливать 2003 в соответствии с той же лицензией.
СНИЖЕНИЕ. Можно установить и использовать эту версию и более раннюю версию программного обеспечения одновременно. Это соглашение относится к Вашему использованию более ранней версии. Если более ранняя версия включает различные компоненты, любые условия для тех компонентов в соглашении, которое идет с более ранней версией, относятся к Вашему использованию их. Microsoft не обязана предоставить более ранние версии Вам.
Можно разработать 1,1 проекта в Visual Studio 2005:
http://www.hanselman.com/blog/BuildingNET11ProjectsUsingVisualStudio2005.aspx
MSBuild о Среде Эверетта (MSBEE) объявили, и скоро это будет (обоснованно) поддерживаемым сценарием, и мы все сможем создать и 1,1 и 2,0 версии кода.NET Visual Studio 2005.
Также читайте это сообщение об этой проблеме:
http://blogs.msdn.com/clichten/archive/2005/11/08/490541.aspx
И также:
Отдельно оплачиваемые предметы MSBuild – Инструментарий для.NET, 1.1 “MSBee” являются дополнением к MSBuild, который позволяет разработчикам разрабатывать управляемые приложения с помощью проектов Visual Studio 2005 года та целевая.NET 1.1.
Основная поддержка VS2003 заканчивается в октябре этого года:
http://support.microsoft.com/lifecycle/search/?sort=PN&alpha=Visual+Studio
Расширенная поддержка (независимо от того, что это означает) все еще доступна в течение достаточно долгого времени.
В дополнение к ссылке Espo изучите MSBee, набор улучшений для MSBuild для лучше поддержки Платформы.NET 1.1.
Кажется, что можно даже использовать.NET 1.1 с Visual Studio 2008, тем не менее, таким образом, у Вас не должно быть проблемы.
Тем не менее я интересовался бы слушанием, что заставило Вас выбрать против обновления.
Поддерживаемый: да
Доступный: Не через нормальные каналы. Вы могли бы все еще найти помещенную в коробку копию на Amazon или где-нибудь.
Я полагаю, что vs2003 освобождает поддержку в октябре
.NET 1,1 кода могут быть импортированы в VS 2005 как.NET 2.0, обратно совместима с.NET 1.1.
Необходимо будет, вероятно, преобразовать проект, но он должен все еще выполнить в VS 2005.