Проверьте условия в подклассе перед вызовом метода суперклассаJAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Проверьте условия в подклассе перед вызовом метода суперкласса

Сообщение Anonymous »

Как мы знаем в органе конструктора подкласса, родительский конструктор должен быть первым утверждением, в противном случае мы получаем ошибку времени компиляции, эта тема уже обсуждается здесь.

Let's assume that calling the parent constructor causes a heavy cost of system resources, In other hand in the subclass constructor we need to check some conditions first, if the conditions are satisfied we're good to go through the parent constructor else there's no need to go further (let's say throw an exception):

class parent {
parent(Object blah) {
//Heavy resource consuming tasks
}
}

class child extends parent {
child(Object blah, boolean condition) {
if (!condition) throw new IllegalArgumentException("Condition not satisfied");
super(blah); //Compile error!
}
}
< /code>

Если у кого -то была такая же проблема, что мне любопытно, есть ли в любом случае, чтобы справиться с этой ситуацией, или я должен сначала позвонить родительскому конструктору, независимо от того, сколько ресурсов он тратит, а затем бросить исключение? < /p>

Подробнее здесь: https://stackoverflow.com/questions/383 ... tor-method
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»