Java 了解抽绳的工作原理
给定以下代码:Java 了解抽绳的工作原理,java,methods,graphics,abstract,Java,Methods,Graphics,Abstract,给定以下代码: import javax.swing.*; import java.awt.*; public class NewClass extends JPanel { public void paintComponent(Graphics g) { g.drawLine(0, 0, 90, 90); } public static void main(String[] args) { JFrame jf = new JFrame
import javax.swing.*;
import java.awt.*;
public class NewClass extends JPanel {
public void paintComponent(Graphics g) {
g.drawLine(0, 0, 90, 90);
}
public static void main(String[] args) {
JFrame jf = new JFrame();
jf.add(new NewClass());
jf.setSize(500, 500);
jf.setVisible(true);
}
}
如果方法drawLine
是抽象的,并且正如我所理解的,抽象方法没有定义,那么它为什么要画一条线呢
提前谢谢你 paintComponent()
获取Graphics
的非抽象子类,该子类实现了drawLine()
。它必须得到一个非抽象的子类,因为抽象类不能被实例化
public void paintComponent(Graphics g)
这里Graphics有抽象方法drawLine,它没有实现主体,但它的子类有drawLine的具体实现。调用paintComponent时,将传递相应的非抽象图形子类的对象,实际的实现代码将是特定于平台的,由于OOPS和多态性的魔力,我们可以轻松地使用它,而不必知道它的内部结构。1+它的多态性。实现该方法的某些子类将被传入代码>在
paintComponent(图形g)
方法中?只是想知道。