设置jb里面的字体为新宋体
还有设置display中不要选blod选项

解决方案 »

  1.   

    如果父类使用了带有参数的构造函数,在子类的构造函数中的第一行加上一句super(参数),显式调用父类的构造函数,这样做是因为java在构造子类时,会自动调用父类的构造函数,但是现在有参数,java不可能参数也跟你自动生成了,所以必须显式调用,关于这一点,thinking in java中有详细说明
      

  2.   

    回楼上的,你说的我也明白,可是这里是是继承自内嵌类Bye.Sa,我是想问,如果类Bye.Sa也有构造函数,我应该怎样做呢,能不能就上面的代码写出结果呢,谢谢!!!!谢谢!!!!
      

  3.   

    class Bye {
      class Sa {
        Sa() { 
          System.out.println("Sa Constructor");
        }
        
        Sa(String s) {
          System.out.println("Sa Constructor with name "+s);
        }
      }
    }class Ok extends Bye.Sa {
      Ok(Bye b) {
       //Call constructor Without name
       b.super();
      }  Ok(Bye b,String name) {
       //Call constructor with name
       b.super(name);
      }
    }public class MyClass {
      public static void main(String[] args) {
        Bye b = new Bye();
        Ok o = new Ok(b);
        Ok k = new Ok(b,"hehe");
      }
    }
      

  4.   

    我怎么有点看不懂了,b.super()是什么意思?不知道诸位写的程序有没有编译过?
      

  5.   

    b.super() == new java.lang.Object();把Sa改称static class,因为只有得到一个Sa的实例才能将其作为某个OK.super,进行构造。如果没有static,要得到一个Sa的实例就必须先new 一个Bye,因此你在OK里面直接super()而没有new Bye是的不到SA的public class Test {
    static class Inner{
    Inner(){
    System.out.println("Inner");
    }
    }

    public static void main(String[] args){
    new A();
    }
    }class A extends Test.Inner{
      A(){
    super();
    System.out.println("A");
    }
    }输出:
    Inner
    A
      

  6.   

    b.super() == new java.lang.Object();???
    我认为b.super()的作用是调用了Bye类的内嵌类Sa的构建器。