基于Java语言的面向接口的编程提议 V0.1

Java Interface-oriented Programming Initiative.

关于自动类型转换的说明:

通过指定返回值类的类对象,明确要获取的对象类型,一般应该为接口
或者指定ControlPanel类从而获取可动态调用的类对象控制面板
如果给定值是ControlPanel,仅当返回值为非java基本类型时返回ControlPanel对象,否则直接将返回值返回
也就是说,如果返回值类型是 java基本对象,不允许指定返回值是ControlPanel,否则一定会出强制类型转换异常(当返回值不是null的时候)
当指定返回值类型为null时不做任何类型转换
当返回值是null时,永远返回null,而不会再包装一个ControlPanel对象,即使指定了
说明:java基本对象是指 包名以java开头的类,或基本类型(byte int 数组 等)

关于指定混合参数类型表:

混合参数类型表是一个Object[],与java反射调用在指定参数类型不同,除了可以使用类对象来明确,还可以使用 类的字符串表示,如参数是一个 org.example.A,则可以使用 new Object[]{"org.example.A"};来指定
关于字符串指定类的特别说明:
虽然对于java标准类型不提倡使用字符串方式指定,但还是提供了便捷支持:
8种基本类型可以直接使用类型名,如 new Object[]{"int","byte"}
如果是数组,则可以直接在类名后加'[]'表示,如 new Object[]{"int[]","org.example.A[]"}
当然,对于上例,还是建议这样书写:new Object[]{int[].class,"org.example.A[]"}