Программа №2

public class HelloWorld

{

public static void main (String [] args)

{

System. out. println (“Hello, world!”);

}

}

В этой программе есть 1 класс (то же, что тип – в дальнейшем будет употребляться слово ”класс”) под названим HelloWorld, а в этом классе есть одна функция – main. По правилам языка Java запустить можно лишь такую программу, у которой в одном из классов определена именно таким образом функция main с именно такими аргументами.

В теле этой функции написана инструкция, выводящая на экран сообщение “Hello, world!”.

System. out. println - это аналог writeln в Pascal.

String [] args в параметрах функции main означает, что ей передается массив строк под именем args.

Для того, чтобы можно было скомпилировать и запустить эту программу, ее исходный текст должен находиться в файле HelloWorld.java (в каждом файле содержится ровно один класс, который обязан называться так же, как и файл).

Для компиляции необходимо выполнить команду javac HelloWorld.java

В результате ее выполнения, если компиляция прошла без ошибок, создается файл HelloWorld.class, в котором находиться байт – код соответствующего класса.

Чтобы запустить программу, надо выполнить команду java HelloWorld [аргументы]

При этом среда выполнения Java попытается:

1. Найти в текущем каталоге файл HelloWorld.class.

2. Найти в содержащемся там классе HelloWorld функцию main, объявленную именно таким образом.

3. Выполнить ее.

Если указать аргументы командной строки, то они будут переданы в массив args в аргументах функции main.

Эта программа – не объектно-ориентированная, хоть и написана на Java. В самом деле, в ней не создается ни одного объекта.

В объектно – ориентированном подходе ”главным” считаются не действия программы, а объекты, которые их совершают. Попробуем применить это к программе №2. Назовем ее HelloWriter.

Модифицированная программа выглядит так:

HelloWriter.java:

public class HelloWriter

{

public void doIt ()

{

System. out. println (“Hello, world!”);

}

}

HelloWriter.java:

public class HelloWriterTest

{

public static void main (String [] args)

{

HelloWriter writer = new HelloWriter ();

writer.goIt();

}

}

Компиляция: javac HelloWriterTest.java

Запуск: java HelloWriterTest

HelloWriter writer = new HelloWriter (); - эта строчка создает новый экземпляр класса HelloWriter и инициализирует ссылкой на него переменную writer (здесь “=” - не присваивание, а инициализация).

В переменной writer записан не сам объект, а лишь ссылка (адрес) на область памяти, в которой находится объект.

writer.doIt(); - эта строка вызывает у объекта writer метод doIt (), который, собственно, и выполняет работу по выводу на экран сообщения “Hello, world!”.

Тема 1


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: