一 问:java匿名类调用局部变量原理
举例如下:
package com.rupeng.ooptest10;

public class Test3 {

public static void main(String[] args) {
    // TODO Auto-generated method stub
    final int i = Integer.parseInt("123");
    final String s = Integer.toString(4433);
    DiQiuRen d1 = new DiQiuRen() {

        @Override
        public void speak() {
            // TODO Auto-generated method stub
            System.out.println("我是匿名类" + i + s);
        }
    };

    d1.welcome();
    d1.speak();
}

}

//通过反编译,我们得知,原理上不是匿名类访问局部变量,而是匿名类定义了成员变量和有参构造函数,局部变量是以调用有参构造函数的形式传递的
// class Test3$1 extends DiQiuRen{
// int val$i;
// String val$s;
// Test3$1(int paramInt,String paramString){
// this.val$i=paramInt;
// this.val$s=paramString;
// }
// @Override
// public void speak() {
// // TODO Auto-generated method stub
// System.out.println("我是匿名类" + this.val$i + this.val$s);
// }
// }

二 问:为什么用 抽象类,接口
答:https://www.cnblogs.com/heyonggang/p/3142331.html

三 问:Java 接口和抽象类区别(写的很好,转了)
https://www.cnblogs.com/burns/p/4113527.html

四 问:java中的基本数据类型的转换
答:https://www.cnblogs.com/liujinhong/p/6005714.html java中的基本数据类型的转换
https://my.oschina.net/u/3746823/blog/1604259 Java基础——引用类型转换
https://www.cnblogs.com/lubocsu/p/5101022.html 存在继承关系的Java类对象之间的类型转换(一)
https://blog.csdn.net/zeephom/article/details/73496646 接口的强制转换
https://blog.csdn.net/weixin_37243717/article/details/78956781 java_Object、抽象类、接口、多态、类与类之间的转换

五 问:引用数据类型的强制类型转换、接口关系下的多态(可以看明白)
https://blog.csdn.net/qq_34944851/article/details/52939727

六 问:接口和多态+强制类型转换的概念---达内OOP第八天(接口和多态的总结)
https://blog.csdn.net/weixin_41216869/article/details/80746884