zoukankan      html  css  js  c++  java
  • java中子类与基类变量间的赋值

    Java中子类与基类变量间的赋值

    子类对象可以直接赋给基类变量。

    基类对象要赋给子类对象变量,必须执行类型转换,

    其语法是:

    子类对象变量=(子类名)基类对象名;

    也不能乱转换。如果类型转换失败Java会抛出以下这种异常:

    ClassCastException

     

    package yanzheng;

    class Mammal{}

    class Dog extends Mammal {}

    class Cat extends Mammal{}

    public class TestCast

    {

    public static void main(String args[])

    {

    Mammal m;

    Dog d=new Dog();

    Cat c=new Cat();

    m=d;

    //d=m;

    d=(Dog)m;

    //d=c;

    c=(Cat)m;

    }

    }

    第一个:正确。子类可以为基类对象赋值。

    第二个:错误。将父类的m强制转换为子类的d

    第三个:第五个参考上面一开始的结论。

    第四个:不对。虽然都是继承于同一个父类,但依然是两个不同不同的子类,两个不同的子类不可以赋值。

  • 相关阅读:
    easypoi添加下拉预选值
    java启动项目字符编码和配置文件的字符编码问题
    leetcode
    leetcode
    leetcode
    leetcode
    事务的隔离级别- 极客时间()
    数据库的事务
    SQL中的视图(极客时间)
    SQL中的连接(极客时间)
  • 原文地址:https://www.cnblogs.com/diyunfei/p/4955153.html
Copyright © 2011-2022 走看看