Java多态使用方法是什么

技术Java多态使用方法是什么本篇内容介绍了“Java多态使用方法是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!一

本文介绍了“什么是Java多态使用方法”的知识。很多人在实际案件操作中都会遇到这样的困难。接下来,让边肖带领大家学习如何应对这些情况!希望大家认真阅读,学点东西!

一 点睛

向上转型:或过渡到父类。通过子类的对象实例化父类的对象实际上是对象的向上转换。Upcast不需要强制类型转换,但会失去精度。

向下转型:或过渡到子类。也就是说,父类对象可以转换为子类对象,但此时必须执行强制类型转换。

向上转换时,父类对象可以看到的方法仍然是这个类中定义的方法(即子类覆盖的方法)。如果子类扩展了一些新方法,父类是不可见的。

二 父类对象找不到子类的扩充方法

1代码

class { public void print(){ system . out . println(‘ * * * *-父类base class:public void print(){ }({ } ‘);}} Classsubclass Extensions基类{ public void print()//方法重写{ system . out . println(‘ # # # #-# # #-subclass:public void print(){ } ‘);} public void getB() //这个方法是子类{ system }扩展的函数。out . println(‘ # # # #-子类:public void getb () {},B类扩展方法。) ;} }公共类new method test { public static void main(String args[]){ base class baseObj=new subClass();//实例化子类对象BaseObj . print();baseObj . GetB();//找不到此方法的父类}}

2次运行

编译失败。

3描述

虽然父类对象baseObj的实例化依赖于子类,但它能看到的是自己的类定义的方法名。如果方法被子类覆盖,被调用的方法体也是被子类覆盖的方法。

三 向下转型

1代码

class { public void print(){ system . out . println(‘ * * * *-父类base class:public void print(){ }({ } ‘);}} Classsubclass Extensions基类{ public void print()//方法重写{ system . out . println(‘ # # # #-# # #-subClass:print()’);} public void getB() //这个方法是由子类{ system }扩展的函数。out . println(‘ # # # #-Subject:GetB(),Subject扩展方法。) ;} } public class downlasttest { public static void main(String args[]){ base class baseObj=new subClass();//实例化子类对象BaseObj . print();//调用print()subClass Subobj=(subClass)subClass的baseobj//向下过渡,强制完成subobj . getb();//找不到此方法的父类,但可以找到子类对象}}

2次运行

# # # #-subclass:print()# # #-subClass:GetB(),subClass扩展方法。

3描述

形式上,类定义的对象只能看到它所属的类的成员。虽然子类对象可以通过向上类型转换给父类对象赋值,但是父类对象只能看到子类中覆盖的成员(这些方法也已经在父类中定义了),父类对象看不到子类的新扩展方法。

四 隐藏

1电竞

在某些场景下,我们不希望父类的方法被子类的方法覆盖,也就是子类实例化后,会调用父类的方法,而不是子类的方法,需要隐藏。关键字Static修改的静态方法无法覆盖,Java利用这个特性来达到隐藏效果。

2代码

父类{ public static void overwriting(){ system . out . println(# # # # #-父方法’);}}class Son扩展了父辈{ public static void overwriting(){ system . out . println(‘ * * * *-Son方法’);} } public class hideSubscription { public static void main(String args[]){父辈爸爸=新儿子();dad . overwriting();父. overwriting();son . overwriting();}}

3运行

##### -父法##### -父法***** -子法

“如何使用Java多态性”内容到此结束。感谢您的阅读。如果你想了解更多的行业,可以关注网站。边肖将为您输出更多高质量的实用文章!

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/105116.html

(1)

相关推荐

  • Hive表字段Comment中文乱码怎么办

    技术Hive表字段Comment中文乱码怎么办这篇文章主要为大家展示了“Hive表字段Comment中文乱码怎么办”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Hive表字段

    攻略 2021年12月10日
  • 《LeetCode刷题笔记》Day1——数组

    技术《LeetCode刷题笔记》Day1——数组 《LeetCode刷题笔记》Day1——数组————恢复内容开始————
    二分查找
    只要是顺序数组,都可以考虑用一下二分

    礼包 2021年12月14日
  • 10月29日 课堂笔记

    技术10月29日 课堂笔记 10月29日 课堂笔记29日笔记:
    Flex 布局:
    https://www.runoob.com/w3cnote/flex-grammar.htmltarget:targe

    礼包 2021年11月1日
  • PostgreSQL的相似搜索插件有哪些

    技术PostgreSQL的相似搜索插件有哪些这篇文章主要介绍“PostgreSQL的相似搜索插件有哪些”,在日常操作中,相信很多人在PostgreSQL的相似搜索插件有哪些问题上存在疑惑,小编查阅了各式资料,整理出简单好

    攻略 2021年11月10日
  • 一筹莫展什么意思,一筹莫展的筹是什么意思

    技术一筹莫展什么意思,一筹莫展的筹是什么意思◎ 一筹莫展 yīchóu-mòzhǎn筹:计策。展:施展。一点计策也想不出;一点儿办法也没有《宋史·蔡幼学传》:“多士盈庭而一筹不吐。”后以“一筹莫展”比喻一点办法也没有。

    生活 2021年10月29日
  • 在Eclipse下如何安装C++插件CDT

    技术在Eclipse下如何安装C++插件CDT小编给大家分享一下在Eclipse下如何安装C++插件CDT,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了

    攻略 2021年11月25日