社区
Java SE
帖子详情
关于强制类型转换的问题
qiullll
2010-04-05 12:18:22
我知道可以将一个子类的引用赋给你个超类变量,那么讲一个超类的引用赋给你个子类变量的进行类型转换,假如有一个类是Employee类 他的子类是Manager,而staff[1]是Employee的对象变量,那么Manager boss=(Manager)staff[1]这样子可以吗?
...全文
149
9
打赏
收藏
关于强制类型转换的问题
我知道可以将一个子类的引用赋给你个超类变量,那么讲一个超类的引用赋给你个子类变量的进行类型转换,假如有一个类是Employee类 他的子类是Manager,而staff[1]是Employee的对象变量,那么Manager boss=(Manager)staff[1]这样子可以吗?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
9 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
duyu1025
2010-04-06
打赏
举报
回复
在向上转型的时候就把子类与父类不同的成员变量和方法就隐藏了
SambaGao
2010-04-06
打赏
举报
回复
像这样的题就好用泛型
Trinx
2010-04-05
打赏
举报
回复
编译都无法通过的,除非staff[1]这东西本来就指向的是子类,然后你再次向上转型让它指向了父类,这样的话就可以用你的那句话Manager boss=(Manager)staff[1]再次向下强转为子类。
Trinx
2010-04-05
打赏
举报
回复
这个真不行!
zhongyucai
2010-04-05
打赏
举报
回复
用父类应用指向子类对象这样就可以.....................
soft200816
2010-04-05
打赏
举报
回复
不用强制类型转换,多态的知识,子类是父类的类型!
无聊司马
2010-04-05
打赏
举报
回复
三楼说的很有道理
tcm441224375
2010-04-05
打赏
举报
回复
不可以将一个超类的引用强制转为子类引用
qybao
2010-04-05
打赏
举报
回复
[Quote=引用楼主 qiullll 的回复:]
我知道可以将一个子类的引用赋给你个超类变量,那么讲一个超类的引用赋给你个子类变量的进行类型转换,假如有一个类是Employee类 他的子类是Manager,而staff[1]是Employee的对象变量,那么Manager boss=(Manager)staff[1]这样子可以吗?
[/Quote]
这个要具体情况具体分析
如果你的staff[1]指向的是一个Manager的引用,那么是可以的
如果你的staff[1]指向的是一个Employee的引用,那么是不可以的
用代码简单说明
Employee[] staff = new Employee[2];
staff[0] = new Employee(); //这个是不能强行转为Manager的,因为staff[0]指向的是Employee引用
staff[1] = new Manager(); //这个是可以转为Manager的,因为staff[1]指向的是Manager引用
如果你不知道staff[1]指向的是什么引用,可以加个if判断
如
if (staff[1] instance of Manager) {
Manager boss=(Manager)staff[1]
}
关于Java中
强制类型转换
的
问题
为了更好的理解我们先看下面的例子: package com.yonyou.test; import java.util.ArrayList; import java.util.Iterator; import java.util.List; /** * 测试类 * @author 小浩 * @创建日期 2015-3-2 */ public c...
C语言
强制类型转换
小
问题
想必很多同学都在C语言中使用过
强制类型转换
,不知道有没有碰到什么
问题
。如果谨慎使用
强制类型转换
,大多数时候都不会出错。当然,前提是对C语言的内存布局比较熟悉,否则有时候看着语法和逻辑都没有
问题
,却有可能出现意想不到的
问题
。 看下面这段代码,猜猜输出结果是什么: 1 #include <stdio.h> 2 3 void *a = 0; 4 5 void set(void *p) { 6 a = p; 7 printf("a has
強制類型轉換的問題
強制類型轉換的問題,謝謝 在C中不同類型的結構體之間可以強制類型轉換嗎?看的一些程序中這樣用過。 在C++中不同的類之間也是,很困惑。我以前的理解,類型只是用來標識如何獨取變量名所對應的一段內存,可是內存分配的多少都不一樣?? 還有的傳遞參數時把一個對像o,做int(o)的強制類型轉換???請高手指點一些, 給點提示讓我去理解也好。強制類型轉換的問題,謝謝可以強制轉換。我看過GTK+
关于指针
强制类型转换
问题
https://www.cnblogs.com/chanabi/p/9228998.html
Android Context与接口的
强制类型转换
问题
昨天在开发过程中遇到一个
问题
,困扰了很长时间,并且直到现在
Java SE
62,621
社区成员
307,251
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章