В Java все переменные, которые вы объявляете, на самом деле являются «ссылками» на объекты (или примитивы), а не самими объектами.
При попытке выполнить один метод объекта , ссылка просит живой объект выполнить этот метод. Но если ссылка ссылается на NULL (ничего, нуль, void, nada), то нет способа, которым метод будет выполнен. Тогда runtime сообщит вам об этом, выбросив исключение NullPointerException.
Ваша ссылка «указывает» на нуль, таким образом, «Null -> Pointer».
Объект живет в памяти виртуальной машины пространство и единственный способ доступа к нему - использовать ссылки this
. Возьмем этот пример:
public class Some {
private int id;
public int getId(){
return this.id;
}
public setId( int newId ) {
this.id = newId;
}
}
И в другом месте вашего кода:
Some reference = new Some(); // Point to a new object of type Some()
Some otherReference = null; // Initiallly this points to NULL
reference.setId( 1 ); // Execute setId method, now private var id is 1
System.out.println( reference.getId() ); // Prints 1 to the console
otherReference = reference // Now they both point to the only object.
reference = null; // "reference" now point to null.
// But "otherReference" still point to the "real" object so this print 1 too...
System.out.println( otherReference.getId() );
// Guess what will happen
System.out.println( reference.getId() ); // :S Throws NullPointerException because "reference" is pointing to NULL remember...
Это важно знать - когда больше нет ссылок на объект (в пример выше, когда reference
и otherReference
оба указывают на null), тогда объект «недоступен». Мы не можем работать с ним, поэтому этот объект готов к сбору мусора, и в какой-то момент VM освободит память, используемую этим объектом, и выделит другую.
Telerik довольно плодотворно работает и проста в использовании на стороне asp.net. Хотя Вы взломаете некоторую функциональность в и из них и затем иметь изменение кода каждый раз, обновление повреждает Ваши взломы.. независимо они еще легче, чем перестраивание колеса.
Клиент я работаю теперь, также использует Syncfusion Существенный Комплект. Мы главным образом пользовались библиотеками Excel и Word IO, из которых я - удовлетворенный prettuy. Они также обеспечивают много средств управления Ajax ASP.NET, среди который очень обширный DataGrid. Это предлагает довольно много функций, но к сожалению doesn's выполняет это хорошо. В целом, оценка является немного более дешевой, чем компоненты Telerik, вот почему клиент, решенный для него в конце.
Мы выбрали Syncfusion главным образом из-за, он - почти полная обработка RightToLeft - у них все еще есть некоторые ошибки тут и там, но они очень внимательны к вопросам, ошибкам и запросам новых функций.
Telerik - Редактор RAD, Дерево и Графики - хорошие приложения
Только используемые средства управления Infragistics и Janus.
Infragistics в порядке, но не хорош.
я желаю, чтобы I привычек когда-либо использовали Janus снова, один из худших и не интуитивных API. И я могу разрушить образец, которому предоставляют, несколькими щелчками...
В дополнение к другим ответам я хотел бы не забыть Межмягкий средства управления: Webgrid, WebCombo, WebDesktop и многое другое.
я использую их (около средств управления другого поставщика) много лет. Особенно webgrid очень профессионален.
DevExpress получает мой голос также мой, и моя группа разработчиков использовали пакет Предприятия в течение прошлых 3 лет, и он оправдал наши надежды. Одна вещь, которую мы любим в DevExpress, состоит в том, что у них есть ПРЕВОСХОДНАЯ поддержка и постоянно обновление их комплекта.
Я сделал только Winforms и использовал Infragistics, devexpress и januscontrols до сих пор.
я могу предложить, чтобы Вы использовали devexpress.
Самый Быстрый в выполнении во время выполнения, хорошем сообществе, хорошая онлайн-поддержка
Infragistics является очень тяжелыми средствами управления, большим количеством свойств, трудных использовать
И форум поддержки, база знаний и их членская область домашней страницы ОЧЕНЬ ужасны.
januscontrols легки и просты в использовании, но не так мощны как другие.
выполнение во время выполнения, не настолько хорошее как devexpress
Из моего блога
Сравнение этих средств управления, с деталями...
DevExpress и для Windows Forms и для ASP.net. Существует кривая обучения, но как только Вы понимаете способ, которым работают вещи, существует очень мало, что Вы не можете сделать. Планировщик был лучшим на рынке, когда мы использовали его несколько лет назад. Сетка и построение диаграммы сдули клиенты. Их поддержка очень быстро реагирующая обычно на точке. Когда Вы пытаетесь сделать sonething, что средства управления не способны к выполнению, Вы будете часто видеть что опция, добавленная в будущем выпуске.
Нижняя строка: Большой материал!
Я только использовал infragistic, но действительно не рекомендовал бы его. Это часто кажется сложным ради сложности, не говоря уже о том, что я видел несколько ошибок в нем. Кроме того, на веб-земле это не очень перекрестный совместимый браузер. Много вещей Стилиста Приложения не переводит в Firefox хорошо, и WebCombo аварийно завершает ужасно в новом Google Chrome / браузер Хрома.
Я использовал DevExpress для приложений WinForms, главным образом для XtraGrid.
Однако богатая функциональность прибывает в стоимость:
Ваша группа разработчиков должна изучить и охватить иногда сложный дизайн.
некоторые вещи просто не работают правильно, и Вам нужны ужасные взломы для работы вокруг ограничений. К счастью, поддержка DevExpress является обычно очень быстро реагирующей в предоставлении решений и обходных решений.
некоторые вещи не работают вообще - например, XtraGrid правильно не поддерживает сохраняющие данные от строки строкой сетки.
лицензирование вполне ограничивает: устанавливать лицензированную копию на машине разработки требует соединения с сервером DevExpress; я не знаю то, что произойдет, если DevExpress когда-нибудь пойдут путем братьев Lehman. В смягчении лицензия исходного кода по умеренной цене.
Вообще говоря я доволен выбором. Но я хотел бы сделать всестороннюю оценку конкуренции (например, Infragistics) прежде, чем предоставить рекомендацию.
Я использовал Telerik, Syncfusion и сторонние Infragistics средства управления, и я оценил бы их в том порядке.
средства управления Telerik являются порядком величины, более приятным работать с, чем Infragistics.
Мои 0,02$.
Я мог рекомендовать Telerik для ASP.NET. Они очень хороши, но только использовали бы их для приложения Интранет, поскольку они главным образом мощны, но тяжелы. Поскольку WinForms DevComponents имеет блестящий набор компонентов.
материал DevExpress, полностью. Большой побочный эффект захвата одной из больших подписок DevEx состоит в том, что Вы получаете CodeRush и Осуществляете рефакторинг! добавленный, также: D
сетка DevEx, в частности, является первоклассным.
Я предпочитаю DevExpress. Его компоненты так или иначе кажутся более интуитивными мне, чем Infragistic.
Я второй DevExpress - хотя они - не всегда конец - все решение.
Все средства контроля валидации Telerik, DevExpress, Peter Blum хороши. Хотя мы отказываемся от использования серверных элементов управления для вещей, которые могут выполняться исключительно на стороне клиента, и начинаем использовать jQuery в максимально возможной степени.
Что бы вы ни делали, не используйте ComponentArt .... ужасные инструменты, полные ошибок, ужасная поддержка.
Мы широко использовали ComponentArt в одном из наших проектов в течение многих лет. Они полезны до точки, как и каждый сейчас, а затем будет требование, что просто невозможно реализовать с использованием существующих API.
Используя инфрагистику, а также в другом проекте, и теперь работая над тем, что использует Teleerik, я могу сказать вам одну вещь: провести дополнительные деньги и купить люкс управления с полным исходным кодом. Рано или поздно вы столкнетесь с ограничением, и имея исходный код с вами, будет иметь большую помощь.
Конечно, изменение исходного кода имеет недостаток его устаревшего, когда прибывает новая версия, но все же лучше, чем запрашивая функцию из поставщика Suite Control, а затем надеясь, что это будет частью следующего выпуска.
Если честно, Syncfusion - это ужасные средства управления, я использую их в течение 2 лет из-за клиента. Ужасное управление, ужасная архитектура и никакой документации.
из чего Я видел, что сетки intersoft кажутся довольно медленными
Я использую DataGrid от Xceed и несколько различных компонентов от DevComponents.
Кроме того, Xceed имеет феноменальный набор документации и примеров кода.