Обновить

Комментарии 25

strictfp это strict Floating Point. На эту тему советую почитать habrahabr.ru/blogs/cpp/112953/
CamelCase с маленькой буквы часто называют camelCase или lowerCamelCase.
Интересно, а почему у Android установка слушателя события через set, а не add?
К примеру — setOnClickListener.
Мб потомучто он один?
Формально говоря, все, что я сказал про сеттеры, геттеры и регистрацию листенеров — это Java Beans. Ребята из Android в общем-то и не обязаны придерживаться этих рекомендаций. У них свои есть тут.
Точно! И это утверждение.
А где можно сдать такой экзамен на украине?
НЛО прилетело и опубликовало эту надпись здесь
Сколько скидка по партнерке вышла?
Я так и не воспользовался нашей партнеркой. Не знаю почему. Наверное философское. Просто сам заплатил и все. Это 125$. Скидка партнерам, если я не ошибаюсь, процентов 30. Кто-нибудь пользовался?
так 300 же экзамены стоят — нет?
Ключевые слова необходимо выучить, вопросы на эту тему будут с большой вероятностью.


Про модификаторы доступа обязательно нужно знать что они значат и как применяются.
Модификаторы STATIC, FINAL, ABSTRACT, SYNCHRONIZED, STRICTFP, NATIVE, TRANSIENT, VOLATILE
Их возможные комбинации.
final – нельзя изменять значение переменной, нельзя переопределять метод родителя, нельзя наследовать класс
abstract – первая окончательная реализация класса должна переопределять все абстрактные методы. Не должно быть фигурных скобок.
Не сочетается с FINAL, PRIVATE, STATIC, NATIVE, STRICTFP, TRANSIENT
synchronized – сочетается с любым из четырёх модификаторов доступа
native – только для методов. Не должно быть фигурных скобок.
strictfp – только для методов. Приводит работу с числами с плавающей запятой к определённому стандарту (IEEE 754).
transient – отменяет сериализацию данной переменной
volatile – применяется для безопасной работы с потоками
static – можно помечать методы, переменные класса, вложенный класс, блоки инициализации


Также следует помнить, что конструктор не может быть FINAL, STATIC или ABSTRACT

Дополнение по поводу интерфейса:
• Методы всегда PUBLIC и ABSTRACT, даже если это не объявлено.
• Методы НЕ могут быть STATIC, FINAL, STRICTFP, NATIVE, PRIVATE, PROTECTED
• Переменные только PUBLIC STATIC FINAL, даже если это не объявлено.
• Переменные НЕ могут быть STRICTFP, NATIVE, PRIVATE, PROTECTED
• Может только наследовать (extend) другой интерфейс, но не реализовывать интерфейс или класс (implement).

Этой информации достаточно, чтобы ответить на все вопросы, связанной с модификаторами доступа и ключевыми словами.
НЛО прилетело и опубликовало эту надпись здесь
Ваши дополнения по интерфейсам целиком в статье :-). За остальное спасибо. Ключевым словам действительно много внимания. Понравился где-то на хабре пример с параметром int String и вопросом, скомпилируется или нет. В этом же примере демонстрировалось разделение имен идентификаторов для меток и переменных.
Вы не указали, что интерфейс может иметь вложенный класс.

public interface IClass {

    void doJtest();

    class Tester implements IClass {

        @Override
        public void doJtest() {
            System.out.println("Doing test:\n"+this.getClass().getName());
        }
    };
}


НЛО прилетело и опубликовало эту надпись здесь
НЛО прилетело и опубликовало эту надпись здесь
Лишнего текста действительно ОЧЕНЬ много. Что временами утомляет. Ососбенно 100500 извинений, что все не по стандарту написано. Но зато автор очень добросовестно подходит к деталям. Важные факты повторяются снова, снова и снова. Закрепляются примерами.
Мне стыдно. Я этого не знал.
Спасибо тебе, добрый человек!
Вот уже довольно устаревшее, но тем не менее отличное подспорье в подготовке.
> 5. Файлы, которые не содержат публичных классов, должны иметь имя, которое не совпадает ни с одним из объявленных в нем классов.

Если не секрет, кто знает как такое использовать?
В каком смысле «как использовать»? По желанию ) Например для описания внутренних для пакета классов. Из пакета использовать можно, а снаружи — нет.
Спасибо, просто я как-то привык к публичным классам :)
Ключевое слово тут «привык» на самом деле. До того, как стал готовиться к экзамену, не замечал одной любопытной детали. В диалоге создания класса, например, NetBeans нет возможности указать, что вы хотели бы создать непубличный класс. От вас требуется только указать имя класса, а среда уже за вас сгенерирует имя файла и модификатор подставит.
>5. Файлы, которые не содержат публичных классов, должны иметь имя, которое не совпадает ни с одним из объявленных в нем классов.

А что в данном случае значит «должны»?
Компилятор не жалуется.
Перепроверил этот факт. Был в нем всегда уверен. Однако компилятор действительно не ругается. Более того, спецификация утверждает ровно обратное: мы можем назвать файл с непубличными классами как нам заблагорассудится. Поправил в статье. Спасибо.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации