Я новичок в Java, поэтому, пожалуйста, несите меня, если это самая глупая вещь, которую вы когда-либо слышали.Получение методов из другого класса в Java
Итак, в основном я создаю форму на Java. Когда он отправлен, он проверяется, и если есть ошибка, я хочу, чтобы конкретный элемент формы стал красным. Я сумел сделать это с помощью вызова метода setAsError()
public void setAsError(){
this.setBackground(new Color(230,180,180));
}
Но проблема в том, что моя форма элементов (Включает в себя текстовые поля, выпадающие списки и другие классы свинг) уже расширяет компоненты Java.
public class KComboBox extends JComboBox {
public KComboBox(String[] s){
super(s);
//There's other stuff in here too
}
Я хочу добавить метод setAsError() в свои элементы формы. Я понимаю, что я мог бы индивидуально добавить метод ко всем необходимым классам, но это кажется немного странным для программирования OO.
В любом случае, конечный результат должен быть, когда я
myFormItem.setAsError()
поле должно покраснеть.
Любая помощь будет оценена, и спасибо заранее.
Попытайтесь избежать 'instanceof' –
@MaximShoustin, тогда OP придется прибегать к' getClass(). GetName() ':) –
Это кажется интересным, никогда не видел ответа, подобного этому при поиске. Быстрый вопрос, хотя в этом решении, в какой класс будет идти метод setAsError()? Я хотел бы сделать это таким образом, чтобы дубликатов не было. –