114培训网欢迎您来到重庆达内教育!

400-850-8622

全国统一学习专线 9:00-21:00

重庆Java培训 浅谈Java中多态变量

授课机构:重庆达内教育

关注度:805

课程价格: 请咨询客服

上课地址:请咨询客服

开课时间:滚动开班

咨询热线:400-850-8622

在线报名

课程详情在线报名

更新时间:2021-03-18 13:22
【重庆达内】很多人对于Java中的多态变量并不陌生,那么你是否真的了解呢?在下面的重庆Java培训中重庆达内的老师就来谈一谈Java中的多态变量。 重庆Java培训一、多态的表现形式 多态的表现形式有方法重载,方法改写,多态变量和泛型。重载是一种静态的多态性,在程序编译时确定被调用的方法,称为早绑定。而多态变量和改写相结合之后,方法的调用在运行时才能确定,是动态的多态性,称为晚绑定。 重庆Java培训二、里氏替换原则(The Liskov Principle of Substitution) 在静态类型语言中,在父类和子类之间的关系存在下面的现象 子类的实例必须拥有父类的所有数据成员; 子类的实例必须至少通过继承(如果不是显示地改写)实现父类所定义的所有功能; 这样,在某种条件下,如果用子类实例来替换父类实例,那么将会发现子类实例可以完全模拟父类的行为,二者毫无差别; 替换原则是指如果有A和B两个类,类B是类A的子类,那么在任何情况下都可以用类B来替换类A,而外界则毫无察觉。 不是所有继承产生的子类都符合替换原则,符合替换原则的子类称为子类型。 重庆Java培训三、静态类型和动态类型 在静态类型面向对象语言中,一个变量所存储的值的类型并不等同于这个变量所声明的类型。声明为父类类型的变量可以包含子类的实例值。 静态类型是指变量在声明时所确定的类型,并且一经声明就不会改变;动态类型是指这个变量实际存储的值的类型。在静态类型的面向对象程序设计语言中,在编译时消息传递表达式的合法性不是基于接收器的动态类型,而是基于接收器的静态类型。而对象对消息的响应取决于对象的动态类型。(就是说:写代码的时候“点”不出该对象动态类型包含而静态类型不包含的变量、方法;动态类型就是程序运行过程中被重新赋值为对其他对象的引用,这时候他就可以含有动态类型对象的方法了。) 重庆Java培训四、父类对象和子类对象 子类从父类继承了所有的属性和方法,因此作用在父类上的方法应用在子类对象上也是合法的。由于继承表达的是一种is a关系,即子类对象可以被视为父类的一个对象,因此可以把子类对象的引用赋给父类对象;反之,父类对象不一定是其某个特定子类的对象,因此不一定满足is a关系,因此不能把父类对象的引用直接赋给子类对象。
姓名不能为空
手机号格式错误