x++;

    Console.WriteLine(x);

   }

  }

 }

}

□ Подход с ключом компилятора. Для контроля переполнения во всем приложении может использоваться настройка компилятора /checked+. Чтобы проиллюстрировать это, удалим инструкцию checked из приведенного выше примера и попытаемся компилировать его, используя флаг /checked+. С его помощью можно включать и выключать проверку арифметического переполнения, изменяя состояние конфигурационных свойств на странице свойств проекта. Задание значения как true будет включать проверку переполнения.

При включенной проверке переполнения можно обсудить использование инструкции unchecked. По сути она предоставляет функциональность для произвольного исключения проверки выражений или блоков инструкций в то время, когда включена проверка во всем приложении. В примере ниже предыдущая инструкция заменяется инструкцией unchecked. Компиляция и выполнение этого кода будет создавать вывод, аналогичный выводу OverflowEX.java.

// OverflowEX.сs.

public class OverflowEX {

 public static void Main(String[] args) {

  sbyte X = 0;

  for (int i = 0; i < 130; i++) {

   unchecked { // можно также использовать unchecked(x++)

    x++;

    Console.WriteLine(x);

   }

  }

 }

}

Входные и выходные данные

Возможность собрать входные данные из командной строки и вывести данные в командной строке является интегральной частью функциональности ввода/вывода в Java. Обычно в Java необходимо создать экземпляр объекта java.io.BufferedReader, используя поле System.in, чтобы извлечь ввод из командной строки. Ниже представлен простой класс Java — JavaEcho, который получает ввод с консоли и выводит его обратно, чтобы проиллюстрировать использование пакета Java.io для сбора и форматирования ввода и вывода:

// JavaEcho.java

import java.io.*;

public class JavaEcho {

 public static void main(String[] args) throws IOException {

  BufferedReader stdin = new BufferedReader(new InputSreamReader(System.in));

  String userInput = stdin.readLine();

  System.out.println('You said: ' + userInput);

 }

}

Класс System.Console предоставляет методы в C#, которые дают аналогичную функциональность для чтения и записи из и в командную строку, Нет необходимости в каких-либо дополнительных объектах, класс Console предоставляет методы, которые могут читать целые строки, читать символ за символом и даже показывать описанный выше поток, из которого выполняется чтение. Важно отметить, что эту функциональность дает System.Console без создания экземпляра объекта Console. Фактически можно обнаружить, что невозможно создать экземпляр объекта Console. Члены класса Console кратко описаны в таблицах ниже:

Открытые статические свойства (общие) Описание
Error Получает стандартный выходной поток ошибок системы
In Получает стандартный входной поток ошибок системы
Out Получает стандартный поток вывода системы
Открытые статические методы (общие) Описание
OpenStandardError Перезагруженный. Возвращает стандартный поток ошибок.
OpenStandardInput Перезагруженный. Возвращает стандартный поток ввода.
OpenStandardOutput Перезагруженный. Возвращает стандартный поток вывода.
Read Читает следующий символ из стандартного потока ввода.
ReadLine Читает следующую строку символов из Console.In, который по
Добавить отзыв
ВСЕ ОТЗЫВЫ О КНИГЕ В ИЗБРАННОЕ

0

Вы можете отметить интересные вам фрагменты текста, которые будут доступны по уникальной ссылке в адресной строке браузера.

Отметить Добавить цитату