java类实现接口后,重写了接口中的方法,在创建新的类对象后,会直接调用重写后的接口中的方法吗?
程序:packagecom.lzw;importjava.awt.*;importjavax.swing.*;publicclassDrawIconimplementsI...
程序:package com.lzw;import java.awt.*;import javax.swing.*;public class DrawIcon implements Icon { // 实现Icon接口 private int width; // 声明图标的宽 private int height; // 声明图标的长 public int getIconHeight() { // 实现getIconHeight()方法 return this.height; } public int getIconWidth() { // 实现getIconWidth()方法 return this.width; } public DrawIcon(int width, int height) { // 定义构造方法 this.width = width; this.height = height; } // 实现paintIcon()方法 public void paintIcon(Component arg0, Graphics arg1, int x, int y) { arg1.fillOval(x, y, width, height); // 绘制一个圆形 } public static void main(String[] args) { DrawIcon icon = new DrawIcon(15, 15); // 创建一个标签,并设置标签上的文字在标签正中间 JLabel j = new JLabel("测试", icon, SwingConstants.CENTER); JFrame jf = new JFrame(); // 创建一个JFrame窗口 Container c = jf.getContentPane(); c.add(j); jf.setSize(1000,1000); jf.setVisible(true); jf.setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE); }}程序中没有运行icon.paintIcon();方法的语句,但是后面”JLabel j = new JLabel("测试", icon, SwingConstants.CENTER);“中,直接调用了icon,而且程序结果也直接绘出了圆形图标,那么这里是在实例化DrawIcon类对象icon之后,系统默认直接调用了类中重写的接口中paintIcon();方法吗?有点理解不了这块呀,我是java新手,若是知识有漏洞,希望大神们可以批评指正啊,小弟不胜感激!
展开
1个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询