Как мы знаем в органе конструктора подкласса, родительский конструктор должен быть первым утверждением, в противном случае мы получаем ошибку времени компиляции, эта тема уже обсуждается здесь.
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
Проверьте условия в подклассе перед вызовом метода суперкласса ⇐ JAVA
Программисты JAVA общаются здесь
-
Anonymous
1759292719
Anonymous
Как мы знаем в органе конструктора подкласса, родительский конструктор должен быть первым утверждением, в противном случае мы получаем ошибку времени компиляции, эта тема уже обсуждается здесь.
Let's assume that calling the [b]parent constructor[/b] causes a heavy cost of system resources, In other hand in the [b]subclass constructor[/b] 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>
Подробнее здесь: [url]https://stackoverflow.com/questions/38381133/check-conditions-in-subclass-before-calling-superclass-constructor-method[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия