Воскресенье
20.09.2020
06:58


Форма входа


Приветствую Вас Гость | RSS
Статьи по ORACLE, PL/SQL, Java и немного по SHELL (BASH),...
Главная Каталог статей Регистрация Вход
Главная » Статьи » Java приложения » Java

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

/*
 Это простая Java-программа.
 */
public class Example {

  // Программа начинается с вызова
  public static void main(String[] args) {
    System.out.println("Это простая Java-программа.");
  }
}
Подробный взгляд на первую программу
Хотя программа Example.java очень короткая, она содержит некоторые ключевые свойства, общие для всех Java-программ. Рассмотрим поближе каждую часть программы.
/*
 Это простая Java-программа.
 */

Это комментарий. Как и большинство других языков программирования, Java позволяет вводить замечания в исходный программный файл. Содержимое комментария игнорируется компилятором. Комментарий описывает и объясняет работу программы всем, кто читает исходный код. В нашем случае комментарий описывает программу. Конечно, в реальных приложениях комментарий, в общем случае, объясняет, как работает некоторая часть программы или какими специфическими свойствами она обладает.
Java поддерживает три стиля комментариев. Первый, показанный в начале нашей программы, называют многострочным комментарием. Этот тип комментария должен начинаться символами /* и заканчиваться */. Все символы, находящиеся между этими парами, игнорируются компилятором. Как понятно из названия, многострочный комментарий может состоять из нескольких строк.
Следующая строка кода программы:
class Example {

Эта строка использует ключевое слово class для объявления, что определяет новый класс. Example — это идентификатор, являющийся именем класса. Полное определение класса, включающее все его члены, размещается между открывающей ({) и закрывающей (}) фигурными скобками. 
Сейчас не очень беспокойтесь о деталях класса, за исключением того, что в Java вся программная активность происходит внутри класса. 
Следующая строка в программе — однострочный комментарий:
// Программа начинается с вызова main().
Это второй тип комментариев, поддерживаемых в Java. Однострочный комментарий начинается символами // и завершается в конце строки. Вообще, программисты используют многострочные комментарии для длинных заметок, а однострочные — для кратких построчных описаний.
Следующая строка кода:
 public static void main(String[] args) {
Эта строка заголовка метода main(). Как подсказывает предшествующий комментарий, отсюда начнется выполнение программы. Все приложения Java начинают выполнение с вызова main(). Определенного значения каждой части этой строки сейчас дать нельзя потому, что это требует детального понимания подхода Java к инкапсуляции. Однако, поскольку большинство примеров в лекции будет использовать подобную строку кода, давайте бросим беглый взгляд на каждую часть сейчас.
Ключевое слово public — это спецификатор доступа, который позволяет программисту управлять видимостью членов класса. Когда члену класса предшествует public, то к этому члену возможен доступ из кода, внешнего по отношению к классу, в котором данный метод описан. (Противоположностью public является ключевое слово private, которое предохраняет член от использования кодом, определенным вне данного класса.) В рассматриваемом случае main() необходимо объявить как public, т. к. он должен вызываться кодом извне своего класса при старте программы. Ключевое слово static позволяет методу main() быть вызванным без наличия экземпляров специфического класса. Оно необходимо, т. к. main () вызывается интерпретатором Java перед тем, как создается какой-либо объект. Ключевое слово void просто говорит компилятору, что main() не возвращает значения. Как вы увидите далее, методы могут также и возвращать значения. Если все это кажется немного сбивающим с толку, не волнуйтесь. Все эти концепции будут обсуждены детально в следующих главах.
Итак, main() — это метод, вызываемый, когда Java-приложение начинает выполняться. Имейте в виду, что Java чувствителен к регистру. Таким образом, Main отличается от main. 
Любая информация, которую нужно передать методу, принимается переменными, специфицированными в скобках, следующих за именем метода. Эти переменные называют параметрами. Если нет параметров, необходимых для данного метода, все равно нужно указывать пустые скобки. Для main о существует только один параметр, хотя и сложный, String args [ ] или String[ ] args, объявляет параметр с именем args, являющийся массивом экземпляров класса String.
(Массив — это набор однотипных объектов.) Объекты типа String хранят символьные строки. В данном случае массив args принимает любые аргументы из командной строки, запускающей программу на выполнение. Данная программа не использует эту информацию.
Последний символ в строке это {. Он отмечает начало тела main(). Весь код, который содержит метод, будет располагаться между открывающей и закрывающей фигурными скобками.
С другой точки зрения, main() — это просто место старта для интерпретатора. Сложная программа будет иметь много классов, но только в одном из них нужно указать метод main(), чтобы запустить систему. Когда вы начинаете создание апплетов (Java-программы, которые внедрены в Web- браузеры), вы вообще не используете main(), т. к. Web-браузер пользуется иными средствами начала выполнения апплетов.
Следующая строка кода (заметим, она находится внутри main():
System.out.printIn ("Это простая Java-программа.");
Она выводит на экран строку "Это простая Java-программа.", за которой следует строка новой команды. Вывод в действительности выполняется встроенным методом println(). В данном случае println() выводит на экран строку, которая ей переслана. Далее вы увидите, что println() можно использовать также для показа других типов информации. Строка начинается с System.out. Пока слишком сложно объяснять это в деталях, но, если кратко, то System — это предопределенный класс, который обеспечивает доступ к системе, a out — выходной поток, который соединен с консолью.
Как вы уже, вероятно, догадались, консольный вывод (и ввод) не используется часто в реальных Java-программах и апплетах. Так как наиболее современные компьютерные среды используют окна и являются графическими по природе, консоль ввода/вывода (В/В) применяется, в основном, для простых, вспомогательных и демонстрационных программ. 
Первая скобка } в программе заканчивает main(), а вторая скобка } завершает определение класса Example.
Вторая короткая программа
Вероятно, нет другой более фундаментальной для языка программирования концепции, чем переменная. Как вы, наверное, знаете, переменная — это именованная область памяти, в которой ваша программа может установить некоторое значение. Значение переменной может изменяться во время выполнения программы. Следующая программа показывает, как переменная определяется и как ей приписывается некоторое значение. Дополнительно программа также иллюстрирует новые аспекты консольного вывода.
public class Example2 {

  public static void main(String args[]) {
    int num; // объявляет переменную с именем num 
    num = 100; // присваивает num значение 100 
    System.out.println("Значение num: " + num);
    num = num * 2;
    System.out.print("Удвоенное значение num: ");
    System.out.println(num);
  }
}
Когда вы выполните эту программу, то получите следующий вывод:
Значение num: 100 
Удвоенное значение num: 200
Посмотрим внимательно, как получен этот вывод. Первая новая строка в этой программе:
int num; // объявляет переменную с именем num
В ней объявляется целочисленная переменная с именем num. Java (подобно большинству других языков) требует, чтобы переменные объявлялись перед тем, как они используются.
Общая форма объявления переменной:
type var-name;
где type специфицирует тип объявляемой переменной, a var-name — имя этой переменной. Если вам нужно объявить более одной переменной указанного типа, то можно использовать разделенный запятыми список их имен. В Java определены несколько типов данных, включая целый (integer), символьный (character) и с плавающей точкой (floating-point). Ключевое слово int специфицирует целый тип.
В нашей программе строка
num = 100; // присваивает num значение 100
присваивает переменной num значение 100. В языке Java оператор присваивания выражается одиночным знаком равенства (=).
Следующая строка кода выводит значение num, предваряя его строкой "Значение num:".
System.out.println("Значение num: " + num);
Здесь знак плюс (+) добавляет к предшествующей строке значение num, а затем результирующая строка выводится. (В действительности, num сначала преобразуется из целого типа в строчный эквивалент и затем сцепляется с предшествующей строкой.) Данной подход можно обобщить. Используя операцию +, вы можете сцеплять вместе в одном операторе println() несколько операндов.
Следующая строка кода назначает переменной num значение num, умноженное на 2. Как и большинство других языков, чтобы указать умножение, Java использует операцию *. После выполнения этой строки кода num будет содержать значение 200.
Две следующие строки в программе:
System.out.print("Удвоенное значение num: "); 
System.out.println(num);
Здесь два новых момента. Во-первых, для вывода на экран строки "Удвоенное значение num:" используется встроенный метод print(). За этой строкой не следует символ newline (перевод строки). Это означает, что следующий вывод будет начинаться на той же строке. Метод print() очень похож на println() за исключением того, что он не выводит символа newline после каждого вызова. Теперь взгляните на обращение к println(). Обратите внимание, что аргументом здесь является имя переменной num. Как print(), так и printin() можно использовать для вывода любого встроенного типа языка Java.

Категория: Java | Добавил: Akarak (07.10.2011)
Просмотров: 14680 | Комментарии: 3 | Рейтинг: 5.0/2
Всего комментариев: 3
0
1 fuf   [Материал]
Слушай, а как это: num=num*2? Это что то типа 3 = 3 *2? Или переменная в джаве настолько переменная, что может менятся даже в таких "формулах"? оО

0
2 Akarak   [Материал]
Не пугаете меня, такими вопросами )))
num=num*2 при работе программы работает вот так:
num=3*2, сперва значение переменной подставляется после знака равенства
и только после выполнения операции (в данном случае умножения) присваиваем num новое значение и получаем:
6=3*2
Извините, но найти других слов как объяснить принцип работы я не могу.
ЗЫ. в других языках программирования переменные такие же переменные )))

0
3 Akarak   [Материал]
Вот простая логическая задачка демонстрирующая такую работу:
Имеются две переменные a и b. Допусти, что a=1, b=7. Вопрос: как поменять значения переменных местами не используя третью переменную?
Решение
a=a+b=1+7=8; 
b=a-b=8-7=1; 
a=a-b=8-1=7;
Ответ
a=7
b=1

Имя *:
Email *:
Код *:
Меню сайта

Категории раздела
Java [12]
Консольные приложения
Java ООП [2]

Интересные сайты
  • sql.ru
  • all-oracle.ru
  • oranet.ru
  • oracloid.ru
  • forum.vingrad.ru

  • Статистика

    Онлайн всего: 1
    Гостей: 1
    Пользователей: 0

    Поиск

    Copyright MyCorp © 2020
    Используются технологии uCoz