广州北大青鸟计算机职业培训学校
互联网技术培训、软件技术培训、大数据培训、云计算培训、数据分析培训信息网
当前位置:网站首页 > 软件教程 > Java技术 > 正文

惠州Java继承如何向上转换和向下转换?_北大青鸟IT学校

作者:邓华发布时间:2021-04-01分类:Java技术浏览:823


导读:相信这是每个学习Java的同学都会遇到的问题,Java继承如何向上转换和向下转换?下面我们一起来看看惠州北大青鸟老师是怎么回答的。

相信这是每个学习Java的同学都会遇到的问题,Java继承如何向上转换和向下转换?下面我们一起来看看惠州北大青鸟老师是怎么回答的。

现实世界中的“is-a”关系在软件中转化为继承类层次结构。

例如,Manager是特定类型的Employee。 Employee是一种特定类型的Object。

当您在继承层次结构中向上移动时,将从特定类型移动到更一般的类型。

从子类到超类的赋值称为上转换,它在Java中始终允许。

class Employee {  private String name = "Unknown";  public void setName(String name) {
   this.name = name;
 }  public String getName() {    return name;
 }
}class Manager extends Employee {
}public class Main {  public static void printName(Employee emp) {
   String name = emp.getName();
   System.out.println(name);
 }  
 public static void main(String[] args) {
   Employee emp = new Employee();
   emp.setName("Tom");

   Manager mgr = new Manager();
   mgr.setName("Jack"); // Inheritance of setName() at work
   // Print names    printName(emp);
   printName(mgr); // Upcasting at work  }
}

为子类变量分配超类引用称为向下转换。

向下转换与向上转换相反。

在向上转换中,赋值向上移动类层次结构,而在向下转换中,赋值向下移动类层次结构。

我们必须在向下转换中使用类型转换。

Manager mgr = (Manager)emp;  // OK. Downcast  at work

上面的代码生成以下结果。

Tom

Jack

想了解更多关于Java的资讯吗?可以来惠州北大青鸟新方舟校区了解一下。

Java17.jpg

Java

标签:惠州计算机JAVA软件开发惠州计算机Java软件开发惠州计算机JAVA培训惠州计算机JAVA软件开发学校惠州计算机Java软件开发培训JAVAJava软件开发北大青鸟IT计算机学校北大青鸟IT软件学校北大青鸟IT学校


Java技术排行
标签列表
网站分类
文章归档
最近发表