Почему в Java не используются указатели?

5 Ответы


  • Основная причина в том, что мы будем использовать java для разработки приложений Windows, а также веб-приложений. Если мы используем указатели, особенно для веб-приложений, у нас возникает проблема с безопасностью. Используя указатели, мы напрямую получаем доступ к адресу прямо в системе. Если мы используем его в Интернете, пользователи смогут получить доступ к вашему серверу и изменить адресное расположение данных. Это нарушение безопасности. Поэтому, чтобы предотвратить это, в JAVA полностью избегали указателей.
  • В языке Java ссылки и разыменование объектов обрабатываются автоматически. Java не позволяет вам манипулировать указателями или адресами памяти любого типа. Он не позволяет преобразовывать ссылки на объекты или массивы в целые числа и не позволяет выполнять арифметические операции с указателями. Он не позволяет вам вычислять размер в байтах любого примитивного типа или объекта. У этих ограничений две причины:

    указатели - печально известный источник ошибок. Их устранение упрощает язык и устраняет множество потенциальных ошибок. Указатели и арифметика указателей могут использоваться для обхода проверок времени выполнения и механизмов безопасности Java. Удаление указателей позволяет Java обеспечить гарантии безопасности, которые она делает.

    Программисту на C отсутствие указателей и арифметики указателей может показаться одиозным ограничением в Java. Но как только вы привыкнете к объектно-ориентированной модели программирования Java, она больше не будет казаться серьезным ограничением. Отсутствие указателей означает, что вы, вероятно, не сможете писать драйверы устройств UNIX на Java (по крайней мере, без использования собственных методов, написанных на C). Но главное - большинству из нас в любом случае никогда не придется заниматься таким низкоуровневым программированием.
  • Java - это язык Интернета, другими словами, можно сказать, что это язык сетей.
    Поскольку мы знаем, что с помощью указателей мы можем получить доступ к любым важным данным, указывая на них через указатели. А в сетях и в Java предпочтение отдается безопасности. Таким образом, Java не использует указатели.
  • Что ж, очень спорно сказать, поддерживает ли Java указатели или нет. Многие считают, что каждый ссылочный тип в java является указателем, поэтому хорошо известное исключение Null Pointer Exception. С другой стороны, версия Java 1.5 поддерживает арифметику указателей.

    По сути, Java - это объектно-ориентированный язык программирования, созданный Sun Microsystems в 1990-х годах. Приложения Java обычно собираются в байт-код, но также возможна компиляция в локальный машинный код. Во время выполнения байт-код обычно либо конструируется, либо компилируется в локальный код для функционирования, но также возможна прямая аппаратная реализация байт-кода через процессор Java.

    Java позаимствовала большую часть своего синтаксиса от других хорошо известных языков программирования, таких как C и C ++, но состоит из менее сложной объектной модели и миниатюрных низкоуровневых средств.
  • Общеизвестно, что Java не использует указатели, но это не так. В этом языке используются указатели, но они используются явно, и ими нельзя манипулировать напрямую.

Напишите свой ответ

Ваш ответ появится после модерации