Никак не разберусь, как правильно оформить выбрасывание требуемого исключения. try catch оборачивал . Подскажите пожалуйста.
package com.javarush.task.task22.task2202;
/*
Найти подстроку
*/
import java.util.TooManyListenersException;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Solution {
public static void main(String[] args) throws TooManyListenersException {
System.out.println(getPartOfString("JavaRush - лучший сервис обучения Java."));
}
public static String getPartOfString(String string) throws TooManyListenersException {
if (string == null) {
throw new TooShortStringException();
}
int start = 0;
int end = 0;
Pattern pattern = Pattern.compile("(\\s[^\\s.]+){4}");
Matcher matcher = pattern.matcher(string);
if (matcher.find()) {
start = matcher.start();
end = matcher.end();
} else {
throw new TooManyListenersException();
}
return string.substring(start+1,end);
}
public static class TooShortStringException extends RuntimeException {
public TooShortStringException(String message) {
super(message);
}
public TooShortStringException() {
}
}
}