Урок j-6

Для написання програм на мові Java необхідно знати його синтаксис. З цього уроку ми починаємо знайомство з основами мови. У цьому уроці ми розглянемо:

  • що таке змінні в java і як їх оголошувати,
  • як правильно називати змінні,
  • які існують типи даних в java:
    • примітивні типи даних,
    • посилальні типи даних,
    • окремо розглянемо тип String.

    У попередніх уроках ми говорили про те, що клас в Java складається з атрибутів і методів. Змінні можуть бути атрибутами класу, параметрами методу або можуть використовуватися в програмі для короткострокового зберігання даних. У мові Java всі змінні повинні бути оголошені, перед тим, як вони будуть використовуватися.

    Якщо потрібно оголосити кілька змінних одного типу. то це також можна зробити одним рядком, вказавши імена змінних через кому.

    Правила іменування змінних в java

    1. Ім'я змінної має починатися з літери (маленької) і складатися з букв (Unicode) цифр і символу підкреслення «_». Технічно можливо почати ім'я змінної також з «$» або «_», проте це заборонено угодою з оформлення коду в Java (Java Code Conventions). Крім того, символ долара "$", за згодою, ніколи не використовується взагалі. Відповідно до угоди ім'я змінної повинно починатися саме з маленької літери (з великої літери починаються імена класів). Прогалини при іменуванні змінних не допускаються.
    2. Ім'я змінної не повинно бути ключовим або зарезервованим словом мови Java.
    3. Ім'я змінної чутливо до регістру. newVariable і newvariable - різні імена.
    4. При виборі імені змінних, слід використовувати повні слова замість загадкових абревіатур. Це зробить ваш код більш зручним для читання і розуміння. У багатьох випадках це також зробить ваш код самодокументіруемим.
    5. Якщо вибране вами ім'я змінної складається тільки з одного слова - запишіть його маленькими буквами. Якщо воно складається з більш ніж одного слова, то відокремлюйте кожне наступне слово в імені змінної з великої літери. Наприклад: superCounter, myDomesticAnimal
    6. Якщо змінна зберігає постійне значення, то кожне слово слід писати великими літерами і відокремлювати за допомогою символу підкреслення. Приклад: static final int NUMBER_OF_HOURS_IN_A_DAY = 24

    Кожна змінна і кожен вираз в Java володіє типом і цей тип строго визначений.

    Примітивні типи даних

    В Java існує 8 примітивних типів даних:

    • byte (цілі числа, 1 байт)
    • short (цілі числа, 2 байта)
    • int (цілі числа, 4 байта)
    • long (цілі числа, 8 байтів)
    • float (речові числа, 4 байта)
    • double (речові числа, 8 байтів)
    • char (символ Unicode, 2 байта)
    • boolean (значення істина / неправда, 1 байт)

    Ці 8 типів служать основою для всіх інших типів даних. Примітивні типи мають явним діапазоном допустимих значень.

    byte - діапазон допустимих значень від -128 до 127

    Змінні типу byte корисні при роботі з потоком даних, який надходить з мережі або файлу.

    short - діапазон допустимих значень від -32768 до 32767

    int - діапазон допустимих значень від -2147483648 до 2147483647

    Тип int використовується частіше при роботі з цілочисельними даними, ніж byte і short, навіть якщо їх діапазону вистачає. Це відбувається тому, що при вказівці значень типу byte і short в виразах, їх тип все одно автоматично підвищується до int при обчисленні.

    long - діапазон допустимих значень від -9223372036854775808 до +9223372036854775807

    Тип зручний для роботи з великими цілими числами.

    float - діапазон допустимих значень від

    Зручний для використання, коли не потрібно особливої ​​точності в дробової частини числа.

    double - діапазон допустимих значень від

    Математичні функції такі як sin (), cos (), sqrt () повертають значення double

    char - символьний тип даних являє собою один 16-бітний Unicode символ. Він має мінімальне значення '\ u0000' (або 0), і максимальне значення '\ uffff' (або 65535 включно). Символи char можна задавати також за допомогою відповідних чисел. Наприклад символ 'И' відповідає числу 1067. Розглянемо на прикладі:

    Висновок цієї програми буде:

    Невеликий приклад того, як дізнатися, якого числа відповідає символ. Заснований на претіпованіі даних.

    На виведення програма показує, що символу 'J' відповідає число 74.

    boolean - призначений для зберігання логічних значень. Змінні цього типу можуть приймати тільки одне з 2х можливих значень true або false.

    Тип String

    Тип String не є примітивним типом даних, однак це один з найбільш використовуваних типів в Java. String призначений для зберігання рядків тексту. Кілька прикладів використання String

    Для рядків визначений оператор «+»

    Довідкові типи даних

    У посилальні типи входять всі класи, інтерфейси, масиви. Описаний вище тип String також відноситься до посилальним типам. Цей клас зі стандартної бібліотеки Java.

    Також існують класи-оболонки:

    На відміну від примітивних типів, вони пишуться з великої літери. Ці типи відповідають примітивним типам, проте є посилальними. Їх класи Cодержат методи для перетворення типів, а також інші константи і методи корисні при роботі з примітивними типами даних.

    В якості типу також виступає будь-який створений нами клас при створенні інстанції класу. Згадаймо минулий урок. де ми створили клас Cat, а потім створили змінну ourcat типу Cat при створенні екземпляра класу.

    На цьому закінчимо наше знайомство зі змінними і типами в Java.

    Отже, в цьому уроці ми дізналися які бувають типи даних, навчилися оголошувати змінні. У наступному уроці розглянемо приведення типів.

    Питання по типу String.

    String myString = new String ( «The weather was fine»);
    Тут все зрозуміло: створюється об'єкт myString класу (типу) String і методу-конструктора цього класу передається «The weather was fine» в якості параметра.

    Тоді що відбувається тут:

    String myString = «The weather was fine»;

    І в першому і в другому випадку створюється і ініціалізується змінна типу String другий спосіб запису коротше, і зазвичай використовується він.

    Дякую за відповідь (і за відповідь за порами року - там все зрозуміло), але тут хотілося б уточнення. Як я розумію String - це об'єктний тип, тобто просто є класом зі своїм набором атрибутів і методів, а також має конструктор (наскільки я правильно зрозумів - це метод класу, який має ім'я свого класу і дозволяє задати параметри при створенні об'єкта цього класу).
    Я розглядаю тип, як клас, а змінну, як об'єкт.
    Сутність питання:
    якщо:
    String myString = new String ( «The weather was fine»);
    те ж саме що:
    String myString = «The weather was fine»;

    тоді чи можу я також як в другому випадку створювати об'єкти, наприклад власного класу, що має конструктор з параметрами?

    Другий варіант це така фішка, придумана для типу String, що б було простіше їм користуватися, так як використовується він дуже часто, тому зробили так щоб створювати змінну типу стринг було так само просто як і змінні примітивних типів. Але насправді String це об'єктний тип з усіма наслідками, що випливають, тут ви маєте рацію, тому як і для будь-якого об'єктного типу для String є можливість створити об'єкт за допомогою ключового слова new. Для свого власного класу ви не зможете скористатися другим варіантом при створенні об'єкта.

    Тепер все зрозуміло, спасибі велике

    По-перше, дякую Вам велике за відмінний матеріал і доступну подачу!

    Під час ініціалізації змінних Ви вказуєте їх тип, тим самим повторно оголошуючи їх.

    Дякую за уважність, виправила.

    Cat ourcat = new cat ();

    1.А навіщо привласнювати змінної ourcat екземпляр класу Cat?

    2.допустім тип змінної int говорить про те що змінна цього типу буде цілим числом, тип char про те що змінна буде символом, а тип Cat про що говорить? що змінна буде що?

    1. інакше вона NULL буде
    2. що змінна буде котом. тип Cat це вказівка ​​того, що змінна може використовувати методи з класу Cat і атрибути у неї такі як описані в класі Cat.

    Вітаю!
    Програмую на С ++. Вирішив подивитися на Java. І відразу ж натрапив на ваш сайт.
    Я так розумію Java - це спрощений C ++. Так вот = це перевантажений оператор присвоєння, тобто перевантажена функція.

    через те, що у Java подібний синтаксис - вважати його спрощеним С ++ неправильно