引用类型
来源:互联网 发布:网络信息安全保障方案 编辑:程序博客网 时间:2024/04/19 08:03
引用类型转换:
1.向上类型转换(隐式/自动类型转换),是小类型到大类型的转换。
如:Dog dog=new Dog();Animal animal=dog;//正确,自动类型提升,向上类型转换
2.向下类型转换(强制类型转换),是大类型到小类型的转换(存在风险,溢出)
如:Dog dog1=(Dog)animal;//向下类型转换
3.instanceof运算符,来解决引用对象的类型,避免类型转换的安全性问题。如:
Dog dog=new Dog();
Animal animal=dog;
Cat cat=(Cat)animal;//编译时不会出错(按Cat类型进行编译),但运行时会报错,因为它开辟的是Dog类型的空间,而(无法将引用类型进行转换)无法将dog对象转换成Cat类型,并且此方法对程序的安全性有影响。此时应该利用instanceof和if语句结合使用,进行验证,以保证程序的安全性,如:
if(animal instanceof Cat){//判断animal类中是否包含Cat类型的元素,若包含则进行转换,instanceof返回值为布尔类型
Cat cat=(Cat)animal;}else{
System.out.println("无法进行类型转换");}
1.向上类型转换(隐式/自动类型转换),是小类型到大类型的转换。
如:Dog dog=new Dog();Animal animal=dog;//正确,自动类型提升,向上类型转换
2.向下类型转换(强制类型转换),是大类型到小类型的转换(存在风险,溢出)
如:Dog dog1=(Dog)animal;//向下类型转换
3.instanceof运算符,来解决引用对象的类型,避免类型转换的安全性问题。如:
Dog dog=new Dog();
Animal animal=dog;
Cat cat=(Cat)animal;//编译时不会出错(按Cat类型进行编译),但运行时会报错,因为它开辟的是Dog类型的空间,而(无法将引用类型进行转换)无法将dog对象转换成Cat类型,并且此方法对程序的安全性有影响。此时应该利用instanceof和if语句结合使用,进行验证,以保证程序的安全性,如:
if(animal instanceof Cat){//判断animal类中是否包含Cat类型的元素,若包含则进行转换,instanceof返回值为布尔类型
Cat cat=(Cat)animal;}else{
System.out.println("无法进行类型转换");}
0 0
- 引用类型
- 引用类型
- 引用类型
- 引用类型
- 引用类型
- 引用类型
- 引用类型
- 引用类型
- 引用类型
- 引用类型
- 引用类型
- 引用类型
- 引用类型
- 引用类型
- 引用类型
- 引用类型
- 引用类型
- 引用类型
- java代理模式代码
- Java容器集合类的区别用法
- 轻松把玩HttpClient之设置代理,可以访问FaceBook
- j2EE--基础2
- 常见排序算法及php实现代码
- 引用类型
- 实现强制下线功能
- 关于我的博客
- MySql数据库操作类
- Java集合容器全面分析
- mysql:day3--java访问数据库、CASE...WHEN、无关/相关子查询、表与表之间的关系
- 庖丁解牛之ScrollView
- 方法的重载
- Java中如何删除一个集合中的多个元素