「java对象转型」java 对象转对象
本篇文章给大家谈谈java对象转型,以及java 对象转对象对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
java中对象转型
楼主可以去看看继承和多态,这里应该是多态的概念
你可以去看看这里,我觉得他写的不错
网页链接
关于java上转型对象
classHuman{
publicvoiddrink(){System.out.println("Human");}
}
classYongManextendsHuman{
publicvoiddrink(){System.out.println("YongMan");}}
}
publicclassTest{
publicstaticvoidmain(Stringarge[]){
Humane2=newYongMan();
e2.drink();
}
}
以上面这个程序为例子
Humane2=newYongMan();
这句其实是指父类对象e2是子类YongMan对象的上转型对象
上转型对象不能操作子类新增的成员变量(失掉了这部分属性);不能使用子类新增的方法(失掉了一些功能)。
上转型对象可以操作子类继承或者隐藏的成员变量,也可以使用子类继承的或者重写的方法。上转型对象操作子类继承或重写的方法,其作用等价于子类对象去调用这些方法。因此,如果子类重写了父类的某个方法,则当对象的上转型对象调用这个方法时一定是调用了这个重写的方法
上面的YongMan类中的drink()方法重写了父类的方法
所以最后的输出结果是YongMan
java中对象的向上向下转型在开发中用于实现什么功能
无论是上转还是下转都是为了让类的使用范围和适用范围发生变化,以便操作不同范围的变量或者方法。
1上转型是指将子类对象使用父类引用进行引用。
得:上转型对象可以操作和使用子类继承或者重写的方法。
失:上转型对象丧失了对子类新增成员变量或新增的方法的操作和使用。
2与向上转型相反,即是把父类对象转为子类对象:作用也与上转相反。
java
转型问题其实并不复杂,只要记住一句话:父类引用指向子类对象。子类和父类中定义同名的变量时,仅仅是隐藏了,变量没有多态性;而对于覆盖的方法,Java表现出多态性,会调用更具体的子类里面的方法,无论从哪里调用,无论使用什么引用类型调用。
怎么理解Java的转型对象
我来提供一个比较靠谱的详细的解释,假设,A类是B类的父类,当我们用子类创建一个对象,并把这个对象的引用放到父类的对象中时,比如A a;
A=new B();
或
A a;
B b=new B();
a=b;
称这个父类对象 a,是子类对象b的上转型对象。好比说“老虎是哺乳动物”。对象的上转型对象的实体是子类负责创建的,但上转型对象会失去原对象的一些属性和功能。上转型对象具有如下特点:
1 上转型对象不能操作子类新增的成员变量(失掉了这部分属性),不能使用子类新增的方法(失掉了一些功能)。
2 上转型对象可以操作子类继承或重写的成员变量,也可以使用子类继承的或重写的方法。
3 如果子类重写了父类的某个方法后,当对象的上转型对象调用这个方法时一定是调用了这个重写的方法。
关于java对象转型和java 对象转对象的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。
发布于:2022-11-22,除非注明,否则均为
原创文章,转载请注明出处。