Процесс программирования на Java можно упростить, выделив три этапа:

  • Создайте программу, введя ее в текстовый редактор и сохранив как HelloWorld.java(имя файла.java).
  • Скомпилируйте его, введя javac HelloWorld.java(javac filename.java) в окне терминала.
  • Выполните (или запустите) его, введя «java HelloWorld» (имя файла java) в окне терминала.

Программа на Java может содержать любое количество классов, но не более одного класса можно объявить общедоступным. «Если есть публичный класс, имя программы и имя публичного класса должны совпадать, иначе мы получим ошибку времени компиляции».

  • Если общедоступного класса нет, мы можем использовать любое имя для исходного файла Java.
class A {
}
public class B {
}
class C {
}
  • Если класс B объявлен общедоступным, тогда имя программы должно быть B.java; в противном случае мы получим ошибку времени компиляции.
  • Если классы B и C объявлены общедоступными, а имя файла B.java, мы получим ошибку времени компиляции.
  • Настоятельно рекомендуется брать только один класс в качестве исходного файла, а имя программы (файла) должно совпадать с именем класса. Такой подход улучшает читабельность и понятность кода.

Пример: Синтаксис программы Java

Привет, мир

class HelloWorld
{
   public static void main(String args[])
   {
     System.out.println("Hello, World");
     System.out.println("Java is awesome!"); // It prints the text on a new line

   }
}

/* Output:  Hello, World
            Java is awesome!   */

Примечание. Каждая строка кода, работающего на Java, должна находиться внутри класса. В этом примере мы назвали класс HelloWorld. Класс всегда должен начинаться с заглавной буквы. Java чувствителен к регистру: "MyClass" и "myclass" имеют разные значения.

Комментарии Java:

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

Однострочные комментарии:

Однострочные комментарии начинаются с двух косых черт (//). Любой текст между // и концом строки игнорируется Java (не будет выполняться).

Многострочные комментарии:

Многострочные комментарии начинаются с /* и заканчиваются */ . Любой текст между /* и */ будет игнорироваться Java.

В этом примере:

класс — это ключевое слово для создания класса. HelloWorld — это имя нашего класса.

// Valid Java main() method Signatures..

1. public static void main(String[] args)
2. public static void main(String []args)
3. public static void main(String args[])
4. public static void main(String... args)
5. static public void main(String[] args)
6. public static final void main(String[] args)
7. final public static void main(String[] args)
8. final strictfp public static void main(String[] args)

public static void main(String args[])илиstatic public void main(String args[])здесь,

public. Это модификатор доступа, позволяющий получить доступ к классу из любой точки программы.

static: это ключевое слово, которое помогает основному методу быть доступным/вызываемым без создания объектов класса. Модификаторы public и static можно указывать в любом порядке.

void: это ключевое слово, означающее, что этот метод ничего не возвращает.

main(): это сигнатура по умолчанию, определенная в JVM. Основной метод должен находиться внутри определения класса. Это точка входа в Java-программу. Компилятор выполняет код, всегда начиная с основной функции. Без основной функции он не запустится.

String args[]:Это аргумент, передаваемый основной функции, которая представляет собой массив строк с именем массива args.

System.out.println: используется для печати чего-либо на консоли, например printf на языке C. Здесь,

System.out: System — это встроенный класс Java, содержащий полезные члены, такие как out — сокращение от "output". Это стандартный поток вывода, который используется для создания результата программы на устройстве вывода, таком как экран компьютера.

println(): этот метод в Java используется для отображения текста в консоли на новой строке.

Примечание.

  • Фигурные скобки{отмечаютначало и конец блока кода.
  • Также следует помнить, что каждый оператор кода должен заканчиваться точкой с запятой (;).

Вы также можете выводить числа и выполнять математические расчеты:

class Main {
  public static void main(String args[]) 
  {
   System.out.println(3 + 3);
  }
}

// Output: 6

Примечание. Мы не используем двойные кавычки ("") внутри функции println() для вывода чисел.

Существует также метод print(), аналогичный println(). Единственное отличие состоит в том, что он не вставляет новую строку в конце вывода.

class Main {
  public static void main(String args[]) 
  {
    System.out.print("Hello Java! ");
    System.out.print("This will print on the same line.");
  }
}

// Output: Hello Java! This will print on the same line.

Примечание. Для удобства чтения мы добавляем дополнительный пробел (после «Hello Java!» в предыдущем примере).

Модификаторы доступа

Модификаторы доступа — это новый официальный термин, используемый вместо спецификаторов доступа. В Java нет такой концепции, как спецификаторы доступа; все считаются модификаторами только по умолчанию. Спецификаторы доступа и модификаторы доступа означают одно и то же.

Модификаторы доступа используются для установки доступности классов, интерфейсов, полей, методов, конструкторов и т. д. Они определяют, как к ним можно получить доступ из других частей программы.

Обычно в Java существует четыре модификатора доступа. Они есть,

  • Общественный
  • Частный
  • Защищено
  • По умолчанию

Общедоступно. У него нет ограничений по объему; мы можем получить доступ к элементам данных и функциям из любой точки программы.

Частный: к нему нельзя получить доступ за пределами класса; к нему можно получить доступ только из класса, в котором он определен. Чтобы получить доступ к переменной из внешнего класса, мы используем методы getter и setter в Java.

Защищено. К нему можно получить доступ из классов, принадлежащих к тому же пакету, подклассу или из класса, в котором они определены.

По умолчанию: к нему можно получить доступ из всех классов, принадлежащих одному и тому же пакету. Если мы явно не укажем какой-либо модификатор доступа для классов или методов, то по умолчанию он будет учитываться.

class Animal {
  public void method1() 
   { ... }
  private void method2()
   { ... }
}

В этом примере мы не указываем никаких модификаторов доступа для класса, поэтому он будет считаться используемым по умолчанию. Здесь method1 является общедоступным, что означает, что к нему могут обращаться другие классы. Кроме того, метод2 является закрытым, что означает, что другие классы не могут получить к нему доступ.

class Parent {
    protected int x = 10;
}

class Child extends Parent {
    public void printX() {
        System.out.println(x);
    }
}

public class Main {
    public static void main(String[] args) {
        Child c = new Child();
        c.printX(); // prints 10
    }
}

В этом примере переменная «x» в родительском классе помечена как защищенная. Это означает, что доступ к нему может получить только родительский класс, любые классы, расширяющие родительский класс (например, дочерние классы), и любые классы в том же пакете, что и родительский класс. В этом случае дочерний класс может получить доступ к защищенной переменной «x» и распечатать ее значение.