Я работаю над домашним заданием, которое просит меня исследовать java api, для которого класс наследуется классом JFrame, который объявляет метод setVisible. Затем импортируйте этот класс и измените код в основном методе, поэтому переменная фрейма объявляется как этот тип, а не тип JFrame.Java Homework using inheritence
Я нашел, какой класс объявляет метод setVisible, JWindow, но в любое время я пытаюсь изменить код, который он не будет запускать, поэтому любая помощь будет оценена.
import javax.swing.JFrame;
import javax.swing.JWindow;
//JFrame is inherited from java.awt.Frame class
//setVisible is declared by the java.awt.Window class
public class ProductFrame extends JWindow
{
public ProductFrame()
{
// all of these methods are available because
// they are inherited from the JFrame class
// and its superclasses
this.setTitle("Product");
this.setSize(200, 200);
this.setLocation(10, 10);
this.setResizable(false);
// this method uses a field that's available
// because it's inherited
this.setDefaultCloseOperation(EXIT_ON_CLOSE);
}
public static void main(String[] args)
{
// this creates an instance of the ProductFrame
JWindow frame = new ProductFrame();
// this displays the frame
frame.setVisible(true);
}
}
Ваш вопрос очень расплывчатый и неясный для меня. может быть только я? !!! –
Извините, я не пытался расплыться. Возможно, учебник, из которого я получил его, является неопределенным lol, который я пытаюсь изменить, расширяет JFrame до JWindow и все еще работает нормально. – Mike
Если вы посмотрите на JavaDocs для ['JWindow'] (https://docs.oracle.com/javase/7/docs/api/javax/swing/JWindow.html), вы обнаружите, что' setDefaultCloseOperation' является не декальцированные внутри него. Это объявлено 'JFrame' напрямую – MadProgrammer