java中为什么会自动执行子类重写父类的方法?

问题:

1.在main方法中我没有调用paint方法,为什么它会自动被调用?
2.老师说这是多态,可是多态不是需要三个条件实现么?继承,重写方法,父类引用指向子类对象,这里没有第三点啊

代码如下:

public class GameFrame extends Frame{

public void launchFrame(){
setSize(500,500);
setLocation(100,100);
setVisible(true);
}

@Override
public void paint(Graphics g) {
g.drawLine(100,100,200,200);
g.fillRect(100, 100, 20, 20);
}

public static void main(String[] args) {
GameFrame gf=new GameFrame();
gf.launchFrame();
}

}

有的方法和接口就是这样设计的,重载,也是多态的一种,这样有更好的封装

这就是多态,父类中会执行paint,他会执行到具体的实现类里