Java 对象转型一.对象转型介绍1.一个基类引用类型变量可以“指向”其子类对象2.一个基类引用不可以访问其子类对象新增加成员(属性和方法)3.可以使用引用变量instanceof类名 来判断该引用型变量所“指向”对象是否属于该类或该类子类4.子类对象可以当作基类对象来使用称作向上转型,反之称为向下转型*对象转型分为两种:一种叫**向上转型(父类对象引用或者叫基类对象引用指向子
Java向上、向下转型作用一、向上转型这个是我们平时用最多,比如我们要定义某一个方法时候,经常使用一个抽象类(父类)或者接口作为参数把他们子类传递过去,在传递过程中,这个子类默认就是进行向上转型。下面通过三个类来描述这个转型变化。// 父类 public class Father { public void method(){ System.out.pri
转载 2023-12-24 09:47:00
52阅读
通常情况下,我们在创建对象时候,声明对象名称数据类型与创建对象数据类型是一致,例如:A a=new A();这里A代表一个类型,但有些时候我们用一个父类声明对象名称,而用子类去创建对象,即用一个父类引用一个子类类型对象,例如:A a=new B();//A为父类,B为子类 或者 A a;//a引用上转型对象 B b=new B(); a=b;上转型对象:是一种“特殊类型(功能受限制)”
转载 2023-12-14 20:09:56
50阅读
一、前言        java标准库中,最早提供了两种处理日期和时间类,但是由于很多问题,很多方法都已经弃用了,在JAVA8中引入了java.time包,解决了长久以来存在诸多弊端。java原本自带java.util.Date和java.util.Calendar类,实际上这两种类会有线程不安全风险。二、jdk8之前api一、java.lang.
转型对象特征:(1)上转型队形不能操作子类新增成员字段和成员方法。(2)上转型对象能使用父类被继承或重写成员方法,被继承或隐藏成员变量。(3)如果子类重写了父类方法,则上转型对象掉用该方法时一定是重写后方法(多态性)。(4)如果子类重新定义了父类同名字段,则上转型对象访问该字段时必定是父类本身字段,而不是子类定义字段。如下例子://测试子类对象转型对象以及还原后子类对象
向上转型和向下转型Java 中,向上转型是指将一个子类对象赋值给一个父类类型变量。这样做作用是使代码更加灵活,便于代码重用和维护。通过向上转型,可以将多个具有相同属性和行为子类对象赋值给同一个父类类型变量,从而实现对它们统一管理和操作。同时,由于父类是子类共同祖先,因此可以保证在父类类型变量中存储对象,一定具有子类对象所有属性和行为,不会丢失任何数据。在 Java 中,向上转
好处:1:实现了Java多态;提高了代码简介性。 2:提高了代码复用率,减少重复代码编写,一定程度上达到了解耦。坏处:会丢失子类特有的某些方法和属性。(在一篇博客上看见说一定可以,我真是笑了)实战演习+错误展示:定义父亲跟儿子;a 是正常创建父亲对象;b 是用上转型对象方式创建儿子对象。这里调用孩子特有的打篮球方法,发现 a ,b都报错!证明上转型的确会丢失儿子自己独有的方法!下面
文章目录父子对象之间转换分为了向上转型和向下转型,它们区别如下:向上转型注意:向上转型时,父类只能调用父类方法或者子类覆写后方法,而子类中单独方法则是无法调用.当然在初始化时构造函数可以调用。向下转型instanceof向下转型意义 父子对象之间转换分为了向上转型和向下转型,它们区别如下:向上转型 : 通过子类对象(小范围)实例化父类对象(大范围),这种属于自动转换 向下转型 : 通
什么是向下转型和向上转型。面向对象转型只会发生在具有继承关系父子类中(接口也是继承一种)向上转型:其核心目的在于参数统一上,根本不需要强制类型转换。向下转型:是为了操作子类定义特殊功能,需要强制类型转换,可是现在存在问题是:向下转型其实是一种非常不安全操作,以为编译时候,程序不会报错,而在运行时候会报错,这就是传说中—迷之报错。不过呢,在JDK1.5之后,新增加了泛型技术,这
转载 2023-08-19 10:24:50
106阅读
Java向上转型与向下转型问题"is-a"规则表明了每个子类对象也是父类对象,就好比一只猴子是一只动物,但并不是一只动物就是猴子。Java多态为我们带来了诸多好处,向上转型意义在于为了统一操作参数,这就为我们代码带来了较高可维护性能,而向下转型是为了操作子类定义某一特殊功能,这就提高了代码可扩展性。 先观察向上转型:class Animal{ public void e
写在前面在翻阅《Java编程思想》时,意外发现一句话:“它必须被向上转型为Object,因此它会丢失其身份。”这里就引出了两个问题,向上转型是什么?为什么会丢失身份,有没有向下转型转型所谓转型,就是指将一种类型转换成另一种类型。但我们不能在两个毫无关联类型之间转来转去,比如要把我与另一个与我毫无关联,不知姓名不知年龄的人关联在一起,别说计算机,就算是人也很难接受。所以,在Java中,我们所讨论
转载 2023-06-25 21:46:29
57阅读
public class test { public static void main(String[] args) { Teacher t = new Teacher(); t.setName("zhangsan"); Student s = new Student();
原创 2022-10-26 09:57:31
182阅读
class A{ public void fun1(){ System.out.println("A-->public void fun1()"); } public void fun2(){ this.fun1(); } } class B extends A{ public void fun1(){ System.out.println("B-->public void fun1()"); } public void fun3(){ System.out.println("B-->public void fun3()&qu
转载 2013-07-11 18:58:00
131阅读
2评论
只能强转父类引用,不能强转父类对象,所以必须先向上转型,才能向下转,因为得先向
原创 2022-10-14 17:34:35
57阅读
Datepublic class Date extends Object implements Serializable, Cloneable, Comparable<Date>1、 描述Date类表示特定时刻,精度为毫秒。在JDK 1.1之前, Date类还有两个附加功能。 它允许将日期解释为年,月,日,小时,分钟和秒值。 它还允许格式化和解析日期字符串。 不幸是,这些功能AP
        对象类型转换是我们在编程时候经常会遇到java平台也是如此,比如一些基本类型数据转型和复合数据转换。 举例         java语言中主要分为向上转型和向下转型,如何来了解和掌握这两者转型关系呢?首先我们先来举个例子,相信大家看完以后就会明白了。  &nb
转载 2023-08-07 00:12:11
71阅读
父类引用指向子类对象,我们称这个过程为向上转型,属于自动类型转换。 向上转型父类引用变量只能调用它编译类型方法,不能调用它运行时类型方法。这时,我们就需要进行类型强制转换,我们称之为向下转型!对象转型:public class TestCasting { public static void main(String[] args) { Obje
public class Teacher extends Person{ public Teacher() { } public void say(){ System.out.println("teacher");
原创 2022-07-05 17:06:17
152阅读
学习向上转型和向下转型怎么用没多难,但是为什么那样用,我搞了很多次没弄明白。没弄明白原因是平时学习时之看例子,而例子一般都比较简单,没有对象之间调用,一般就是一个对象调用自己方法。首先看下怎么用转型。 要转型,首先要有继承。继承是面向对象语言中一个代码复用机制,简单说就是子类继承了父类中非私有属性和可以继承方法,然后子类可以继续扩展自己属性及方法。 向上转型:子类对象转为
转载 2023-07-20 15:29:04
91阅读
向上转型设计可谓是十分精妙,巧妙结合了Java语言三大特性两个特性(继承,多态)。我们知道:一个对象既可以作为他自己本身类型使用,也可以作为它父类型使用,这种将某个对象引用视为对其父类型引用做法叫做向上转型(这也是为什么在画继承树时,要把父类放在子类上方原因)。先说一下向上转型优点:让代码本身变得十分简洁,减少重复代码出现;缺点当然也有,就是无法调用子类独有的方法,但是正
  • 1
  • 2
  • 3
  • 4
  • 5