Разделы презентаций


Обработка исключений

Обработка исключительных ситуацийКозьминых Н.М.Исключительные ситуации – это нарушение спецификаций, не предусмотренные разработчиком. В таких исключительных ситуациях продолжение выполнения программы:либо становится невозможным (попытка выполнить операцию деления на ноль, открыть несуществующий файл и

Слайды и текст этой презентации

Слайд 1Лекция 8. Обработка исключительных ситуаций
дисциплина «Программирование»
Козьминых Н.М.

Лекция 8. Обработка исключительных ситуацийдисциплина «Программирование»Козьминых Н.М.

Слайд 2Обработка исключительных ситуаций
Козьминых Н.М.
Исключительные ситуации – это нарушение спецификаций, не

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

невозможным (попытка выполнить операцию деления на ноль, открыть несуществующий файл и т.д.);
либо приведёт к некорректным результатам.
Обработка исключительных ситуацийКозьминых Н.М.Исключительные ситуации – это нарушение спецификаций, не предусмотренные разработчиком. В таких исключительных ситуациях продолжение

Слайд 3Обработка исключительных ситуаций
Козьминых Н.М.
try{
… }
catch(( ){
… }
finally{
… }
try

(охраняемый блок) – блок, в котором возможна ошибка (исключительная ситуация).
catch

– блок, в котором происходит обработка исключительных ситуаций.
finally – блок финализации, выполняется вне зависимости произошла или нет обработка исключительной ситуации.
Обработка исключительных ситуацийКозьминых Н.М.try{… }catch(( ){… }finally{… }try (охраняемый блок) – блок, в котором возможна ошибка (исключительная

Слайд 4Классификация исключений
Козьминых Н.М.
Класс System.Exception (исключение) – базовый класс, от которого

наследуются все другие исключения.
В пространстве имён System определены исключения: ArgumentException,

ArgumentOutOfRangeException, ArithmeticException, DivideByZeroException, OverflowException.
В пространстве имен System.IO собраны классы исключений, связанных с проблемами ввода-вывода: DirectoryNotFoundException,
FileNotFoundException и др.
Классификация исключенийКозьминых Н.М.Класс System.Exception (исключение) – базовый класс, от которого наследуются все другие исключения.В пространстве имён System

Слайд 5Обработка исключений. Блок catch
Козьминых Н.М.
Класс исключения должен
относится к числу классов исключений,

в простейшем случае – к классу Exception.
Обработчиков может быть много,

но исключение захватывает лишь тот из них, кто стоит первым в списке проверки.
Первыми должны идти наиболее специализированные обработчики, далее – по мере возрастания универсальности.
Например, в начале должен идти обработчик исключения DivideByZeroException, а уже за ним – ArithmeticException.
Обработка исключений. Блок catchКозьминых Н.М.Класс исключения долженотносится к числу классов исключений, в простейшем случае – к классу

Слайд 6Обработка исключений. Блок finally
Козьминых Н.М.
Блок finally выполняется всегда, сразу после завершения

работы try-блока, как бы последний ни завершился
Блок try:
может завершиться нормально

и управление достигнет конца блока;
выполнение может прервано исключительной ситуацией;
управление может быть передано другому блоку из-за выполнения такого оператора, как return.

Обработка исключений. Блок finallyКозьминых Н.М.Блок finally выполняется всегда, сразу после завершения работы try-блока, как бы последний ни

Слайд 7Пример
Козьминых Н.М.
private void btn_Click(object sender, EventArgs e)
{
int a

= Convert.ToInt32(txtA.Text);
int b = Convert.ToInt32(txtB.Text);
btn.Text =

(a / b).ToString();
}
ПримерКозьминых Н.М.private void btn_Click(object sender, EventArgs e){  int a = Convert.ToInt32(txtA.Text);  int b = Convert.ToInt32(txtB.Text);

Слайд 8Пример
Козьминых Н.М.
private void btn_Click(object sender, EventArgs e)
{
try

{
int a = Convert.ToInt32(txtA.Text);

int b = Convert.ToInt32(txtB.Text);
button13.Text = (a / b).ToString();
}
catch
{
MessageBox.Show("Ошибка!");
}
}
ПримерКозьминых Н.М.private void btn_Click(object sender, EventArgs e){  try  {    int a =

Слайд 9Пример
Козьминых Н.М.
private void button13_Click(object sender, EventArgs e){
try {

int a = Convert.ToInt32(txtA.Text);

int b = Convert.ToInt32(txtB.Text);
button13.Text = (a / b).ToString();
}
catch (System.DivideByZeroException) {
MessageBox.Show("Ошибка: деление на ноль");
}
catch (System.FormatException) {
MessageBox.Show("Ошибка: Введите цифры");
}
}
ПримерКозьминых Н.М.private void button13_Click(object sender, EventArgs e){  try {    int a = Convert.ToInt32(txtA.Text);

Слайд 10Пример
Козьминых Н.М.
private void button13_Click(object sender, EventArgs e) {

int a, b;

try {
a = Convert.ToInt32(txtA.Text);
}catch (System.FormatException) {
MessageBox.Show("Значение А - введите число");
txtA.Focus();
return;
}
try{
b = Convert.ToInt32(txtB.Text);
}catch (System.FormatException){
MessageBox.Show("Значение B - введите число");
txtB.Focus();
return;
}
try{
button13.Text = (a / b).ToString();
}catch (System.DivideByZeroException){
MessageBox.Show("Ошибка: деление на ноль");
}
}
ПримерКозьминых Н.М. private void button13_Click(object sender, EventArgs e) {      int a, b;

Слайд 11Вопросы…

Спасибо за внимание
Козьминых Н.М.

Вопросы…Спасибо за вниманиеКозьминых Н.М.

Обратная связь

Если не удалось найти и скачать доклад-презентацию, Вы можете заказать его на нашем сайте. Мы постараемся найти нужный Вам материал и отправим по электронной почте. Не стесняйтесь обращаться к нам, если у вас возникли вопросы или пожелания:

Email: Нажмите что бы посмотреть 

Что такое TheSlide.ru?

Это сайт презентации, докладов, проектов в PowerPoint. Здесь удобно  хранить и делиться своими презентациями с другими пользователями.


Для правообладателей

Яндекс.Метрика