黑马程序员-java中的类型转换

来源:互联网 发布:口袋打印机 知乎 编辑:程序博客网 时间:2024/06/01 16:35

------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------

按照类型划分分为:基本数据类型的转换以及应用数据类型的转换。

一,基本数据类型的转换

java中的基本类型转换有强制转换与自动转换之分,强制转换又称为显示转换,自动转换又称为隐式转换。

示例:数据类型的转换

byte b = 4;

byte a = 5;

int c =  a+5;//自动类型转换

byte d = (byte)b+3;//强制类型转换

                                                

虚线为强制类型转换(收缩转换),实线为自动转换(宽松转换)。

二,引用类型的转换

引用类型的强制类型转换,简单地说,就是把父类型转换为子类型,故又称为下溯造型。因为子类型比父类型的内涵要丰富,无非就是属性更多功能更强,所以要把父类型转换为子类型,需要强制,所以叫强制类型转换。那么,是不是只要是父类型的变量就可以转换为子类型呢?事实上不是,这里是有条件限制的。

举个例子来说,比如原来定义了两个类型,FatherClass和SonClass,然后构造了一个SonClass类型的对象,用一个FatherClass类型的变量father引用了,就像这样:

FatherClass father = new SonClass();

那么,需要将这个对象的类型还原的时候,就可以用这个表达式。

SonClass son = (SonClass)father;

引用类型的向上造型直接进行赋值操作即可完成

FatherClass father =new Fateherclass();

SonClass son =new SonClass();

Son = father;


0 0
原创粉丝点击