Исправления и дополнения для книги В.В.Монахова
«Язык программирования Java и среда NetBeans»

Просьба читателям присылать замечания по ошибкам и неточностям, обнаруженным ими в книге и не отраженными на данном сайте, по адресу v.v.monahov@mail.ru

 


Замеченные опечатки

Аннотация
Ошибка в числе страниц: указано 640 с. вместо 627 с.

с.18, Таблица 1.3. Управляющие последовательности
Напечатано:

СимволЧто означает
\aЗвонок
\bВозврат на один символ назад
......
\vВертикальная табуляция
......
\?Вопросительный знак
\uНачало кодировки символа Unicode

Должно быть:
СимволЧто означает
\bВозврат на один символ назад
......
......
\uНачало кодировки символа Unicode

Опечатка обнаружена автором.

с.119, Таблица 3.4. Целочисленные типы
Напечатано (ошибка в степенях чисел: 215 вместо 215, 109 вместо 109 и т.п.):

ТипЧисло байтДиапазон значенийОписание
byte1-128..127Однобайтовое целое число(8-битное целое со знаком)
short2-215..215-1 =
- 32768.. 32767
Короткое целое число (16-битное целое со знаком)
char2\u0000..\uFFFF=0.. 65535Символьный тип (беззнаковое 16-битное целое)
int4-231..231-1 =
- 2.147483648*109..
2.147483647*109
Целое число (32-битное целое со знаком)
long8-263..263-1 =
-9.22337203685478*1018..
9.22337203685478*1018

Должно быть:
ТипЧисло байтДиапазон значенийОписание
byte1-128..127Однобайтовое целое число(8-битное целое со знаком)
short2-215..215-1 =
- 32768.. 32767
Короткое целое число (16-битное целое со знаком)
char2\u0000..\uFFFF=0.. 65535Символьный тип (беззнаковое 16-битное целое)
int4-231..231-1 =
- 2.147483648*109..
2.147483647*109
Целое число (32-битное целое со знаком)
long8-263..263-1 =
-9.22337203685478*1018..
9.22337203685478*1018
Длинное целое число (64-битное целое со знаком)
Информация об опечатке предоставлена доцентом кафедры вычислительной физики СПбГУ Евгением Александровичем Яревским. Автор выражает ему благодарность.


с.123, Таблица 3.6. Вещественные типы
Напечатано (ошибка в степенях чисел: 1.5*10—45 вместо 1.5*10—45, 3.4*1038 вместо 3.4*1038 и т.п.):

ТипРазмерДиапазонОписание
float4 байта
(32 бита)
1.5*10—45..3.4*1038Одинарная точность, 7—8 значащих десятичных цифр мантиссы.
Тип real*4 стандарта IEEE754
double8 байт
(64 бита)
5*10—324..1.7*10308Двойная точность, 15—16 значащих цифр мантиссы.
Тип real*8 стандарта IEEE754

Должно быть:
ТипРазмерДиапазонОписание
float4 байта
(32 бита)
1.5*10-45..3.4*1038 Одинарная точность, 7—8 значащих десятичных цифр мантиссы.
Тип real*4 стандарта IEEE754
double8 байт
(64 бита)
5*10-324..1.7*10308Двойная точность, 15—16 значащих цифр мантиссы.
Тип real*8 стандарта IEEE754
Информация об опечатке предоставлена доцентом кафедры вычислительной физики СПбГУ Евгением Александровичем Яревским. Автор выражает ему благодарность.


с.132, раздел 3.8. Типы-перечисления (enum)
Напечатано :

В главе 3. Примитивные типы данных и операторы для работы с ними. Ошибочно указано, что перечисления относятся к примитивным типам данных.

Должно быть: В главе 8. Важнейшие объектные типы.
Типы-перечисления являются объектными типами, наследниками класса Enum.

Информация об ошибке обнаружена автором.


с.142, пример умножения двоичных чисел "в столбик"
Напечатано (строки 101 и 101 с результатами перемножения стоят одна под другой, хотя вторая из них должна быть сдвинута влево на 1 символ):
  1012
*
    112
  101
+
  101
11112

Должно быть:
    1012
*
      112
    101
+
  101  
  11112

Информация об опечатке предоставлена магистрантом кафедры вычислительной физики СПбГУ Даниилом Сергеевичем Карповым. Автор выражает ему благодарность.


с.152 (потеряно форматирование верхнего индекса в выражении 2n)
Напечатано : Побитовый сдвиг на n битов влево m<<n эквивалентен быстрому целочисленному умножению числа m на 2n. Младшие биты (находящиеся справа), освобождающиеся после сдвигов, заполняются нулями. Следует учитывать, что старшие биты (находящиеся слева), выходящие за пределы ячейки, теряются, как и при обычном целочисленном переполнении.
Побитовый сдвиг на n битов вправо m>>n или m>>>n эквивалентен быстрому целочисленному делению числа m на 2n.
...
(т. е. также получается полная эквивалентность умножению m на 2n)
...
Легко заметить, что этот оператор эквивалентен быстрому целочисленному делению числа m на 2n как для положительных, так и для отрицательных чисел.
...
Поэтому он не может быть эквивалентен быстрому делению числа на 2n.

Должно быть: Побитовый сдвиг на n битов влево m<<n эквивалентен быстрому целочисленному умножению числа m на 2n. Младшие биты (находящиеся справа), освобождающиеся после сдвигов, заполняются нулями. Следует учитывать, что старшие биты (находящиеся слева), выходящие за пределы ячейки, теряются, как и при обычном целочисленном переполнении.
Побитовый сдвиг на n битов вправо m>>n или m>>>n эквивалентен быстрому целочисленному делению числа m на 2n.
...
(т. е. также получается полная эквивалентность умножению m на 2n)
...
Легко заметить, что этот оператор эквивалентен быстрому целочисленному делению числа m на 2n как для положительных, так и для отрицательных чисел.
...
Поэтому он не может быть эквивалентен быстрому делению числа на 2n.

Опечатка обнаружена автором.


с.161 (потеряно форматирование верхнего индекса в выражении 2n)
Напечатано :

Должно быть:

Опечатка обнаружена автором.


с.165, последний абзац:
Напечатано (лишняя завершающая часть предложения):
После фигурных скобок по правилам Java (как и в /C++) ставить символ точки с запятой (;) не надо, но его можно ставить после фигурных скобок в тех местах программы, где разрешается ставить ничего не делающий пустой оператор - точку с запятой (;).

Должно быть:
После фигурных скобок по правилам Java (как и в C/C++) ставить символ точки с запятой (;) не надо.

Информация об опечатке предоставлена магистрантом кафедры вычислительной физики СПбГУ Даниилом Сергеевичем Карповым. Автор выражает ему благодарность.


с.187, последний абзац раздела 5.11:
Напечатано (написано false вместо true):
do{
 ...
}
while(false);

Должно быть:
do{
 ...
} while(true);

Информация об опечатке предоставлена магистрантом кафедры вычислительной физики СПбГУ Даниилом Сергеевичем Карповым. Автор выражает ему благодарность.


с.198, второй абзац:
Напечатано:
По этой причине она удобна для написания учебных программ, иллюстрирующих работу с классами-наследниками, удобна для совместимости объектных типов, а также при написании полиморфного кода.

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

Опечатка обнаружена автором.


с.215, второй абзац:
Напечатано:
Конструктор Dot (int x, int y, Graphics g) занимается созданием объекта типа Dot и инициализацией его полей.

Должно быть:
Конструктор Dot(Graphics graphics, Color bgColor) занимается созданием объекта типа Dot и инициализацией его полей.

Информация об опечатке предоставлена cтудентом 4-го курса физтеха УГТУ-УПИ Алексеем Смердовым. Автор выражает ему благодарность.


с.221, реализация метода moveTo:
Напечатано (присваивается x=this.x вместо this.x=x, и y=this.y вместо this.y=y):
public void moveTo(int x,int y){
  hide();
  x=this.x;
  y=this.y;
  show();
}

Должно быть:
public void moveTo(int x,int y){
  hide();
  this.x=x;
  this.y=y;
  show();
}

Информация об опечатке предоставлена магистрантом кафедры вычислительной физики СПбГУ Даниилом Сергеевичем Карповым. Автор выражает ему благодарность.


с.257 Напечатано Buckup Existing Source Files, Должно быть: Backup Existing Source Files
с.258 Напечатано Promt Before Generating Code, Должно быть: Prompt Before Generating Code

Информация об опечатках предоставлена Аркадием Геннадьевичем Гордиевским, ст.н.с. Института Ядерной Энергетики в г.Сосновый Бор, сертифицированным специалистом по системам управления предприятием. Автор выражает ему благодарность.


с.279, второй абзац раздела 8.2:
Напечатано:
Основные классы коллекций:

Должно быть:
Основные классы и интерфейсы коллекций:

Опечатка обнаружена автором.


с.281, первый абзац:
Напечатано:
boolean remove All(Collection c)

Должно быть:
boolean removeAll(Collection c)

Информация об опечатке предоставлена одним из cтудентов физического факультета СПбГУ. Автор выражает ему благодарность.


с.281, пятый абзац снизу:
Напечатано:
list.listIterator(i) — получение ссылки на итератор типа ListIterator

Должно быть:
list.listIterator() — получение ссылки на итератор типа ListIterator

Информация об опечатке предоставлена одним из cтудентов физического факультета СПбГУ. Автор выражает ему благодарность.


с.412, Глава 12:
Напечатано:
ГЛАВА 12
Встроенные классы
12.1. Виды встроенных классов

Начиная с JDK 1 в язык Java были введены новые возможности для работы с классами, позволяющие реализовать дополнительные возможности инкапсуляции и композиции — так называемые встроенные классы. Они делятся на несколько категорий: 12.2. Вложенные (nested) классы и интерфейсы

Должно быть:
ГЛАВА 12
Вложенные классы
12.1. Виды вложенных классов

Начиная с JDK 1.2 в язык Java были введены новые возможности для работы с классами, позволяющие реализовать дополнительные возможности инкапсуляции и композиции — так называемые вложенные (nested) классы. Они делятся на две категории:

12.2. Статические (static) вложенные классы и интерфейсы

Информация о неточности первоначально использовавшейся терминологии предоставлена Глушаниным Михаилом Валентиновичем, аспирантом Южно-Российского регионального центра информатизации (ЮГИНФО) Южного федерального университета. Автор выражает ему благодарность.


с.416, первый фрагмент кода:
Напечатано:
new ИмяПрародителя(список параметров конструктора){
  тело конструктора
}

Должно быть:
new ИмяПрародителя(список параметров конструктора){
  тело класса
}

Информация об опечатке предоставлена магистрантом кафедры вычислительной физики СПбГУ Юрием Григорьевым. Автор выражает ему благодарность.


| Домашняя страница BARSIC | Кафедра вычислительной физики | Физический факультет | Центр открытого образования| НИИ физики | СПбГУ |
Rambler's Top100
Электронный адрес: v.v.monahov@mail.ru