Try English version of Quizful



Раздаем бесплатные Q! подробности в группе Quizful.Alpha-test
Партнеры
Рекрутерам: Прескрининг кандидатов about
Топ контрибуторов
loading
loading
Знаете ли Вы, что

Если у вас есть уникальная статья и вы хотите, чтобы она стала достоянием общественности, вы можете разместить ее на Quizful.

Лента обновлений
ссылка 16:46:41
Комментарий от Tierion:
Оценил отсылку - спасибо за приподнятное настроение!
ссылка 13:09:15
Комментарий от AleksM:
+1
ссылка Apr 28 21:37
Комментарий от wohan:
Ку!
ссылка Apr 28 17:12
Комментарий от hudrogen1:
сложна
ссылка Apr 28 13:59
Комментарий от misha_057:
- присвоить значение, отличное от null локальной перем...
Статистика

Тестов: 152, вопросов: 8527. Пройдено: 362546 / 1752731.

Java - Основы - Объекты и классы (objects)

Вопросы по объектам и классам Java

При программировании с использованием объектно-ориентированного подхода одними из самых главных понятий являются понятия класса и объекта (экземпляр класса).

Категория вопросов по объектам и классам в java покрывает следующие вопросы:

  • Класс (class)
  • Экземпляр класса (объект/instance), инстанциирование объектов
  • Поля (fields) и методы (methods) класса, конструкторы (constructors) класса
  • Статические методы
  • Ссылки на объекты (references)
  • Импорт пакетов (статический импорт не рассмотрен)

На что обратить внимание

При ответе на вопросы данного раздела необходимо обратить внимание на ссылки - где ссылки (references) теряются при присвоении, а где ссылка на объект остается.

Также необходимо следить за модификаторами методов (methods) и учитывать видимость статических (static) и нестатических (non-static) методов между собой.

Распространенными являются вопросы о классе String и его экземплярах. Не следует забывать, что String является неизменяемым (immutable), а также все, что с этим связано.

Пример вопросов по объектам и классам в java

Рассмотрим несколько примеров по классам и объектам в java:

Пример 1

Перечислите все валидные сигнатуры конструкторов класса Clazz:

  • Clazz(String name)
  • Clazz Clazz(String name)
  • int Clazz(String name)
  • void Clazz(String name)
  • Clazz(name)
  • Clazz()

Конструктор класса это тоже метод, но у него нет возвращаемого значения (даже того типа, что и класс). Также у конструктора должен присутствовать список формальных параметров или же параметры должны отсутствовать вообще.

Таким образом нам подходят 2 ответа: Clazz(String name) и Clazz().

Пример 2

Скомпилируется ли следующий код, если оба класса будут объявлены в файле Test.java?


//Test.java
public class Car{
    public String myCar = "Ferrari" ;
}
public class Test{
    public static void main(String ... args){
        Car myCar = new Car();
        System.out.println(myCar.myCar);
    }
}

Код не скомпилируется из-за класса Car. Только один из классов в файле может быть объявлен как public.