Прочитав эту статью, вы сможетеулучшить свое логическое мышление с помощью Java. Прочитайте это, это поможет вам научиться и понять сложные вещи в программировании и разработке.

Вот пять основных функций Java 17, которые понравятся разработчикам

Но сначала вам нужно знать, что изучение Java расширяет ваши возможности

Java используется почти всеми компаниями.

Это делает вас способными учиться и понимать сложные вещи в программировании и разработке.

Как разработчик, вы можете улучшить свое логическое мышление с помощью Java.

Java легко изучить и внедрить.

Навыки Java могут обеспечить вам высокую зарплату в качестве разработчика Java/инженера-программиста.

Как только вы овладеете языком Java, у вас будет большой спрос на техническом рынке.

Веб-приложения можно разрабатывать с использованием JavaScript и серверных страниц Java (JSP).

В JDK 17 у нас будут все эти функции. Давайте начнем изучать их один за другим.

Сопоставление с образцом — пример функции

обычно мы можем сделать это с помощью оператора instanceof, за которым следует приведение типов. Это позволяет нам извлечь нашу переменную, прежде чем применять дальнейшую обработку, специфичную для этого типа.

Давайте представим, что мы хотим проверить тип в простой иерархии объектов Laptop:

if (Laptop instanceof Mouse) {
    Mouse mouse = (Mouse) Laptop;
    mouse.move();
   // other Mouse operations
} else if (Laptop instanceof Keyboard) {
    Keyboard keyboard = (Keyboard) Laptop;
    keyboard.press();
    // other Keyboard operations
}
// More conditional statements for different Laptops

В этом примере для каждого условного блока мы тестируем параметр Loptop, чтобы определить его тип, преобразовать его с помощью приведения и объявить локальную переменную. Затем мы можем выполнять операции, характерные для этого конкретного лоптопа.

Записи в Java

Запись Java — это тип класса, единственная цель которого — управлять программированием с неизменяемыми данными. Давайте рассмотрим простой пример.

Записи очень полезны для неизменяемых классов носителей данных.

общедоступные данные записи (int x, int y)

Давайте объявим запись как Programmer ниже:

запись программиста (имя строки, возраст целых чисел, язык программирования строки) { }

Переключение выражений

В Java 17 сопоставление шаблонов для переключателя было представлено в качестве функции предварительного просмотра языка, которая позволяет использовать метки регистра с шаблонами, а не просто с константами. Вот пример, показывающий, как можно сопоставлять шаблоны шрифтов:

public static String switchExpressionPatterns(Object o) {
return switch(o) {
case null      -> "I am null";
case String s  -> "I am a String. My value is " + s;
case Integer i -> "I am an int. My value is " + i;
default        -> "I am of an unknown type. My value is " + o.toString();
};
}
// Output:
> switchExpressionPatterns("Yogesh")
"I am a String. My value is Yogesh"
> switchExpressionPatterns(069)
"I am an int. My value is 069"
> switchExpressionPatterns(null)
"I am null"

Текстовые блоки

Функция текстовых блоков Java 17 позволяет наиболее эффективно объявлять многострочные строки.

теперь вы можете использовать текстовые блоки, что делает использование текста в Java-программе более естественным. Сравните традиционный блок текста, встроенный в программу Java, с новой функцией текстового блока Java 17.

Мы можем использовать символы новой строки и кавычки внутри текстовых блоков, не заботясь об escape-символах разрыва строки, и таким образом будет намного проще и читабельнее работать с JSON, SQL и подобными текстами с текстовыми блоками.

Самый простой пример выглядит так:

String example = """
     Example text""";

Запечатанные классы

Наследование — мощная конструкция. Но существует очень мало контрольных точек синтаксиса Java, которые ограничивают возможность объектно-ориентированного искажения на основе наследования. Запечатанный класс Java помогает справиться с чрезмерно усердным и часто пагубным злоупотреблением наследованием Java.

Запечатанные классы позволяют разработчику явно объявлять имена компонентов, которые могут легально наследоваться от создаваемого ими класса. Неэлегантное использование модификатора доступа больше не является единственным способом ограничить использование суперкласса.

public abstract sealed class Shape 
            permits Annulus, Squircle, Triquetra { }

Вот и все!! Вы все сделали и изучите все новые функции Java!

Пожалуйста, подпишитесь и поддержите меня. Здесь вы можете найти истории, связанные с java и программированием.

Следуйте за мной здесь: iamyogesh.medium.com