diff --git a/task01/src/com/example/task01/Task01Main.java b/task01/src/com/example/task01/Task01Main.java index 9328b4bb..cdc5705c 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 hello = null; + hello.toString(); } } diff --git a/task02/src/com/example/task02/Task02Main.java b/task02/src/com/example/task02/Task02Main.java index acc0aeff..48a4dab7 100644 --- a/task02/src/com/example/task02/Task02Main.java +++ b/task02/src/com/example/task02/Task02Main.java @@ -3,14 +3,21 @@ public class Task02Main { public static void main(String[] args) { - //здесь вы можете вручную протестировать ваше решение, вызывая реализуемый метод и смотря результат - // например вот так: - /* + System.out.println(getSeason(-5)); - */ } static String getSeason(int monthNumber) { - return "";//todo напишите здесь свою корректную реализацию этого метода, вместо существующей + if (monthNumber >= 3 && monthNumber <= 5) {return "весна";} + else if ((monthNumber >= 6 && monthNumber <= 8)) { return "лето";} + else if ((monthNumber >= 9 && monthNumber <= 11)) { return "осень";} + else if (monthNumber == 12 || monthNumber == 1 || monthNumber == 2 ) { return "зима";} + else { + throw new IllegalArgumentException(String.format("monthNumber %d 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..59062769 100644 --- a/task03/src/com/example/task03/Task03Main.java +++ b/task03/src/com/example/task03/Task03Main.java @@ -1,16 +1,14 @@ package com.example.task03; public class Task03Main { - public static void main(String[] args) { - //здесь вы можете вручную протестировать ваше решение, вызывая реализуемый метод и смотря результат - // например вот так: - /* + public static void main(String[] args) throws Exception { throwCheckedException(); - */ + } //todo напишите здесь свою корректную реализацию задания - public static void throwCheckedException() { + public static void throwCheckedException() throws Exception { + throw new Exception("checkedException"); } } \ 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..e7e34c27 --- /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..5e1a50a9 100644 --- a/task04/src/com/example/task04/Task04Main.java +++ b/task04/src/com/example/task04/Task04Main.java @@ -11,7 +11,16 @@ public static void main(String[] args) { } static String getSeason(int monthNumber) { - return "";//todo напишите здесь свою корректную реализацию этого метода, вместо существующей + if (monthNumber >= 3 && monthNumber <= 5) {return "весна";} + else if ((monthNumber >= 6 && monthNumber <= 8)) { return "лето";} + else if ((monthNumber >= 9 && monthNumber <= 11)) { return "осень";} + else if (monthNumber == 12 || monthNumber == 1 || monthNumber == 2 ) { return "зима";} + else { + throw new MyException(String.format("monthNumber %d 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..59a46069 100644 --- a/task05/src/com/example/task05/Task05Main.java +++ b/task05/src/com/example/task05/Task05Main.java @@ -1,21 +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" + try { + String s = readFile(pathToFile); + System.out.println(s); + }catch (FileNotFoundException e){ + System.out.printf("файл \"%s\" не найден\n", pathToFile); + }catch (IOException e){ + System.out.printf("произошла ошибка при чтении файла \"%s\"", pathToFile); + } - String s = readFile(pathToFile); - System.out.println(s); } public static String readFile(String pathToFile) throws IOException { FileReader fileReader = new FileReader(pathToFile); BufferedReader bufferedReader = new BufferedReader(fileReader); - StringBuilder stringBuilder = new StringBuilder(); String currentLine; while ((currentLine = bufferedReader.readLine()) != null) { @@ -23,7 +29,6 @@ public static String readFile(String pathToFile) throws IOException { stringBuilder.append("\n"); } bufferedReader.close(); - 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..659bcb9e 100644 --- a/task06/src/com/example/task06/Task06Main.java +++ b/task06/src/com/example/task06/Task06Main.java @@ -2,15 +2,14 @@ public class Task06Main { public static void main(String[] args) { - //здесь вы можете вручную протестировать ваше решение, вызывая реализуемый метод и смотря результат - // например вот так: - /* + new Task06Main().printMethodName(); - */ } void printMethodName() { - //todo напишите здесь свою корректную реализацию этого метода, вместо существующей + StackTraceElement[] stackTrace = Thread.currentThread().getStackTrace(); + String methodName = stackTrace[2].getMethodName(); + System.out.print(methodName); } } \ 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..4c072f0a 100644 --- a/task07/src/com/example/task07/Task07Main.java +++ b/task07/src/com/example/task07/Task07Main.java @@ -12,13 +12,15 @@ public static void main(String[] args) { public Processor processor; public String getExceptionType() { - //todo напишите здесь свою корректную реализацию этого метода, вместо существующей + try { - processor.process(); //todo вы можете заменить реализацию этого метода для ручного дебага + processor.process(); + return NONE; + } catch (RuntimeException e){ + return UNCHECKED; } catch (Exception e) { - + return CHECKED; } - return null; } } \ No newline at end of file