Pull to refresh

Comments 25

strictfp это strict Floating Point. На эту тему советую почитать habrahabr.ru/blogs/cpp/112953/
CamelCase с маленькой буквы часто называют camelCase или lowerCamelCase.
Интересно, а почему у Android установка слушателя события через set, а не add?
К примеру — setOnClickListener.
Мб потомучто он один?
Формально говоря, все, что я сказал про сеттеры, геттеры и регистрацию листенеров — это Java Beans. Ребята из Android в общем-то и не обязаны придерживаться этих рекомендаций. У них свои есть тут.
Точно! И это утверждение.
А где можно сдать такой экзамен на украине?
UFO just landed and posted this here
Сколько скидка по партнерке вышла?
Я так и не воспользовался нашей партнеркой. Не знаю почему. Наверное философское. Просто сам заплатил и все. Это 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).

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

public interface IClass {

    void doJtest();

    class Tester implements IClass {

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


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

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

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

Articles