🎞️ Video-record

Homework 4

Enum

Enum (перечисление) - специальный класс для создания ограниченного числа значений (например, дни недели, названия планет и тд.). То есть нельзя создавать свои дни недели и можно вытаскивать уже существующие - в этом и вся суть и весь функционал Enum.

public enum DayOfWeek {
   SUNDAY,
   MONDAY,
   TUESDAY,
   WEDNESDAY,
   THURSDAY,
   FRIDAY,
   SATURDAY
}

Сложно, да ?) Мы написали только названия чего-то, как Java-разработчикам со строгой типизацией данных, когда у каждой переменной явно пишется тип (int, Cat и тд), нам не привычно. Давайте заглянем внутрь и посмотрим, во что превращается наш код:

public final class DayOfWeek {
	private DayOfWeek();
	
	public static final int SUNDAY = 0;
	public static final int MONDAY = 1;
	public static final int TUESDAY = 2;
	public static final int WEDNESDAY = 3;
	public static final int THURSDAY = 4;
	public static final int FRIDAY = 5;
	public static final int SATURDAY = 6;
}

Здесь уже всё знакомо, обычный класс с кучей констант, у которой каждая переменная инкрементирует счётчик.

Каждый enum - уникальные значения, поэтому от них нельзя наследоваться и их помечают ключевым словом final.

Exceptions

В языке Java есть класс с названием Exception. Он имплементирует интерфейс throwable вместе с классом Error == объекты этих классов можно ловить в try-catch. Синтаксис try-catch используется во многих языках и этот раздел не должен вызвать проблемы у наших clever студентов😇

https://media.istockphoto.com/vectors/error-page-dead-emoji-illustration-vector-id1095047472?k=6&m=1095047472&s=612x612&w=0&h=3pmxoo0x2rRQXv7z_3Ijm_tsMXMkJfImBdBsXmCJ_tQ=

Чтоб Ваш код не подыхал от непредвиденных последствий, например, не найден ожидаемый файл или передали неверный аргумент (ожидали натуральные числа в аргументе метода, передали отрицательное число) для этих случаев и придумали Exceptions.