日期:2014-05-20  浏览次数:20734 次

super的疑惑
public   class   RoundButton   extends   JButton   {
       
        public   RoundButton(String   label)   {
                super(label);//super在此是什么意思?

Dimension   size   =   getPreferredSize()
setPreferredSize(size);//这两句话不重复么?


------解决方案--------------------
super(label)//是调用父类(超类)的构造函数。
从方法名就看得出来,getPreferredSize()的作用是返回一个值;而setPreferredSize(size)的作用是设置一个值。明显是不一样的。

------解决方案--------------------
1.在带参数的构造函数中,子类是需要显式调用Super()方法调用父类构造函数,实行默认功能的。
2.一个是setter(),一个是getter()。字段的两种属性

------解决方案--------------------
楼主要好好看书补补基础了
------解决方案--------------------
super(label);//super在此是调用继承的JButton类,super的意思就是调用最接近父类的意思。
Dimension size = getPreferredSize()/*因为继承了JButton类。所以调用父类继承下来的 getPreferredSize()函数取得size的值,然后在复制给当前类的对象,就是一个封装的概念
setPreferredSize(size);//这两句话不重复么?

------解决方案--------------------
extends是不继承构造方法的.必须自己写代码!super(label);调用父类的的构造方法!