Программируем на Java
Қосымшада ыңғайлырақҚосымшаны жүктеуге арналған QRRuStore · Samsung Galaxy Store
Huawei AppGallery · Xiaomi GetApps

автордың кітабынан сөз тіркестері  Программируем на Java

Анна В.
Анна В.дәйексөз келтірді2 жыл бұрын
Одно дело — создать язык, который мешает вам «выстрелить себе в ногу», и совсем другое — создать язык, который помешает кому-то другому «выстрелить вам в ногу».
2 Ұнайды
Комментарий жазу
Дубин В.
Дубин В.дәйексөз келтірді4 ай бұрын
Когда Бьёрн Страуструп выбрал ключевое слово private для обозначения скрытых компонентов классов в C++, он думал, скорее всего, о том, чтобы разработчика не беспокоили запутанные подробности кода других разработчиков, а не о том, как защищать классы и объекты от атак вирусов и троянов. Произвольные преобразования типов и арифметические операции с указателями в C и C++ позволяют легко нарушать разрешения доступа к классам, не нарушая при этом правила языка. Возьмем следующий код: // Код C++ class Finances { private: char creditCardNumber[16]; ... }; main() { Finances finances; // Формирование указателя для получения доступа // к конфиденциальным данным внутри класса char *cardno = (char *)&finances; printf("Card Number = %.16s\n", cardno); } В этой маленькой драме на C++ мы написали код, который нарушает инкапсуляцию класса Finances и извлекает секретную информацию. Подобные фокусы — злоупотребления с нетипизованными указателями — в Java невозможны. Если этот пример кажется вам нереалистичным, подумайте, как важно защищать фундаментальные (системные) классы исполнительной системы от подобных атак. Если ненадежный код сможет повредить компоненты, предоставляющие доступ к реальным ресурсам (к файловой системе, к сети, к оконной системе), то у него появится возможность перехватить номера ваших кредиток.
1 Ұнайды
Комментарий жазу
KR
KRдәйексөз келтірді2 жыл бұрын
Совокупность всей информации о типах в любой конкретный момент называется состоянием типов стека; именно его Java анализирует перед запуском приложения. Java ничего не знает о фактических значениях, хранящихся в стеке и в переменных; известны только их типы. Однако этой информации достаточно для соблюдения правил безопасности и для уверенности в том, что с объектами не будут выполняться некорректные операции.
1 Ұнайды
Комментарий жазу
в переменных, имеющих типы классов, хранятся не сами объекты, а ссылки на них. Ссылка (reference) — это указатель на объект (то есть адрес в памяти, по которому находится объект).
Комментарий жазу
С помощью параметра args приложение получает аргументы командной строки, переданные при его запуске виртуальной машине Java. (В данном случае мы их не используем.)
Комментарий жазу
Java каждый класс определяет собственный тип (тип данных). Вы можете создать переменную этого типа, а затем сохранить в ней экземпляр этого класса. Например, переменная может иметь тип Button и хранить экземпляр класса Button
Комментарий жазу
для изготовления представляемых им объектов. Класс — это что-то вроде «формочки для печенья», которой мы «штампуем» готовые к работе экземпляры (объекты) в памяти компьютера
Комментарий жазу
В этом смысле класс можно рассматривать как шаблон
Комментарий жазу
отдельные «воплощения» класса называются его экземплярами или объектами.
Комментарий жазу
в классе содержатся те методы и переменные, из которых состоит этот компонен
Комментарий жазу