• 2019.6.10 工作日志


    1.内部类的定义与使用

    No enclosing instance of type Outer is accessible. Must qualify the allocation with an enclosing instance of type Outer (e.g. x.new A() where x is an instance of Outer).

    这个报错是说当前没有封闭的实例可以应用,即当前的内部类是动态的,不能直接实例化。

    具体解决方法:https://blog.csdn.net/sunny2038/article/details/6926079/

    即:---------------------------------------------------------------------------------------------------

    public class Outer {
    private int x = 1;
    void sayHello(){
    System.out.println("Hello!");
    }

    class Inner
    {
    int y = 0;

      void test()
      {
        System.out.println(x);
        sayHello();
      }
    }

    }

    public static void main(String args[])
    {
      Outer test = new Outer();
      test.sayHello();

      Outer.Inner in = new Outer.Inner();//这种定义方法错误,因为上面的Inner类是public类的(省略不写类型名,即认定为public类)
      Outer.Inner in2 = test.new Inner();//这种方法可以,因为已经有了实例化的Outer类型test,可以通过test访问到Inner类
      in.test();
      in2.test();
    }

    2.内部类的三种使用方法

    https://www.cnblogs.com/mayj/p/7027699.html

    3.匿名内部类的示例

    abstract class SayHello
    {
      public abstract void hello();
    }

    public class Test{
      public void hello(SayHello sh){
      sh.hello();
    }

    public static void main(String args[]){
      Test t = new Test();
      t.hello(new SayHello(){
        public void hello()
        {
          System.out.println("Hello!");
        }
      });
    }
    }

  • 相关阅读:
    【总结整理】javascript的函数在if中调用时是否加括号---与.net的不同之处
    【总结整理】javascript的函数调用时是否加括号
    【总结整理】JavaScript的DOM事件学习(慕课网)
    关于overflow:hidden (转)
    CSS
    HTML
    jQuery
    函数
    装饰器
    python的条件与循环1
  • 原文地址:https://www.cnblogs.com/ContinueLearning/p/10997485.html
Copyright © 2020-2023  润新知