【Java】数组的一个问题

[b]只为了提醒自己,写得不好的话,大家轻点儿拍[/b]


定义了两个类,一个是Color,另一个是Red,Red继承了Color

现在有如下操作:
Color[] c = new Color[2];
c = new Red[2];
c[0] = new Color;

运行时就会出错,为什么呢?
可以这样理解
Color[] c = new Color[2];   //一车人从南京去上海,要路过常州
c = new Red[2]; //现在改变主意了,车只到常州,所以所有人都只能到常州
c[0] = new Color() ; //有一个人坚持要去上海,那可不行,车子只开到常州


如果这样写就没有问题
Color[] c = new Color[2];
c = new Red[2];
c[0] = new Red(); //要去常州,可以


但是,若有人执意还是要去上海怎么办呢,这个时候只能让车子的目标是上海啊
于是可以这样写
Color[] c = new Color[2];
c[0] = new Color();
c[1] = new Red(); //车路过常州,要去常州啊,也可以

这样就可以满足不同人的不同需求了
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值