Топ контрибуторов
loading
loading
Знаете ли Вы, что

Список полученных сертификатов находится на странице Вашего профиля. Сертификаты можно распечатать или разместить на Вашем сайте.

Лента обновлений
ссылка Apr 24 18:49
Комментарий от motya:
Что значит - "неправильное?"
ссылка Apr 24 18:25
Комментарий от motya:
Croessmah прав. Почему ещё не исправили вопрос?
ссылка Apr 24 18:20
Комментарий от motya:
Забаньте вопрос.
ссылка Apr 24 14:33
Комментарий от mshfriend:
Есть такой аттрибут сборки InternalsVisibleToAttribute...
ссылка Apr 24 13:51
Комментарий от Oplia512:
+
Статистика

Тестов: 153, вопросов: 8596. Пройдено: 432162 / 2118782.

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.