JLabel jlTempRight = new JLabel() ;
jpOneLayer.add(jlTempRight, BorderLayout.EAST) ;

JLabel jlWelcomeToFont = new JLabel(){
public void setText(String text) {
super.setText("欢迎进入在线销售系统");
}
// Font font = new Font("华文彩云",Font.PLAIN,50) ;
// public void setFont(Font font) {
// super.setFont(font);
// }
// public void setFont(new Font("华文彩云",Font.PLAIN,50)){}; } ;这个代码,我有3个问题:1、这是个错误的代码,这里的public void setFont(new Font("华文彩云",Font.PLAIN,50)){};这一步有错,请问错在哪?
2、我之前写Font font = new Font("华文彩云",Font.PLAIN,50)这一步,然后setFont(font),结果发现setFont()里传不进font,为什么?怎么改?
3、关于内部类的,类在实例化时就是初始化构造函数,那么此处,在定义内部类之时,会不会实例化(即初始化构造函数)?

解决方案 »

  1.   

    new了就肯定会实例化,不管是内部类还是外部类,其实你说那么多没用,自己就不会试一下嘛?
      

  2.   

    第一个,去掉后面的大括号,第二个改成public void setFont(font);
      

  3.   


    第一个:去掉大括号好像不行吧?因为本来就是方法,{}是方法体!我试了,去掉了果断报错
    第二个:我之前就是先Font font = new Font("华文彩云",Font.PLAIN,50),再
    public void setFont(Font font) 

                    super.setFont(font); 

    然后发现setFont接收不到font,才想到用public void setFont(new Font("华文彩云",Font.PLAIN,50)){};,结果发现这些句子都有错,才都注释掉了!怎么解决呢?
    我发现好多次写内部类都是这种错误!
    很纠结!
      

  4.   


    哎,兄弟,凉在我初学java的基础上,你就指点下,写点东西我看看吧,我真心的没明白啊!