Теперь остановимся на структуре кода. Сейчас у нас файл MyFirstProgram.java содержит следующий код:
/* * To change this license header, choose License Headers in Project Properties. * To change this template file, choose Tools | Templates * and open the template in the editor. */ package myfirstprogram; /** * * @author Максим */ public class MyFirstProgram { /** * @param args the command line arguments */ public static void main(String[] args) { // TODO code application logic here } }
Любой код java пишется внутри класса. Не может быть код вне класса! В нашем случае класс имеет название MyFirstProgram.
Обычно класс определяет в себе код с определённым функционалом, с каким-то смыслом.
(к примеру класс database — стало быть код в нём служит для работы с базой данных).
Класс — это контейнер для программного кода. Границы класса задаются фигурным скобками {}.
Netbeans подсвечивает эти границы, чтобы мы их видели визуально. Скобки также задают границы методов (у нас сейчас один метод
public static void main(String[] args)), границы условных операторов и различных участков кода.
Метод — одно из основных понятий в языке java! Метод — это аналог понятия функции из процедурных языков программирования
(например из Паскаля, Дельфи, Лазаруса)
Метод — это именованный участок кода, который выполняет определённый функционал.
Метод может возвращать значение, а может ничего не возвращать (выполнять что-то внутри себя).
Метод имеет имя, по которому его можно вызвать, и список параметров, которые передаются при вызове метода.
public static void main(String[] args) {
// TODO code application logic here
}
Данная область и будет называться методом. Это не обычный метод, а метод с названием main. В любой java-программ существует метод main.
Это точка входа в программу. Этот метод вызывает виртуальную машину java, чтобы запустить нашу программу. Метод
должен иметь определённую сигнатуру (вот этот набор атрибутов public static void main(String[] args)). Модификатор доступа,
тип метода, список его параметров. Это нужно для того, чтобы виртуальная машина Java могла распознать именно наш метод main,
нужный, чтобы запустить программу. Слово static мы рассмотрим поздее, а void говорит о том, чтобы метод не будет возвращать никакого значения.
Участки кода, закрашенные серым цветом — это комментарии, пока их можно удалить.
Немного о структуре.
Вверху есть строчка package myfirstprogram; — она обозначает, что наш файл MyFirestProgram.java будет находится в папке (или как говорят в пакете) myfirstprogram.
пакеты нужны для того, чтобы группировать классы с похожим назначением или функционалом в один пакет. Пакеты могут быть вложены в другой пакет.
Остановимся на понятии модификатора доступа. У нашего класса MyFirstProgram есть слово public. У метода main тоже.
Модификаторы доступа применяются к переменным, методам или классам. Всего бывает 4 типа:
1. private — элементы класса доступны только внутри класса.
2. default (если не указан никакой другой модификатор доступа, то говорят модификатор доступа является default.
само слово default писать не надо.) — элемент класса доступен внутри пакета. Если внутри пакета есть другие классы — они будут иметь доступ к этому элементу.
3. protected — элементый доступны внутри пакета и в дочерних классах. О дочерних классах будет рассказано позже.
4. public — обозначает, что элемент класса доступен все и из любого мечта программы.
Модификатор доступа public у нас стоит и у класса, и у метода. Это говорит о том, что наш класс myfirstprogram будет доступен
из любого места программы, наш метод main — аналогично. Метод main должен иметь модификатор доступа public, поскольку
виртуальная машина java должна уметь находить его из любого места программы. Если мы напишем вместо public — private, то программа
не сможет запуститься. Виртуальная машина не сможет найти main.
Теперь давайте выведем на экран слова Hello world! Для этого внутри метода main напишем System.out.println(«Hello, world!»);
/* * To change this license header, choose License Headers in Project Properties. * To change this template file, choose Tools | Templates * and open the template in the editor. */ package myfirstprogram; public class MyFirstProgram { public static void main(String[] args) { System.out.println("Hello, world!"); } }
Сохраняем и запускаем программу. (В Netbeans нажимаем F6 или же зелёную кнопку «play»). Внизу экрана должно высветиться
«Hello, world!»
В java все операторы заканчиваются символом точкой с запитой (;). Точка с запятой обозначает для виртуальной машины, что
данный оператор закончился. После каждого оператора или определённого участка кода в java нужно писать точку с запятой (;).
Оператор System.out.println предназначен для вывода какой-либо информации на экран.
Внутри метода main передаётся параметр (String[] args) — этот параметр обозначает, что в метод main передаётся массив переменных типа String,
которые будут храниться в переменной args — это тоже обязательное условие, так как при запуске программы мы можем передать ей какие-то аргументы в самом начале.
Запустить нашу программы с какими-то параметрами.
В одной файле java может находиться только один public class (в нашем случае это class MyFirstProgram), при чём название публичного класса и название файла java
должны между собой совпадать. Класс называется MyFirstProgram и файл соответственно MyFirstProgram.java Если эти названия не
будут совпадать — будет ошибка, если в файле несколько паблик классов — тоже ошибка.