Главная страница

Программа завершается. Какие именно команды могут быть в списке зависит от того


Скачать 51.06 Kb.
НазваниеПрограмма завершается. Какие именно команды могут быть в списке зависит от того
Дата04.04.2022
Размер51.06 Kb.
Формат файлаdocx
Имя файлаJavaRush.docx
ТипПрограмма
#441603

1. Команды

Программа — это набор (список) команд. Сначала выполняется первая команда, затем вторая, третья, и так далее. Когда все команды выполнены, программа завершается.

Какие именно команды могут быть в списке зависит от того, кто их выполняет: какие команды знает (и понимает) исполнитель. Собаке можно дать команду «Сидеть», «Голос», кошке — «Брысь», человеку — «Стой! Стрелять буду!», ну а роботу — «Работай! Работай, твою робомать».

Программы, написанные на языке Java, исполняет JVM (Java Virtual Machine — виртуальная машина Java). JVM — это специальная программа, которая умеет исполнять программы, написанные на языке Java.

Список ее команд довольно обширен.
Например, этой командой можно вывести на экран надпись Робот — друг человека:

System.out.println("Робот — друг человека");

Самая простая команда

Но мы начнем не с команд, а с пары простых принципов. Знание нескольких принципов заменяет знание многих фактов.

Принцип первый: в языке программирования Java каждую команду принято писать с новой строки. В конце команды ставится точка с запятой.

Допустим, мы хотим 3 раза вывести на экран надпись Робот — друг человека. Вот как будет выглядеть код программы:

System.out.println("Робот — друг человека");

System.out.println("Робот — друг человека");

System.out.println("Робот — друг человека");

Программа из трех команд

Принцип второй: программа не может просто состоять из команд. Команды языка Java должны находиться внутри функций, а функции — внутри классов.

Представьте себе диван. Диван не может быть сам по себе — он находится в какой-то комнате. Комната тоже не может существовать сама по себе — она находится в каком-то доме. Или же можно сказать, что дом делится на комнаты, а комнаты содержат вещи.

Так вот, команды — это мебель. В языке программирования Java команда не может быть сама по себе: она — часть функции (функции в Java еще называют методами). А метод (функция) — это часть класса. Иными словами, класс делится на методы, а методы содержат команды.

Java-программы состоят из классов, классы содержат методы, а методы — команды.

2. Структура типичной программы

Программы на языке Java состоят из классов. Классов могут быть десятки тысяч. Минимальная программа — один класс. Для каждого класса заводится отдельный файл, имя которого совпадает с именем класса.

Допустим, вы решили создать класс, который будет описывать дом (дом по-английски — House). Тогда вам нужно создать класс House, который будет содержаться в файле House.java.

Если же вы решили описать в программе, например, кота (Cat — кот, по-английски), тогда вам нужно создать файл Cat.java и в нем описать класс Cat и т.д.

Внутри файлов содержится текст – код на языке программирования Java. Обычно код класса состоит из имени класса и тела классаТело класса помещается в фигурные скобки. Вот как может выглядеть класс House:

public class House

{

ТЕЛО КЛАССА

}

файл House.java

Тело класса может содержать переменные (их еще называют данными класса) и методы (функции класса). Выглядит это примерно так:

public class House

{

ПЕРЕМЕННАЯ А

ПЕРЕМЕННАЯ Z

МЕТОД 1

МЕТОД N

}

файл House.java

Ну или вот конкретный пример:

public class House {

int a;

int b;

public static void main (String[] args)

{

System.out.print(1);

}

public static double pi ()

{

return 3.14;

}

}

файл House.java

В примере выше a и b — это переменные, а main и pi — это методы.

3. Метод main()

Классы могут содержать переменные и методы, но не обязаны. Могут быть классы без переменных или без методов. И даже без методов и переменных одновременно. Хотя толку от таких классов немного.

Минимальная программа должна состоять минимум из одного класса, который должен содержать минимум один метод (функцию), с которого начинается выполнение программы. Такой метод должен иметь имя main.
Минимальная программа выглядит вот так:

public class House

{

public static void main (String[] args)

{

}

}

Минимальная программа

Обратите внимание, что метод main в примере выше не содержит команд. Именно так: минимальная программа не содержит ни одной команды. На то она и минимальная.

У класса, с которого начинается программа, может быть любое имя, но у метода main, с которого начинает выполняться программа, всегда один и тот же вид:

public class House

{

public static void main (String[] args)

{

КОД МЕТОДА

}

}

Красным подчеркнута неизменяемая часть: объявление метода main

1. Параметры метода println()

Тело метода состоит из команд. Можно даже сказать, что метод — это команды, объединенные в группу, которой дали имя (имя метода). И так, и так будет верно.

Команды бывают разные. В языке Java есть команды на все случаи жизни. Каждая команда описывает какое-то определенное действие. В конце каждой команды ставится точка с запятой.

Примеры команд:

Команда

Описание (что делает)

System.out.println(1);

Выводит на экран число:

1

System.out.println("Amigo");

Выводит на экран надпись:

Amigo

System.out.println("Risha & Amigo");

Выводит на экран надпись:

Risha & Amigo

На самом деле это одна команда – System.out.println. А в круглых скобках в нее передаются параметры. В зависимости от значений параметров, одна команда может выполнять разные действия. Это очень удобно.

Важно:

В Java размер имеет значение: имеет значение, большими или маленькими буквами написаны команды. Команда System.out.println() работать будет, а system.out.println() — нет.

Если вы хотите вывести на экран текст, его нужно с двух сторон обозначить двойными кавычками.

Одинарная кавычка выглядит вот так ', а двойная — вот так ". Двойная кавычка — это не две одинарных: просьба не путать.

Двойная — это та, которая рядом с кнопкой Enter. На ней еще обычно находится русская буква Э.

2. Отличия println() и print()

Есть две вариации команды вывода на экран: System.out.println() и System.out.print()

Если вы пишете команду System.out.println() несколько раз, каждый раз переданный в нее текст будет выводиться с новой строки. Если System.out.print(), текст будет выводиться на той же строке. Пример:

Команды

Что выведется на экран

System.out.println("Amigo");

System.out.println("The");

System.out.println("Best");

Amigo

The

Best

System.out.print("Amigo");

System.out.println("The");

System.out.print("Best");

AmigoThe

Best

System.out.print("Amigo");

System.out.print("The");

System.out.print("Best");

AmigoTheBest

Небольшое примечание. Команда println() не выводит текст с новой строки – она выводит текст на текущей строке, но делает так, чтобы следующий текст выводился с новой строки.

Команда println() выводит на экран текст и затем добавляет специальный невидимый символ перевода строки, в результате чего следующий текст будет отображаться с начала новой строки.

Так будет выглядеть полностью написанная программа вместе с объявлением класса Amigo и методом main. Внимание на экран:

public class Amigo

{

public static void main (String[] args)

{

System.out.print("Amigo ");

System.out.print("The ");

System.out.print("Best");

}

}

Программа с объявлением класса Amigo и методом main

1. Переменные и коробки

Переменные — это такие специальные штуки для хранения данных. Любых данных. Все данные в Java хранятся с помощью переменных. Больше всего переменная по смыслу напоминает коробку: самую обычную коробку.

Допустим, вы написали на листке число 13 и положили этот лист в коробку. Теперь мы можем говорить, что «коробка хранит значение 13».

Каждая переменная в Java имеет три важных свойства: типимя и значение.

Имя используется для того, чтобы отличать одну переменную от другой. Это как надпись на коробке.

Тип переменной определяет тип значений/данных, которые в ней можно хранить. В коробке для торта храним торт, в коробке для обуви — туфли, и т.д.

Значение — это некий объект, данные или информация, которая хранится в переменной.

Каждый объект в языке Java имеет свой тип. Например, могут быть такие типы данных: целое числодробное числотексттип Коттип Дом и т.д.

У каждой переменной (коробки) тоже есть свой тип. Переменная может хранить значения только того же типа, что и она сама. Разные коробки используются для хранения различных вещей: коробка конфет, коробка для десятка яиц и т.п. Все как в жизни.

2. Создание переменной

В языке Java для того, чтобы создать переменную, используется команда вида:

тип имя;

Объявление переменной

Где тип — это тип переменной (совпадает с типом значений, которые переменная сможет хранить). А имя — это имя переменной.

Примеры:

Создание переменной: сначала тип, затем имя.

Описание

int a;

Создаем переменную по имени a типа int.

String s;

Создаем переменную по имени s типа String.

double c;

Создаем переменную по имени c типа double.

Два самых часто используемых типа — это целые числа (обозначается словом int) и текст (обозначается словом String). Так же популярен тип double — это дробные (вещественные) числа.

3. Присваивание

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

Чтобы занести значение в переменную, существует специальная операция — операция присваивания. Она копирует значение из одной переменной в другую. Не переносит, а именно копирует. Как файл на диске. Выглядит это присваивание так:

имя = значение;

Операция присваивания

Где имя — это имя переменной, а значение — это значение, которое будет занесено в переменную. В качестве значения может фигурировать конкретное значение, имя другой переменной или даже какое-нибудь выражение с использованием переменных.

Примеры:

Код

Описание

int i;

int a, b;

int x;

Создается переменная i
Создаются переменные a, b
Создается переменная x

i = 3;

В переменную i заносится значение 3.

a = 1;

b = a + 1;

В переменную a заносится значение 1.
В переменную b заносится значение 2.

x = 3;

x = x + 1;

В переменную x заносится значение 3.
В следующей строке значение x увеличивается на 1, x теперь равен 4.

Для операции присваивания используется символ равно =. Это не сравнение. Это именно команда копирования значения справа от знака равно в переменную, которая слева. Для сравнения в языке Java используется двойное равно ==.

4. Коты и коробки

Как поймать кота:

  1. Возьмите пустую коробку.

  2. Ждите.

Шутка 🙂

Ну может, в коробку и можно запихнуть сколько угодно котов, но вот в переменную можно положить только одно значение. С чем и будет связана следующая задача.

1. Объявление переменных

Давайте еще раз разберем, как создавать переменные.

Чтобы создать переменную, нужно написать такую команду: тип имя;.

Примеры:

Команда

Пояснение

String s;

Создается переменная s типа String.
Такая переменная может хранить текст.

int x;

Создается переменная x типа int.
Такая переменная может хранить в себе целые числа.

int a, b, c;

int d;

Создаются переменные a, b, c, d типа int.
Такие переменные могут хранить целые числа.

Важно!

Нельзя создать две переменные с одинаковыми именами в одном методе. А вот в разных методах — можно. Это как коробки, стоящие в разных домах.

Еще есть ограничения на имя переменной. С одной стороны, оно может быть любым, с другой – оно не может содержать пробелов, символов +, - и т.д. Лучше всего в имени переменной использовать только латинские буквы и цифры.

Обратите внимание, что в языке Java играет роль, какие буквы вы пишите — большие или маленькие. int a — это не то же самое, что и Int a.

Кстати, в Java можно одновременно создавать переменную и присваивать ей значение. Это экономит время и место:

Компактный код

Длинный код, эквивалентный коду слева

int a = 5;

int a;

a = 5;

int b = 6;

int b;

b = 6;

int c = 7;

int c;

c = 7;

int d = c + 1;

int d;

d = c + 1;

String s = "I'm Amigo";

String s;

s = "I'm Amigo";

Так гораздо компактнее и понятнее.

Ну а раз с созданием переменных мы уже разобрались, давайте немного познакомимся с двумя самыми используемыми типами в языке Java. Это типы int (целые числа) и String (текст/строки).

2. Тип int

В переменной типа int можно хранить целые числа. Также над типом int можно выполнять различные операции: сложение, вычитание, умножение, деление и другие. Примеры:

Код

Пояснение

int x = 1;

int y = x*2;

int z = 5*y*y + 2*y + 3;

x будет равен 1
y будет равен 2
z будет равен 20+4+3, будет равен 27

int a = 5;

int b = 1;

int c = (a-b) * (a+b);

a будет равно 5
b будет равно 1
c будет равно 4*6, будет равно 24

int a = 64;

int b = a/8;

int c = b/4;

int d = c*3;

a будет равно 64
b будет равно 8
c будет равно 2
d будет равно 6



3. Тип String

Тип String позволяет хранить текстовые строки.

Чтобы задать какую-то текстовую строку, в Java надо написать текст строки, а с обеих сторон поставить двойные кавычки. Пример:

Код

Пояснение

String s = "Amigo";

s будет содержать текст Amigo

String s = "123";

s будет содержать текст 123

String s = "Bond 007";

s будет содержать текст Bond 007

Выглядит несложно, правда? Ну если так, тогда вот еще один интересный факт.

Строки в Java можно склеивать с помощью знака плюс — +. Пример:

Код

Пояснение

String s = "Amigo" + " the best";

s будет содержать Amigo the best

String s = "";

s будет содержать пустую строку — вообще без символов.

int x = 333;

String s = "Amigo" + x;

s будет содержать Amigo333

Обратите внимание на последний пример: мы сложили строку и число. Тут тоже все просто: число будет преобразовано в строку, затем две строки будут склеены. При сложении строк и чисел, всегда получается строка.

4. Вывод переменной на экран

Вроде все так очевидно и элементарно. Ну тогда, может, вы сразу догадаетесь, какой командой можно вывести переменную на экран?

На самом деле все просто. Чтобы вывести что-то на экран, мы используем команду System.out.println(), куда в качестве параметра передаем то, что мы выводим.

Код

Вывод на экран

System.out.println("Amigo");

Amigo

System.out.println("Ami" + "go");

Amigo

String s = "Amigo";

System.out.println(s);

Amigo

String s = "Am";

System.out.println(s + "igo");

Amigo

Надеюсь, теперь стало немного понятнее. А правильно вы все поняли или нет, мы сейчас проверим. Практика — критерий истины: только с помощью практики можно проверить, хорошо ли вы во всем разобрались.

1. Java – самый популярный язык программирования

А вы знали, что Java — самый популярный в мире язык программирования?

Согласно рейтингу TIOBE, язык программирования Java используют более 17% всех программистов мира. На втором месте идет C с 16%. А 20 лет назад, когда язык Java только появился, безоговорочным лидером был С++, доля которого сейчас — меньше 7%.

Язык Java появился в середине 90-х годов 20-го века и очень быстро набрал популярность. Программисты тысячами переходили с С++ на Java. Что только лишний раз подтверждает, что Java — это очень крутой язык программирования.

Так что же в нем такого крутого? Какие фишки добавили в него создатели?

Вы очень удивитесь, если сравните язык Java и язык С++: Java очень похож на сильно обрезанный С++!

Да, язык Java — это в какой-то мере сильно урезанный С++. И если в С++ что-то можно сделать 20-ю способами, то в Java это можно сделать только одним способом. И в чем же тут преимущество, спросите вы?

Все дело в том, что современные программы очень большие, и часто программисты до 90% времени тратят на то, чтобы разбираться в чужом коде. И только 10% — на написание нового кода. Так что да, простота — это преимущество.

2. Java-компилятор

Кстати, вы не раз еще услышите, что неоспоримое преимущество Java над другими языками — это мультиплатформенность. Что же это такое и с чем его едят? Начнем издалека.

Дело в том, что компьютер умеет исполнять только простейшие команды.

Для собак есть команды «Рядом», «Лапу» и другие, слыша которую собака делает что-то важное. У компьютера роль таких команд выполняют числа: каждая команда закодирована некоторым числом (его еще называют машинным кодом).

Писать программу в виде чисел очень сложно, поэтому люди придумали языки программирования и компиляторы. Такой язык, с одной стороны, понятен человеку, с другой — компилятору. Компилятор — это специальная программа, которая переводит текст программы, написанный на языке программирования, в набор машинных кодов.

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

  • Программа на языке C++

  • Компилятор

  • Программа, состоящая из машинных кодов

Этапы компиляции для языка C++

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

Если вы написали программу под Android, то на операционной системе Windows она не запустится!

Но у Java гораздо более инновационный подход.

  • Программа на языке Java

  • Java‑компилятор

  • Программа, состоящая из специальных независимых кодов (байт‑код)

  • Java VM

  • Программа, состоящая из машинных кодов

Этапы компиляции для языка Java

Компилятор Java не компилирует все классы в одну программу из машинных кодов. Вместо этого он компилирует каждый класс по отдельности, и не в машинные коды, а в специальный промежуточный код (байт-код). Компиляция в машинный код выполняется при запуске программы.

А кто же компилирует программу в машинный код при ее запуске?

Для этого есть специальная программа под названием JVM (Java Virtual Machine) — Виртуальная Машина Java. Сначала запускают ее, а затем — программу, состоящую из байт-кода. А уже JVM перед выполнением нужной программы компилирует ее в машинный код.

Это очень мощный ход и одна из причин тотального доминирования Java.

3. Области доминирования Java

Благодаря вышеописанным преимуществам, программы, написанные на Java, могут выполняться практически на любых устройствах — компьютерах, телефонах, банкоматах, тостерах, банковских карточках.

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

  1. Enterprise: тяжелые серверные приложения для банков, корпораций, инвестфондов и т.д.

  2. Mobile: мобильная разработка (телефоны, планшеты), благодаря Android.

  3. Web: лидирует PHP, но и Java держит солидный кусок рынка.

  4. Big Data: распределенные вычисления в кластерах из тысяч серверов.

  5. Smart Devices: программы для умного дома, электроники, холодильников с выходом в интернет.

Java — это не просто язык, а целая экосистема: миллионы готовых модулей, которые вы можете использовать в своей программе. Тысячи сообществ и форумов в интернете, где можно попросить помощь или совет.

Чем больше вы будете программировать на Java, тем больше будете находить ответов на вопрос «Почему именно Java?».


написать администратору сайта