ЧАСТЬ 1

1. Что нужно знать о самом языке Java

Язык программирования Java относится к языкам высокого уровня. Он был разработан компанией
Sun Microsystems (была куплена компанией Oracle).

Выпускались различные версии языка, популярным он стал, в основном, начиная с версии 1.3.

Версии языка, начиная с версии 1.2 стали называться Java 2. После версии 1.5 нумерация сменилась и версии стали называться Java 5.0, Java 6, Java 7.

По назначению и набору включаемых компонент выделяют Java Standard Edition (J2SE), Java Enterprise Edition (J2EE) и Java Mobile Edition (J2ME).

 

Главная особенность технологий Java – платформонезависимость. Текст программы пишется без учета того, на какой платформе она будет выполняться (Win/Mac/Linux, x64/32), точно так же она компилируется.

Для разных платформ устанавливаются разные версии Java Virtual Machine, которая запускает программы, учитывая, на какой платформе они выполняются.

С помощью загрузчика классов (classloader) скомпилированные java-классы загружаются в JVM, в которой выполняются.

JVM входит в состав Java Runtime Environment (JRE) – среды выполнения Java. Минимально для того, чтобы иметь возможность на компьютере запускать программы на Java нужно наличие установленной JRE.

Для разработки на Java применяется более широкий пакет программ и инструментов – Java Development Kit (JDK) – набор инструментов для разработки на Java.

Установочный пакет (дистрибутив) JDK уже включает в себя JRE.
Скачать его можно с официального сайта.


Для разработки программ на Java применяют специальные среды разработки, самыми популярными из которых считаются Eclipse, NetBeans, Intellij IDEA.

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

2. Базовые типы переменных. Массивы.

Как и при знакомстве с большинством языков, я хотел бы начать с представления переменных, а именно какие типы переменных существуют в Java.

Базовые типы:        
•    Логический (булевский) 
•    Целые числа 
•    Дробные числа (числа с плавающей точкой) 
•    Символ 
К простым типам еще относят массивы, т.к. возможно создавать массивы из примитивных типов. 

Примеры:
Логический

boolean isCorrect = true;

Целые числа

Название

Занимаемый объем

Диапазон значений

int

4

байта

-2 147 483 648 … 2 147 483 647

short

2

байта

-32 768 … 32 767

long

8

байт

-9 223 372 036 854 775 808L … 9 223 372 036 854 775 807L

byte

1

байт

-128 … 127

int price = 100;
long distance = 5000L;

Числа с плавающей точкой (или «.. с плавающей запятой», или floating point)

Название

Занимаемый объем

Диапазон значений

float

4

байта

±3.40282347E+38F (7 значимых разрядов)

double

8

байт

±1.79769313486231570E+308 (15 значимых разрядов)


double price = 12.5; 

float diameter = 0.5F;

Символ 
char yes = ‘Y’;

Массивы

int[] array = new int[10]; array[1] = 5;

int b = array[2];

int count = array.length; int[] numbers = {1, 2, 3, 4};

function(new int[] {10, 20, 30});

Те, кто умеют писать на C-подобных языках, скорее всего не увидели ничего нового. Идем дальше.

3. Строки.

Для работы со строками существует специальный класс –String.

String a = “Hello”;

String b =”World”;

String c = a + b; // будет равно “HelloWorld”

Оператор + производит объединение строк (или «конкатенацию»). При этом пробелы не вставляются, строки складываются как есть.

 

Если складывать любой объект со строкой, объект будет переведет в строку автоматически:

int age = 26;

String hello = “Hello, I am “; System.out.println(hello + age); // “Hello, I am 26”

 

Для получения подстроки из строки используется метод substring():

String greeting = "Java Lessons";

String s = greeting.substring(0, 4); // “Java”

Считаем, что нумерация символов строки начинается с нуля.

Длина строки определяется с помощью метода length()

String greeting = "Hello";

int n = greeting.length(); // = 5.

 

Для получения произвольного символа используется charAt()

String greeting = "Java Lessons";

char last = greeting.charAt(5); //  'L'

Не существует метода для изменения одного символа в строке.

 

Для сравнения двух строк используется метод equals().

Важно!

Если сравнивать 2 строки через оператор сравнения ( == ), то на самом деле мы будем сравнивать только адрес объектов в памяти.

То есть,

String a = ”Hello”;

String b = “Hello”;

Boolean result = a == b;

System.out.println(“a == b ? “ + result ); // вернет true

Почему? Потому что java оптимизирует выделение памяти. Мы объявили что a и b содержат одинаковую строку, и Java создает не 2 объекта в памяти, а один объект строки, на который ссылается переменная.

Но

String a = ”Hello”;

String b = “He”;

String c = “llo”;

Boolean result = a ==( b+c); // a = “Hello” , b+c = “Hello”

System.out.println(“a == b+c ?” + result ); // вернет false

 

Правильное сравнение строк:

String a = ”Hello”;

String b = “He”;

String c = “llo”; a.equals(b); // false 

a.equals(c); // false 

a.eqauls(b+c); //true

Из за того, что всегда есть вероятность того, что переменная равна null, при сравнении переменной и константы, рекомендуется сравнивать именно константу (которая заведомо не равна null) с переменной, а не наоборот.

“Hello”.equals(userInput); // хорошо

userInput.equals(“Hello”); // может быть Null Pointer Exception если

                                     // userInput == null

 

Проверка без учета регистра

“Hello”.equalsIgnoreCase(“hello”); // true

 

На этом, пожалуй, пока что все. Спасибо за внимание!


 Похожие публикации
2015-07-02 • Просмотров [ 320 ]