Из чего может состоять имя программы

Содержание

Рассмотрим вопросы об основах программирования на Java.

К списку вопросов

Вопросы

  1. Сколько ключевых слов зарезервировано языком, что это за слова, какие из них не используются?
  2. Из каких символов может состоять имя переменной (корректный идентификатор)?
  3. Что значит слово “инициализация”?
  4. На какие основные группы можно поделить типы данных?
  5. Какие примитивные типы вы знаете?
  6. Что вы знаете о преобразовании примитивных типов данных, есть ли потеря данных, можно ли преобразовать логический тип?
  7. Какими значениями инициализируются переменные по умолчанию?
  8. Как передается значение переменной (по ссылке/значению)?
  9. Что вы знаете о функции main, какие обязательные условия ее определения?
  10. Какие логические операции и операторы вы знаете?
  11. В чем разница краткой и полной схемы записи логических операторов?
  12. Что такое таблица истинности?
  13. Что такое тернарный оператор выбора?
  14. Какие унарные и бинарные арифметические операции вы знаете?
  15. Какие побитовые операции вы знаете?
  16. Какова роль и правила написания оператора выбора (switch)?
  17. Какие циклы вы знаете, в чем их отличия?
  18. Что такое “итерация цикла”?
  19. Какие параметры имеет цикл for, можно ли их не задать?
  20. Какой оператор используется для немедленной остановки цикла?
  21. Какой оператор используется для перехода к следующей итерации цикла?
  22. Что такое массив?
  23. Какие виды массивов вы знаете?
  24. Что вы знаете о классах оболочках?
  25. Что такое автоупаковка (boxing/unboxing)?

Ответы

1. Сколько ключевых слов зарезервировано языком, что это за слова, какие из них не используются?

50, два из них не используются: const, goto;

Читайте также:
Как запустить 2 программы

4 минуты и ты знаешь как устроен компьютер

Для запоминания это:

* not used; **added in 1.2, *** added in 1.4, **** added in 5.0.

http://docs.oracle.com/javase/tutorial/java/nutsandbolts/_keywords.html

2. Из каких символов может состоять имя переменной (корректный идентификатор)?

Имя или идентификатор переменной — это последовательность из строчных и заглавных латинских букв, цифр, а также символов «$» и «_». Имя переменной может начинаться с любого из перечисленных символов, кроме цифры.

Технически возможно начать имя переменной также с «$» или «_», однако это запрещено соглашением по оформлению кода в Java (Java Code Conventions). Кроме того, символ доллара «$», по соглашению, никогда не используется вообще. В соответствии с соглашением имя переменной должно начинаться именно с маленькой буквы (с заглавной буквы начинаются имена классов). Пробелы при именовании переменных не допускаются.

3. Что значит слово “инициализация”?

Инициализация (от англ. initialization, инициирование) — создание, активация, подготовка к работе, определение параметров. Приведение программы или устройства в состояние готовности к использованию. С точки зрения Java — выделение памяти под объект, например при создании MyClass myClass = new MyClass(). Таким образом будет выделена память под объект myClass (он будет инициализирован).

ИНФОРМАТИКА 8 класс: Общая структура программы в языке Паскаль

Без инициализации (new MyClass()) запись MyClass myClass; просто резервирует имя (объявляется переменная myClass типа MyClass).

4. На какие основные группы можно поделить типы данных?
5. Какие примитивные типы вы знаете?

Примитивные

  • byte (целые числа, 1 байт, [-128, 127])
  • short (целые числа, 2 байта, [-32768, 32767])
  • int (целые числа, 4 байта, [-2147483648, 2147483647])
  • long (целые числа, 8 байт, [-9223372036854775808,9223372036854775807])
  • float (вещественные числа, 4 байта)
  • double (вещественные числа, 8 байт)
  • char (символ Unicode, 2 байта, [0, 65536])
  • boolean (значение истина/ложь, используется int, зависит от JVM)

Ссылочные. В ссылочные типы входят все классы, интерфейсы, массивы.

http://stackoverflow.com/questions/383551/what-is-the-size-of-a-boolean-variable-in-java
boolean type: http://docs.oracle.com/javase/specs/jvms/se8/html/jvms-2.html#jvms-2.3.4
boolean — боремся за Java память… https://habrahabr.ru/post/76481/

6. Что вы знаете о преобразовании примитивных типов данных, есть ли потеря данных, можно ли преобразовать логический тип?

Преобразование может быть неявным и явным (приведение типов). Неявное преобразование может выполняться если:

  1. типы совместимы (например — оба целочисленные)
  2. размер «принимающего» типа больше чем у того, который преобразуется (так называемое «преобразование с расширением»)

int a = 123454 ;
double b = a ; //неявное преобразование — преобразование с расширением

Явное преобразование имеет вид переменная _ нового _ типа = ( новый _ тип ) имя переменной ;

byte b = ( byte ) a ; //b будет остатком от деления a на диапазон byte, может быть потеря данных
public static void typeConverterExample ( ) <
long a = 100L ;
double b = 300.0 ;
Object ab = a + b ;

System . out . println ( ab . getClass ( ) . getName ( ) + » value: » + ab ) ; //java.lang.Double value: 400.0

double c = 1000.05 ;
long d = 1000 ;
Object cd = c + d ;

System . out . println ( cd . getClass ( ) . getName ( ) + » value: » + cd ) ; //java.lang.Double value: 2000.05

public static void typeNarrowing ( ) <
int a0 = 64 ;
int a = 257 ;
int a2 = 126 ;
int a3 = 129 ;
byte b0 = ( byte ) a0 ;
byte b = ( byte ) a ;
byte b2 = ( byte ) a2 ;
byte b3 = ( byte ) a3 ;
System . out . println ( b0 + » » + b + » » + b2 + » » + b3 ) ; //64 1 126 -127
double c = 56.9876 ;
int d = ( int ) c ;
System . out . println ( d ) ; //56
long e = 1000L ;
float f = ( float ) e ;
System . out . println ( f ) ; //1000.0

При повышении типа byte>short; short>int; int>long; float>double; char>int информация не потеряется. При сужении возможна потеря информации (см. пример выше byte = (byte) int).

При различных операциях может происходить повышение типов в порядке «усиления» к более информативному типу. Например складывая int и double получим тип double. Но есть и особенность, например сложив double (4 байта) и long (8 байт) Java оставит знаки после запятой (float), а не более «длинный» тип. Аналогичный пример с вещественной частью:

long a = 100L ;
double b = a ;
Object ab = a + b ;

System . out . println ( ab . getClass ( ) . getName ( ) + » value: » + ab ) ; //java.lang.Double value: 200.0

float c = 100 ;
long d = 1000 ;
Object cd = c — d ;

System . out . println ( cd . getClass ( ) . getName ( ) + » value: » + cd ) ; //java.lang.Float value: -900.0

Кратко можно записать такие правила:

  1. byte, short, char в выражениях всегда повышаются до int
  2. если в выражении участвует тип long — то именно к этому типу будет приведён результат
  3. если в выражении участвует float — то результат приводится к float
  4. если один из операндов имеет тип double — то к этому типу будет приведён весь результат
  5. При выборе между длиной и возможностью сохранить дробную часть — будет выбрана дробная часть
Читайте также:
Программа рассказ с продолжением алгоритм выбери свое путешествие

7. Какими значениями инициализируются переменные по умолчанию?

Числа инициализируются 0 или 0.0 . Объекты (в том числе String) — null , char — u0000 ; boolean — false ;

Но это еще не физический объект, а только указатель на тип Dog. Теперь создадим (инициализируем) этот объект.

Dog myDog = new Dog ( «Rover» ) ;
foo ( myDog ) ;
public void foo ( Dog someDog ) <
someDog . setName ( «Max» ) ; // AAA
someDog = new Dog ( «Fifi» ) ; // BBB
someDog . setName ( «Rowlf» ) ; // CCC

Теперь другая засада — примитивы и строки.

  • Когда передается примитив в метод, то передается также его копия (копия значения).

int y = changeX ( x )
private int changeX ( int value ) <
value = value * 5 ;
return value ;

Создали примитив x = 5 . Передали в метод копию значения (т.е. 5 ). В методе умножили на число и вернули его. Значение примитива y будет равно 25 , а значение примитива x = 5 (т.е. не изменится). Всё дело в том, что мы передали значение (5), а не указатель на область памяти. Соответственно значение x и не должно было поменяться, т.к. мы его не меняли (в методе использовалась копия значения).

  • Строки immutable, т.е. неизменяемые. Когда мы присваиваем строке новое значение, то всегда будет создан новый объект в памяти.

Еще один пример, что происходит при передаче параметра в метод:

class TestClass <
public ArrayList changeObjectValue ( ArrayList objectValue )
objectValue . clear ( ) ;
objectValue . add ( 999 ) ;
return objectValue ;
public String changeStr ( String str ) <
str = «NewString» ;
return str ;
public int changeX ( int x ) <
TestClass testClass = new TestClass ( ) ;
ArrayList value = new ArrayList ( ) ;
value . add ( 23 ) ;
String str = «FirstString» ;
System . out . println ( value + » » + str + » » + x ) ; //[23] FirstString 2
ArrayList value2 = new ArrayList ( ) ;
value2 = value ;
value2 = testClass . changeObjectValue ( value2 ) ;
String str2 = str ;
str2 = testClass . changeStr ( str2 ) ;
int x2 = testClass . changeX ( x ) ;
System . out . println ( value + » » + str + » » + x ) ; //[999] FirstString 2
System . out . println ( value2 + » » + str2 + » » + x2 ) ; //[999] NewString 10

System . out . println ( value . equals ( value2 ) + » » + str . equals ( str2 ) + » » + ( x2 == x ) ) ; //true false false

  1. Создаем ссылочный объект value и добавляем в него объект (Integer=23). Так же создаем строку str = «FirstString» и примитивное число x= 2 .
  2. Отдельно создаем объект value2 и выделяем под него память; Сейчас это выглядит что-то вроде value =, value2 =, т.е. видно, что это разные ссылки на объекты (разные области памяти).
  3. value2 =, value = после присвоения оба объекта ссылаются на одну область памяти. Теперь попытаемся изменить их с помощью методов в тестовом классе
  • Объекты передаются по копии указателя на область памяти. Т.к. value и value2 указывают на один объект в памяти, то после изменения в методе changeObjectValue одного объекта, поменяется и второй.
  • Строка (String) всегда создается новая. Хоть str2 = str и указывали на одну область вначале, но после изменения str2 на новое значение NewString , значение первой строки осталось прежним.
  • Т.к. примитивные типы передаются по копии значения (в данном случае 2 ), то изменение в методе примитивного типа никак не отразилось на значении исходной переменной x (значение в области памяти для x осталось прежним) .

Если всё же остались вопросы, то гуглите по Java pass-by-value.

9. Что вы знаете о функции main, какие обязательные условия ее определения?

Обязательная запись public static void main ( String [ ] args ) < /*тело метода*/ >

Метод main() — точка входа в программу. Может быть несколько методов main. Входные параметры — только массив строк. Если этого метода не будет, то компиляция возможна, но при запуске будет Error: Main method not found.

10. Какие логические операции и операторы вы знаете?
11. В чем разница краткой и полной схемы записи логических операторов?

Оператор Описание
= AND с присваиванием
|= OR с присваиванием
^= XOR с присваиванием
== Равно
!= Не равно
?: Тернарный (троичный) условный оператор
Читайте также:
Описание программ посудомоечной машины beko

Если оба операнда имеют значение true, тогда операторы и | всегда проверяют значение обоих операндов. и || носят название операторов короткой схемы, так как если результат булевого выражения может быть определён из левого операнда, правый операнд не вычисляется.

Примечание: || и могут быть использованы только в логических выражениях.

12. Что такое таблица истинности?

Таблица истинности — это таблица, описывающая логическую функцию.

A B A | B A
  • — (двойной минус) — постфиксный/префиксный декремент, уменьшает значение целочисленной переменной на 1;
  • + — оставляет знак числа;
  • — — изменяет знак числа.
  • Слово означает, что операция применится к операнду после вычисления всего выражения, в которое операнд входит. Аналогично означает, что операция применится до вычисления выражения.

    Пример бинарных арифметических операций:

    • + — сложение чисел или строк;
    • — — вычитание чисел;
    • * — умножения чисел;
    • / — деления чисел;
    • % — вычисление остатка от деления чисел.

    Операция вычисления остатка от деления применима как к целым числам, так и к вещественным.

    15. Какие побитовые операции вы знаете?

    ~ Побитовый унарный оператор NOT
    = Побитовый AND с присваиванием
    | Побитовый OR
    |= Побитовый OR с присваиванием
    ^ Побитовый исключающее XOR
    ^= Побитовый исключающее XOR с присваиванием
    >> Сдвиг вправо (деление на 2 в степени сдвига)
    >>= Сдвиг вправо с присваиванием
    >>> Сдвиг вправо с заполнением нулями
    Сдвиг влево (умножение на 2 в степени сдвига)
    Сдвиг влево с присваиванием
    >>>= Сдвиг вправо с заполнением нулями с присваиванием
    Подробнее http://developer.alexanderklimov.ru/android/java/bitwise.php

    16. Какова роль и правила написания оператора выбора (switch)?

    Оператор switch сравнивает аргумент на равенство с предложенным значением.

    Источник: javastudy.ru

    Из чего может состоять имя программы

    rt926

    October 2021 1 82 Report

    имя программы может состоять из английских букв,цифр,нижнего подчёркивания . Например, zadacha_1 .Имя программы не может начинаться с цифры . Выбери правильные имена
    а) polnaja summa
    б) zadacha
    в) s24
    г) Ж
    д) a1b6qq
    е)winter Comments

    Ответ:

    Подходящие имена это б), в), д), ж).

    Объяснение:

    Они состоят только из английских букв и цифр. И не начинаются на цифру.

    Источник: scholar.tips

    Имя программы может состоять из английских букв, цифр, нижнего подчёркивания . Например, zadacha_1 .Имя программы не может начинаться с цифры . Выбери правильные имена а) polnaja summa
    б) zadacha
    в) s24
    г) Ж
    д) a1b6qq
    е)winter ! y) = x -> ! y -> импоикация y это 0 1 ! y это 1 0

    Иконка предмета

    Информатика, 23.04.2019 11:52

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

    Иконка предмета

    Информатика, 05.05.2019 10:45

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

    Иконка предмета

    Информатика, 13.05.2019 12:35
    Подготовить презентацию на тему «форматы звука». позжалуйста!

    Иконка предмета

    Информатика, 13.05.2019 18:12
    Проект по информатике : 1. введение ; 2.мой взгляд ; 3. интересные факты

    Иконка предмета

    Информатика, 15.05.2019 07:16

    Решить эти от седьмого до одиннадцатого 7.исполнитель черепашка перемещается на экране компьютера, оставляя след в виде линии. в каждый конкретный момент известно положение исполнителя и направление его движения. у в прик. файле)​

    Иконка предмета

    Информатика, 16.05.2019 18:48
    Какое из этих устройсв является энергетическим центром копьютеоа​

    Иконка предмета

    Информатика, 20.05.2019 00:34
    Нужно написать программу на pascale

    Иконка предмета

    Информатика, 21.05.2019 12:49
    Сделать административную работу по иныорматике, нужно сделать все.

    Иконка предмета

    Информатика, 21.05.2019 15:48

    Объясните как решать,. в программе «: =» обозначает оператор присваивания, знаки «+», «–», «*» и «/» – соответственно операции сложения, вычитания, умножения и деления. правила выполнения операций и порядок действий соответствует правилам арифметики. определите значение переменной a после выполнения алгоритма: a : = 30 b : = 2 a : = 2- 24/b b : = a-b/3 в ответе укажите одно целое число – значение переменной a.

    У тебя есть свой ответ?
    Имя программы может состоять из английских букв, цифр, нижнего подчёркивания . Например, zadacha_1 .
    Отправлено

    Вопросы по другим предметам:

    Категория

    Английский язык, 02.12.2020 09:57
    Увидеть вопрос и ответы

    Категория

    Қазақ тiлi, 02.12.2020 09:57
    Увидеть вопрос и ответы

    Категория

    Қазақ тiлi, 02.12.2020 09:57
    Увидеть вопрос и ответы

    Категория

    История, 02.12.2020 09:57

    Актамберды Татикара
    Бухар жырау
    1 1 1
    2 2 2
    Увидеть вопрос и ответы

    Источник: otvetovik.com

    Рейтинг
    ( Пока оценок нет )
    Загрузка ...
    EFT-Soft.ru