自动转型与强制转型
自动转型
定义
在继承的基础上,子类中的对象类型会自动转变为父类中的对象类型
格式
父类类型 对象名 = new 子类类型();
实例:
定义了一个父类
public class People{
//声明人物的属性
private String name;
//声明人物的血量
private int xueliang;
//定义一个获取姓名属性值的方法
public void setName(String name){
//将参name的值赋给name
this.name=name;
}
//定义一个获取姓xueliang属性值的方法
public void setXueLiang(int xueliang){
//将参xueliang的值赋给xueliang
this.xueliang=xueliang;
}
//定义一个返回姓名属性的方法
public String getName(){
//返回姓名
return name;
}
//定义一个返回血量属性的方法
public int getXueLiang(){
//返回血量
return xueliang;
}
}
定义了一个子类
public class JianSheng extends People{
//声明剑圣的姓名属性
private String name;
//声明人物的血量
private int xueliang;
//定义一个获取属性值的方法
public void setName(String name,int xueliang){
//将参name的值赋给name
this.name=name;
//将参数xueliang的值赋给xueliang
this.xueliang = xueliang
}
}
测试函数
public class Main{
public static void main(String[] args){
//父类类型变量名来引用子类对象
People po = new JianSheng;
//调用方法
po.setName("jiansheng",120);
Systerm.out.print("名字是"+po.getName+",血量是"+po.getXueLiang);
}
输出结果:
名字是jiansheng,血量是120
}
由以上我们可以看出:
如果子类中重写类父类中的方法,那么优先调用子类中重写的方法,否则就调用父类中的方法;
注意:
自动转型只能是子类转型为父类,反之不行
自动转型的对象子类只能调用父类中的方法,不能调用子类中自己的方法
强制转型:
定义:
把一个类型强制转化成另一种类型
格式:
旧类型 旧对象名 = new 旧类型();
新的类型 新对象名 = (新的类型)旧对象名;
分享到:
相关推荐
向上转型(自动类型提升) 从子到父:父类引用指向子类的对象 父类 父类对象名 = new 子类(); 向下转型(强制类型转换) 从父到子:父类引用转为子类的对象 子类 子类对象名 = (子类)父类对象; 好处: 向上转型:...
4.2.1 使用C#的is和as操作符来转型 4.3 命名空间和程序集 4.4 运行时的相互联系 第5章 基元类型、引用类型和值类型 5.1 编程语言的基元类型 5.1.1 checked和unchecked基元类型操作 5.2 引用类型和值类型 5.3...
4.2.1 使用C#的is和as操作符来转型 4.3 命名空间和程序集 4.4 运行时的相互联系 第5章 基元类型、引用类型和值类型 5.1 编程语言的基元类型 5.1.1 checked和unchecked基元类型操作 5.2 引用类型和值类型 5.3 ...
4.2.1 使用C#的is和as操作符来转型 4.3 命名空间和程序集 4.4 运行时的相互联系 第5章 基元类型、引用类型和值类型 5.1 编程语言的基元类型 5.1.1 checked和unchecked基元类型操作 5.2 引用类型和值类型 5.3...
4.2.1 使用C#的is和as操作符来转型 4.3 命名空间和程序集 4.4 运行时的相互联系 第5章 基元类型、引用类型和值类型 5.1 编程语言的基元类型 5.1.1 checked和unchecked基元类型操作 5.2 引用类型和值类型 5.3...
文章目录继承常用的关键字this关键字static关键字super关键字final关键字封装及权限修饰符封装的作用及其优点权限修饰符封装的使用细节多态多态的概念多态的使用要点对象的转型instanceof运算符类型自动提升及强制...
向上转型是自动的。 •强制类型转换: 类型转换运算符是小括号,语法如下(type)variable; instanceof运算符 •前一个操作通常是一个引用类型的变量,后一个操作通常是一个类(也可以是接 口)。...
实例10 转型运算符 17 2.3 其他形式 18 实例11 常量与变量 18 实例12 各种进制的转换 19 实例13 Java中的进制与移位运算符 22 第3章 条件控制语句(教学视频:75分钟) 26 3.1 if控制语句 26 ...
实例10 转型运算符 17 2.3 其他形式 18 实例11 常量与变量 18 实例12 各种进制的转换 19 实例13 Java中的进制与移位运算符 22 第3章 条件控制语句(教学视频:75分钟) 26 3.1 if控制语句 26 实例14 判断输入的年份...
实例10 转型运算符 17 2.3 其他形式 18 实例11 常量与变量 18 实例12 各种进制的转换 19 实例13 Java中的进制与移位运算符 22 第3章 条件控制语句(教学视频:75分钟) 26 3.1 if控制语句...
实例10 转型运算符 17 2.3 其他形式 18 实例11 常量与变量 18 实例12 各种进制的转换 19 实例13 Java中的进制与移位运算符 22 第3章 条件控制语句(教学视频:75分钟) 26 3.1 if控制语句 26 实例14 判断输入的年份...
实例10 转型运算符 17 2.3 其他形式 18 实例11 常量与变量 18 实例12 各种进制的转换 19 实例13 Java中的进制与移位运算符 22 第3章 条件控制语句(教学视频:75分钟) 26 3.1 if控制语句 26 实例14 判断...
5个目标文件,演示Address EJB的实现,创建一个EJB测试客户端,得到名字上下文,查询jndi名,通过强制转型得到Home接口,getInitialContext()函数返回一个经过初始化的上下文,用client的getHome()函数调用Home接口...
并且E的自定义数据类型里小于4字节的成员会被扩展为4字节,以实现对齐如果结构像平时那样直接声明为结构时,E会自动把结构转换为C/C++中的标准的那种,但结构写为通用型时E只简单传递结构指针不做转换R_指针到数据_...
5个目标文件,演示Address EJB的实现,创建一个EJB测试客户端,得到名字上下文,查询jndi名,通过强制转型得到Home接口,getInitialContext()函数返回一个经过初始化的上下文,用client的getHome()函数调用Home接口...
5个目标文件,演示Address EJB的实现,创建一个EJB测试客户端,得到名字上下文,查询jndi名,通过强制转型得到Home接口,getInitialContext()函数返回一个经过初始化的上下文,用client的getHome()函数调用Home接口...
5个目标文件,演示Address EJB的实现,创建一个EJB测试客户端,得到名字上下文,查询jndi名,通过强制转型得到Home接口,getInitialContext()函数返回一个经过初始化的上下文,用client的getHome()函数调用Home接口...
5个目标文件,演示Address EJB的实现,创建一个EJB测试客户端,得到名字上下文,查询jndi名,通过强制转型得到Home接口,getInitialContext()函数返回一个经过初始化的上下文,用client的getHome()函数调用Home接口...