JavaRush /Java блог /Random /5 интересных и неочевидных вещей, которые сделают Java Ва...
Андрей Пазюк
111 уровень
Киев

5 интересных и неочевидных вещей, которые сделают Java Вашим любимым языком программирования

Статья из группы Random
Ваш путь к становлению настоящим экспертом в мире программирования проходит через полное доверие к языку Java. Он используется миллионами разработчиков по всему миру, и сегодня мы покажем вам пять интересных и неочевидных вещей, которые сделают Java вашим любимым языком программирования. 5 интересных и неочевидных вещей, которые сделают Java Вашим любимым языком программирования - 11. Гибкость интерфейсов В Java есть возможность использовать интерфейсы как контракт для взаимодействия между классами. Но, возможно, вы не знали, что начиная с Java 8, интерфейсы могут иметь реализацию с помощью методов по умолчанию. Это позволяет добавлять новые методы в интерфейс, не разрушая код, который его уже реализует. Это особенно полезно при развитии существующих проектов, где можно легко добавлять новые функциональные возможности.

interface Vehicle {
    void start();
    void stop();

    default void honk() {
        System.out.println("Beep beep!");
    }
}

class Car implements Vehicle {
    @Override
    public void start() {
        System.out.println("Car started.");
    }

    @Override
    public void stop() {
        System.out.println("Car stopped.");
    }
}

public class Main {
    public static void main(String[] args) {
        Car car = new Car();
        car.start();
        car.stop();
        car.honk(); // Использование метода по умолчанию из интерфейса
    }
}
2. Обработка исключений В Java существует мощная система обработки исключений, которая помогает управлять ошибками во время выполнения программы. Однако вы можете быть удивлены узнав, что можно создавать собственные типы исключений, отражающие особые ситуации в вашем коде. Это позволяет вам создавать более детальные и понятные сообщения об ошибках, что способствует их быстрому обнаружению и исправлению.

class CustomException extends Exception {
    public CustomException(String message) {
        super(message);
    }
}

public class Main {
    public static void main(String[] args) {
        try {
            // Бросаем исключение CustomException
            throw new CustomException("Something went wrong.");
        } catch (CustomException e) {
            System.out.println("Exception caught: " + e.getMessage());
        }
    }
}
3. Использование аннотаций Аннотации - это специальные метки, которые можно применять к классам, методам или полям в Java. Они предоставляют дополнительную информацию о коде и могут использоваться для автоматической генерации документации, статического анализа или даже для создания собственных маркеров для вашего кода. Аннотации могут быть очень мощным инструментом для разработчиков, желающих уменьшить повторение кода и автоматизировать некоторые аспекты разработки.

import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;

@Retention(RetentionPolicy.RUNTIME)
@interface MyAnnotation {
    String value() default "";
}

public class Main {
    @MyAnnotation(value = "Example")
    public static void main(String[] args) {
        // Получаем аннотацию и выводим значение
        MyAnnotation annotation = Main.class.getAnnotation(MyAnnotation.class);
        System.out.println("Annotation value: " + annotation.value());
    }
}
4. Перечисляемые типы В Java есть возможность создавать перечисляемые типы, которые являются набором константных значений. Они позволяют вам создавать понятный и безопасный код, так как компилятор проверяет правильность использования этих типов на этапе компиляции. Кроме того, перечисляемые типы могут иметь собственные методы и конструкторы, что дает вам большую гибкость при работе с ними.

enum Day {
    MONDAY,
    TUESDAY,
    WEDNESDAY,
    THURSDAY,
    FRIDAY,
    SATURDAY,
    SUNDAY
}

public class Main {
    public static void main(String[] args) {
        Day today = Day.TUESDAY;
        System.out.println("Today is " + today);
    }
}
5. Лямбда-выражения Введение лямбда-выражений в Java 8 дало разработчикам возможность писать более понятный и компактный код. Лямбда-выражения позволяют передавать функции в качестве параметров другим функциям, что упрощает работу со списками, фильтрацию и преобразование коллекций. Они также повышают читабельность кода, так как функциональность может быть выражена в нескольких строках, вместо длинных блоков кода.

import java.util.ArrayList;
import java.util.List;

public class Main {
    public static void main(String[] args) {
        List<integer> numbers = new ArrayList<>();
        numbers.add(1);
        numbers.add(2);
        numbers.add(3);

        // Применение лямбда-выражения для удвоения значений списка
        numbers.replaceAll(n -> n * 2);

        System.out.println(numbers); // Выводит: [2, 4, 6]
    }
}
Эти пять интересных и неочевидных аспектов языка Java раскроют ваш потенциал как разработчика и помогут сделать его вашим любимым языком программирования. Получайте знания, экспериментируйте и создавайте захватывающие проекты с этим мощным языком! P.S. Текст, код и фото для статьи были сгенерированы с помощью ИИ. Если понравился такой формат, то ставьте лайки, пишите комментарии и я буду выкладывать больше подобного контента и более лучшего качества.
Комментарии (4)
ЧТОБЫ ПОСМОТРЕТЬ ВСЕ КОММЕНТАРИИ ИЛИ ОСТАВИТЬ КОММЕНТАРИЙ,
ПЕРЕЙДИТЕ В ПОЛНУЮ ВЕРСИЮ
Alexey Fermov Уровень 1
4 июня 2023
Неужели статью писал ИИ?
Maddy Уровень 40
29 мая 2023
Крутая статья, Андрей! 🤗