【发布时间】:2011-08-08 16:30:22
【问题描述】:
谁能解释一下为什么下面代码中的最后一个赋值无效
ScjpTest 类扩展 BounceObject 实现 Bouncable{
static int ac = 5;
static char ab = 'd';
static int[] a = new int[]{1,2,3};
static int[] b = new int[]{1,2,3};
static char[] c = new char[]{'a','b'};
public static void main(String[] args){
a = b;
b = a;
ac = ab; //This is accepted
a = c; //This is rejected
}
}
编译器报错如下
ScjpTest.java:10: incompatible types
found : char[]
required: int[]
a = c;
^
1 error
以下也接受
class Animal{}
class Horse extends Animal{]
Animal[] animals = new Animal[2];
Horse[] horses = new Horses[2];
animals = horses;
为什么我不能将 char 数组分配给 int 数组?
【问题讨论】:
-
我假设您希望
class Horse extends Animal{}用于您的示例