From 137db27fee1033f1808527e91a127444ea661031 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=AF?= Date: Fri, 7 Nov 2025 20:59:07 +0500 Subject: [PATCH] =?UTF-8?q?=D0=A8=D0=90=D0=A4=D0=B8=D0=BA=D0=BE=D0=B2=20?= =?UTF-8?q?=D0=BC=D0=BE=D0=B4=D1=83=D0=BB=D1=8C=206?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- task01/src/com/example/task01/Task01Main.java | 7 ++----- task02/src/com/example/task02/Task02Main.java | 7 ++++++- task03/src/com/example/task03/Task03Main.java | 13 +++++-------- task04/src/com/example/task04/MyException.java | 8 ++++++++ task04/src/com/example/task04/Task04Main.java | 7 ++++++- task05/src/com/example/task05/Task05Main.java | 17 +++++++++++++---- task06/src/com/example/task06/Task06Main.java | 7 ++++++- task07/src/com/example/task07/Task07Main.java | 12 ++++++++---- 8 files changed, 54 insertions(+), 24 deletions(-) create mode 100644 task04/src/com/example/task04/MyException.java diff --git a/task01/src/com/example/task01/Task01Main.java b/task01/src/com/example/task01/Task01Main.java index 9328b4bb..dcbf5d2a 100644 --- a/task01/src/com/example/task01/Task01Main.java +++ b/task01/src/com/example/task01/Task01Main.java @@ -2,14 +2,11 @@ public class Task01Main { public static void main(String[] args) { - //здесь вы можете вручную протестировать ваше решение, вызывая реализуемый метод и смотря результат - // например вот так: - /* codeWithNPE(); - */ } static void codeWithNPE() { - //todo напишите здесь свою корректную реализацию этого метода, вместо существующей + String nullString = null; + int nullStringExceptionLength = nullString.length(); } } diff --git a/task02/src/com/example/task02/Task02Main.java b/task02/src/com/example/task02/Task02Main.java index acc0aeff..e0faac3d 100644 --- a/task02/src/com/example/task02/Task02Main.java +++ b/task02/src/com/example/task02/Task02Main.java @@ -11,6 +11,11 @@ public static void main(String[] args) { } static String getSeason(int monthNumber) { - return "";//todo напишите здесь свою корректную реализацию этого метода, вместо существующей + if (monthNumber > 0 && (monthNumber < 3 || monthNumber == 12)) return "зима"; + else if(monthNumber >= 3 && monthNumber <= 5) return "весна"; + else if(monthNumber >= 6 && monthNumber <= 8) return "лето"; + else if(monthNumber >= 9 && monthNumber <= 11) return "осень"; + else throw new IllegalArgumentException( + String.format("monthNumber %s is invalid, month number should be between 1..12",monthNumber)); } } \ No newline at end of file diff --git a/task03/src/com/example/task03/Task03Main.java b/task03/src/com/example/task03/Task03Main.java index 47c4c416..58d25ed7 100644 --- a/task03/src/com/example/task03/Task03Main.java +++ b/task03/src/com/example/task03/Task03Main.java @@ -1,16 +1,13 @@ package com.example.task03; +import java.io.FileReader; +import java.io.IOException; + public class Task03Main { public static void main(String[] args) { - //здесь вы можете вручную протестировать ваше решение, вызывая реализуемый метод и смотря результат - // например вот так: - /* - throwCheckedException(); - */ } - //todo напишите здесь свою корректную реализацию задания - public static void throwCheckedException() { - + public static void throwCheckedException() throws IOException { + throw new IOException("Thrown checked exception"); } } \ No newline at end of file diff --git a/task04/src/com/example/task04/MyException.java b/task04/src/com/example/task04/MyException.java new file mode 100644 index 00000000..2c0b05cf --- /dev/null +++ b/task04/src/com/example/task04/MyException.java @@ -0,0 +1,8 @@ +package com.example.task04; + +public class MyException extends IllegalArgumentException{ + + public MyException(String message){ + super(message); + } +} diff --git a/task04/src/com/example/task04/Task04Main.java b/task04/src/com/example/task04/Task04Main.java index f6eae8d8..c4edb690 100644 --- a/task04/src/com/example/task04/Task04Main.java +++ b/task04/src/com/example/task04/Task04Main.java @@ -11,7 +11,12 @@ public static void main(String[] args) { } static String getSeason(int monthNumber) { - return "";//todo напишите здесь свою корректную реализацию этого метода, вместо существующей + if (monthNumber > 0 && (monthNumber < 3 || monthNumber == 12)) return "зима"; + else if(monthNumber >= 3 && monthNumber <= 5) return "весна"; + else if(monthNumber >= 6 && monthNumber <= 8) return "лето"; + else if(monthNumber >= 9 && monthNumber <= 11) return "осень"; + else throw new MyException( + String.format("monthNumber %s is invalid, month number should be between 1..12",monthNumber)); } } \ No newline at end of file diff --git a/task05/src/com/example/task05/Task05Main.java b/task05/src/com/example/task05/Task05Main.java index 8b4f3202..4bfee781 100644 --- a/task05/src/com/example/task05/Task05Main.java +++ b/task05/src/com/example/task05/Task05Main.java @@ -1,18 +1,27 @@ package com.example.task05; import java.io.BufferedReader; +import java.io.FileNotFoundException; import java.io.FileReader; import java.io.IOException; public class Task05Main { - public static void main(String[] args) throws IOException { + public static void main(String[] args){ String pathToFile = args[0]; // "/home/user/file.txt" - String s = readFile(pathToFile); - System.out.println(s); + try { + String s = readFile(pathToFile); + System.out.println(s); + } + catch (FileNotFoundException e){ + System.err.println("файл " + pathToFile + " не найден"); + } + catch (IOException e) { + System.err.println("произошла ошибка при чтении файла " + pathToFile + " не найден"); + } } - public static String readFile(String pathToFile) throws IOException { + public static String readFile(String pathToFile) throws IOException{ FileReader fileReader = new FileReader(pathToFile); BufferedReader bufferedReader = new BufferedReader(fileReader); diff --git a/task06/src/com/example/task06/Task06Main.java b/task06/src/com/example/task06/Task06Main.java index ebb26d82..ad6b008d 100644 --- a/task06/src/com/example/task06/Task06Main.java +++ b/task06/src/com/example/task06/Task06Main.java @@ -10,7 +10,12 @@ public static void main(String[] args) { } void printMethodName() { - //todo напишите здесь свою корректную реализацию этого метода, вместо существующей + try{ + throw new Exception("e"); + } + catch(Exception e){ + System.out.print(e.getStackTrace()[1].getMethodName()); + } } } \ No newline at end of file diff --git a/task07/src/com/example/task07/Task07Main.java b/task07/src/com/example/task07/Task07Main.java index 5dbaf334..061875b5 100644 --- a/task07/src/com/example/task07/Task07Main.java +++ b/task07/src/com/example/task07/Task07Main.java @@ -12,13 +12,17 @@ public static void main(String[] args) { public Processor processor; public String getExceptionType() { - //todo напишите здесь свою корректную реализацию этого метода, вместо существующей + try { processor.process(); //todo вы можете заменить реализацию этого метода для ручного дебага - } catch (Exception e) { - } - return null; + catch (RuntimeException e) { + return UNCHECKED; + } + catch (Exception e) { + return CHECKED; + } + return NONE; } } \ No newline at end of file