24 关于自动类型转换以及向上转型的一点思考

  • 自动类型转换: 基本类型
  • 向上转型: 多态

我学习的时候,对于自动类型转换很容易理解。但是对于向上转型总得思索一番。

我看很多视频提供了一个依靠自动类型转换来方便记忆的办法:

double a = 30;// a=30.0,自动发生
所以:
Fu f = new Zi(); // 自动发生。

他们将 Fu f 类比于 double a
new Zi() 类比于 int 30

我思索了一下,总觉得有点问题。

double a是double 类型,比int 类型范围要大的多。
但是
父类 f 要比 子类 范围大的多吗?

可我明显感觉子类要比范围父类范围更广啊。

父类能做的,我们东厂可以做。不对,我们子类可以做。
父类不能做的,我们子类也可以做。
同理:
int 能做的,我们double可以做。
int 不能做的,我们double也可以做。

所以,感觉double 更像 子类!!!

因此我觉得这个类比是有问题的。

那应该怎么从感性上去理解 Fu f = new Zi();呢?

我自己想了想,觉得子类就是对父类的一种 继承、实现、改进

就像一种程序,一开始是1.0版本,而后是2.0版本。

从2.0回退到1.0很简单。

但是从1.0到2.0要经过很多努力。。

简单的自动发生,要努力的自然需要人为的干预,也就是强转。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值