# 1. Основы синтаксиса
Table of Contents
Java: Знание синтаксиса и основных конструкций языка
Java — один из самых популярных языков программирования, известный своей кроссплатформенностью, объектно-ориентированной природой и широким применением в разработке enterprise-решений, мобильных приложений (Android) и веб-сервисов. Понимание его синтаксиса и ключевых конструкций — основа для эффективной работы с этим языком. В этой статье мы разберем основные элементы Java, которые помогут вам писать чистый и функциональный код.
1. Основы синтаксиса
Java — строго типизированный язык с C-подобным синтаксисом. Каждая программа начинается с класса, а выполнение кода — с метода main.
public class HelloWorld { public static void main(String[] args) { System.out.println("Hello, World!"); }}- Чувствительность к регистру:
Systemиsystem— разные идентификаторы. - Точка с запятой: Каждая инструкция завершается
;. - Блоки кода: Ограничиваются фигурными скобками
{}.
2. Переменные и типы данных
Java поддерживает примитивные типы и ссылочные типы (объекты).
Примитивные типы:
int,double,char,boolean,byteи др.
int age = 25;double price = 19.99;char grade = 'A';boolean isActive = true;Ссылочные типы:
- Строки, массивы, классы.
String name = "Alice";int[] numbers = {1, 2, 3};Ключевое слово var (с Java 10):
var message = "Hello"; // Тип выводится автоматически (String).Константы:
final double PI = 3.14159;3. Операторы
- Арифметические:
+,-,*,/,%. - Сравнения:
==,!=,>,<,>=,<=. - Логические:
&&,||,!. - Тернарный оператор:
условие ? значение1 : значение2.
4. Управляющие конструкции
Условия:
-
if-else:if (score >= 90) {System.out.println("A");} else if (score >= 80) {System.out.println("B");} else {System.out.println("C");} -
switch(с Java 14+ поддерживает выражения):String day = "Monday";switch (day) {case "Monday" -> System.out.println("Начало недели!");default -> System.out.println("Другой день");}
Циклы:
-
for:for (int i = 0; i < 5; i++) {System.out.println(i);} -
whileиdo-while:int count = 0;while (count < 3) {System.out.println(count);count++;}do {System.out.println("Выполнится хотя бы раз");} while (false);
5. Массивы и коллекции
Массивы:
int[] numbers = new int[3]; // [0, 0, 0]numbers[0] = 10;
String[] names = {"Alice", "Bob"};Коллекции (например, ArrayList):
import java.util.ArrayList;
ArrayList<String> list = new ArrayList<>();list.add("Java");list.remove(0);6. ООП в Java
-
Классы и объекты:
class Car {String model;void start() {System.out.println("Двигатель запущен");}}Car myCar = new Car();myCar.model = "Tesla";myCar.start(); -
Наследование:
class Animal {void sound() { System.out.println("Звук"); }}class Dog extends Animal {@Overridevoid sound() { System.out.println("Гав!"); }} -
Инкапсуляция (сеттеры/геттеры) и полиморфизм.
-
Интерфейсы и абстрактные классы:
interface Drawable {void draw();}abstract class Shape implements Drawable {abstract double area();}
7. Обработка исключений
try { int result = 10 / 0;} catch (ArithmeticException e) { System.out.println("Деление на ноль!");} finally { System.out.println("Блок finally выполнится всегда");}8. Лямбды и Stream API (Java 8+)
Лямбда-выражения:
Runnable task = () -> System.out.println("Выполнение задачи");new Thread(task).start();Stream API:
List<String> cities = Arrays.asList("Moscow", "Paris", "London");cities.stream() .filter(c -> c.startsWith("M")) .forEach(System.out::println); // Moscow9. Модули (Java 9+)
Модульность позволяет управлять зависимостями:
module my.module { requires java.base; exports com.example.package;}10. Советы по стилю кода
- Используйте camelCase для переменных и методов.
- Названия классов пишите с заглавной буквы:
MyClass. - Комментируйте код с помощью
//и/** Javadoc */.
Заключение
Синтаксис Java может показаться строгим, но именно это делает код предсказуемым и легко поддерживаемым. Практикуйтесь в написании классов, экспериментируйте с коллекциями и Stream API, изучайте принципы ООП. Официальная документация Oracle и сообщество Java — ваши лучшие помощники. Успехов в освоении языка!