阅读、编译、运行下面的程序,正确的选项是( ). public class Test { public static void main (String[] args){ Test a=new Test(); a.method(8); a.method(8f); } void method(double i) { System.out.println("double: "+i); } void method(int i) { System.out.println("int: "+i); } } A. 程序有编译错误,因为两个method()方法必须定义为静态(static)的。 B. 程序可以编译运行,输出结果为: int: 8 double: 8.0 C. 程序可以编译运行,输出结果为: int: 8 float: 8.0 D. 程序中定义的两个参数不同的method方法称为方法重栽。