diff --git a/task01/src/com/example/task01/Task01Main.java b/task01/src/com/example/task01/Task01Main.java index 9328b4bb..c261302b 100644 --- a/task01/src/com/example/task01/Task01Main.java +++ b/task01/src/com/example/task01/Task01Main.java @@ -2,14 +2,13 @@ public class Task01Main { public static void main(String[] args) { - //здесь вы можете вручную протестировать ваше решение, вызывая реализуемый метод и смотря результат - // например вот так: - /* + codeWithNPE(); - */ + } static void codeWithNPE() { - //todo напишите здесь свою корректную реализацию этого метода, вместо существующей + Object someObject = null; + someObject.toString(); } } diff --git a/task02/src/com/example/task02/Task02Main.java b/task02/src/com/example/task02/Task02Main.java index acc0aeff..dd5f8de5 100644 --- a/task02/src/com/example/task02/Task02Main.java +++ b/task02/src/com/example/task02/Task02Main.java @@ -11,6 +11,18 @@ public static void main(String[] args) { } static String getSeason(int monthNumber) { - return "";//todo напишите здесь свою корректную реализацию этого метода, вместо существующей + if (monthNumber <= 0 || monthNumber >= 13) { + throw new IllegalArgumentException("monthNumber " + monthNumber + " is invalid, month number should be between 1..12"); + } + + if (monthNumber >= 3 && monthNumber <= 5) { + return "весна"; + } else if (monthNumber >= 6 && monthNumber <= 8) { + return "лето"; + } else if (monthNumber >= 9 && monthNumber <= 11) { + return "осень"; + } else { + return "зима"; + } } } \ 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..b08941a4 100644 --- a/task03/src/com/example/task03/Task03Main.java +++ b/task03/src/com/example/task03/Task03Main.java @@ -1,5 +1,5 @@ package com.example.task03; - +import java.io.IOException; public class Task03Main { public static void main(String[] args) { //здесь вы можете вручную протестировать ваше решение, вызывая реализуемый метод и смотря результат @@ -10,7 +10,8 @@ public static void main(String[] args) { } //todo напишите здесь свою корректную реализацию задания - public static void throwCheckedException() { + public static void throwCheckedException() throws IOException { + throw new IOException("Сhecked 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..c7070729 --- /dev/null +++ b/task04/src/com/example/task04/MyException.java @@ -0,0 +1,11 @@ +package com.example.task04; + +public class MyException extends IllegalArgumentException{ + public MyException(String message){ + super(message); + } + + public MyException(String message, Throwable cause){ + super(message, cause); + } +} diff --git a/task04/src/com/example/task04/Task04Main.java b/task04/src/com/example/task04/Task04Main.java index f6eae8d8..ea598fe0 100644 --- a/task04/src/com/example/task04/Task04Main.java +++ b/task04/src/com/example/task04/Task04Main.java @@ -11,7 +11,19 @@ public static void main(String[] args) { } static String getSeason(int monthNumber) { - return "";//todo напишите здесь свою корректную реализацию этого метода, вместо существующей + if (monthNumber <= 0 || monthNumber >= 13) { + throw new MyException("monthNumber " + monthNumber + " is invalid, month number should be between 1..12"); + } + + if (monthNumber >= 3 && monthNumber <= 5) { + return "весна"; + } else if (monthNumber >= 6 && monthNumber <= 8) { + return "лето"; + } else if (monthNumber >= 9 && monthNumber <= 11) { + return "осень"; + } else { + return "зима"; + } } } \ 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..33f14d6a 100644 --- a/task05/src/com/example/task05/Task05Main.java +++ b/task05/src/com/example/task05/Task05Main.java @@ -1,15 +1,21 @@ 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.out.println("файл \"" + pathToFile + "\" не найден"); + } catch (IOException e) { + System.out.println("произошла ошибка при чтении файла \"" + pathToFile + "\""); + } } public static String readFile(String pathToFile) throws IOException { @@ -26,4 +32,5 @@ public static String readFile(String pathToFile) throws IOException { return stringBuilder.toString(); } + } \ No newline at end of file diff --git a/task06/src/com/example/task06/Task06Main.java b/task06/src/com/example/task06/Task06Main.java index ebb26d82..65f6dff0 100644 --- a/task06/src/com/example/task06/Task06Main.java +++ b/task06/src/com/example/task06/Task06Main.java @@ -10,7 +10,9 @@ public static void main(String[] args) { } void printMethodName() { - //todo напишите здесь свою корректную реализацию этого метода, вместо существующей + Exception ex = new Exception(""); + StackTraceElement[] el = ex.getStackTrace(); + System.out.print(el[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..76e9edae 100644 --- a/task07/src/com/example/task07/Task07Main.java +++ b/task07/src/com/example/task07/Task07Main.java @@ -15,10 +15,13 @@ public String getExceptionType() { //todo напишите здесь свою корректную реализацию этого метода, вместо существующей try { processor.process(); //todo вы можете заменить реализацию этого метода для ручного дебага - } catch (Exception e) { - + } catch (RuntimeException e) { + return UNCHECKED; + } + catch (Exception e) { + return CHECKED; } - return null; + return NONE; } } \ No newline at end of file