上海定制网站开发营销推广小兵cms个人网站模板

web/2025/9/26 13:59:01/文章来源:
上海定制网站开发营销推广,小兵cms个人网站模板,porto wordpress汉化版,免费加入微商代理首先是方法的参数是父类对象#xff0c;传入子类对象是否可行 然后引出Parent p new Children(); 这句代码不是很理解#xff0c;google的过程中引出向上转型 要理解向上转型又引出了动态绑定 从动态绑定又引出了静态绑定 程序绑定的概念#xff1a; 绑定指的是一个方法的…  首先是方法的参数是父类对象传入子类对象是否可行 然后引出Parent p new Children(); 这句代码不是很理解google的过程中引出向上转型 要理解向上转型又引出了动态绑定 从动态绑定又引出了静态绑定   程序绑定的概念 绑定指的是一个方法的调用与方法所在的类(方法主体)关联起来。对java来说绑定分为静态绑定和动态绑定或者叫做前期绑定和后期绑定   静态绑定 在程序执行前方法已经被绑定此时由编译器或其它连接程序实现。例如C。 针对java简单的可以理解为程序编译期的绑定这里特别说明一点java当中的方法只有finalstaticprivate和构造方法是前期绑定   动态绑定 后期绑定在运行时根据具体对象的类型进行绑定。 若一种语言实现了后期绑定同时必须提供一些机制可在运行期间判断对象的类型并分别调用适当的方法。也就是说编译器此时依然不知道对象的类型但方法调用机制能自己去调查找到正确的方法主体。不同的语言对后期绑定的实现方法是有所区别的。但我们至少可以这样认为它们都要在对象中安插某些特殊类型的信息。 动态绑定的过程 虚拟机提取对象的实际类型的方法表 虚拟机搜索方法签名 调用方法。   关于绑定相关的总结 在了解了三者的概念之后很明显我们发现java属于后期绑定。在java中几乎所有的方法都是后期绑定的在运行时动态绑定方法属于子类还是基类。但是也有特殊针对static方法和final方法由于不能被继承因此在编译时就可以确定他们的值他们是属于前期绑定的。特别说明的一点是private声明的方法和成员变量不能被子类继承所有的private方法都被隐式的指定为final的(由此我们也可以知道将方法声明为final类型的一是为了防止方法被覆盖二是为了有效的关闭java中的动态绑定)。java中的后期绑定是有JVM来实现的我们不用去显式的声明它而C则不同,必须明确的声明某个方法具备后期绑定。   java当中的向上转型或者说多态是借助于动态绑定实现的所以理解了动态绑定也就搞定了向上转型和多态。 前面已经说了对于java当中的方法而言除了finalstaticprivate和构造方法是前期绑定外其他的方法全部为动态绑定。而动态绑定的典型发生在父类和子类的转换声明之下 比如Parent p new Children(); 其具体过程细节如下 1编译器检查对象的声明类型和方法名。假设我们调用x.f(args)方法并且x已经被声明为C类的对象那么编译器会列举出C类中所有的名称为f的方法和从C类的超类继承过来的f方法 2接下来编译器检查方法调用中提供的参数类型。如果在所有名称为f 的方法中有一个参数类型和调用提供的参数类型最为匹配那么就调用这个方法这个过程叫做“重载解析”  3当程序运行并且使用动态绑定调用方法时虚拟机必须调用同x所指向的对象的实际类型相匹配的方法版本。假设实际类型为D(C的子类)如果D类定义了f(String)那么该方法被调用否则就在D的超类中搜寻方法f(String),依次类推   上面是理论下面看几个示例示例来自网络 Java代码  view plaincopy to clipboardprint?  public class Father {      public void method() {        System.out.println(父类方法对象类型 this.getClass());      }    }          public class Son extends Father {      public static void main(String[] args) {        Father sample new Son();//向上转型        sample.method();      }    }    声明的是父类的引用但是执行的过程中调用的是子类的对象程序首先寻找子类对象的method方法但是没有找到于是向上转型去父类寻找   Java代码  public class Son extends Father {      public void method() {        System.out.println(子类方法对象类型 this.getClass());      }            public static void main(String[] args) {        Father sample new Son();//向上转型        sample.method();      }    }      由于子类重写了父类的method方法根据上面的理论知道会去调用子类的method方法去执行因为子类对象有method方法而没有向上转型去寻找   前面的理论当中已经提到了java的绑定规则由此可知在处理java类中的成员变量时并不是采用运行时绑定而是一般意义上的静态绑定。所以在向上转型的情况下对象的方法可以找到子类而对象的属性还是父类的属性。 代码如下 Java代码  public class Father {          protected String name父亲属性;            public void method() {        System.out.println(父类方法对象类型 this.getClass());      }    }          public class Son extends Father {      protected String name儿子属性;            public void method() {        System.out.println(子类方法对象类型 this.getClass());      }            public static void main(String[] args) {        Father sample new Son();//向上转型        System.out.println(调用的成员sample.name);      }    }     结论调用的成员为父亲的属性。 这个结果表明子类的对象(由父类的引用handle)调用到的是父类的成员变量。所以必须明确运行时动态绑定针对的范畴只是对象的方法。 现在试图调用子类的成员变量name该怎么做最简单的办法是将该成员变量封装成方法getter形式。 代码如下 Java代码  public class Father {      protected String name 父亲属性;      public String getName() {        return name;      }      public void method() {        System.out.println(父类方法对象类型 this.getClass());      }    }          public class Son extends Father {      protected String name儿子属性;            public String getName() {        return name;      }            public void method() {        System.out.println(子类方法对象类型 this.getClass());      }            public static void main(String[] args) {        Father sample new Son();//向上转型        System.out.println(调用的成员sample.getName());      }    }      结果调用的是儿子的属性  转载于:https://www.cnblogs.com/Fc-ios/p/3793989.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/82230.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

商城网站前台html模板如何在百度上发广告

在现代软件开发中,Git已经成为了版本控制系统的事实标准。无论是在个人项目还是大型企业级开发中,Git都是不可或缺的工具。因此,掌握Git的基本操作和高级特性对于软件开发者来说是非常重要的。以下是根据提供的文件内容,总结出的3…

网站模板和定制logo设计图片免费 图案 简约

在简要介绍了配置元数据并涵盖了我之前的文章《 在Spring Boot中使用配置元数据Pimp您的配置》中的基础知识之后,现在该看看如何进一步执行此步骤并进一步自定义配置。 在这篇文章中,我计划提出对配置属性的弃用,并讨论各种值提供程序&#x…

有个新网站专门做外贸的叫什么做网站学不需要做后台管理系统

UG装配约束命令在如下位置 首选接触:含接触和对齐,自动判断两种类型 接触:约束对象使其曲面法向在相反方向,并共面或共线 对齐:约束对象使其曲面法向在同一方向,并共面或共线 自动判断中心/轴&#xff1…

网站盈利的10种方式我的班级网站模板

目录 前言边云协同时代背景边缘人工智能边缘挑战英特尔边云协同的创新成果最后 前言 最近观看了英特尔On技术创新大会直播,学到了挺多知识,其中对英特尔高级首席 AI 工程张宇博士讲解的边云协同加速 AI 解决方案商业化落地特别感兴趣。张宇博士讲解了英…

永年县网站一个新手怎么做电商

近日,Scroll生态项目Penpad将品牌进一步升级为Pencils Protocol,全新升级后其不仅对LaunchPad平台进行了功能上的升级,同时其也进一步引入了Staking、Vault以及Shop等玩法,这也让Pencils Protocol的叙事方向不再仅限于LaunchPad&a…

烟台快速建站公司iis5.1怎么新建网站

AIDE(Advanced Intrusion Detection Environment,高级入侵检测环境)是个入侵检测工具,主要用途是检查文档的完整性。AIDE能够构造一个指定文档的数据库,他使用aide.conf作为其配置文档。AIDE数据库能够保存文档的各种属性,包括:权…

中英企业网站模板中国网站用Cn域名

这篇小文将使用小波多分辨分析对一个简单信号进行降噪,主要是降噪流程,为以后的小波更复杂的降噪算法打下良好的基础。降噪算法流程大致如下: (1)去趋势项(如直流电流),并将数据归一…

重庆专业做网站安徽鲲鹏建设集团有限公司网站

lucene学习教程 1.1 什么是lucene Lucene是一个全文搜索框架,而不是应用产品。因此它并不像www.baidu.com 或者google Desktop那么拿来就能用,它只是提供了一种工具让你能实现这些产品。 2 lucene的工作方式 lucene提供的服务实际包含两部分&#xf…

电商 wordpress主题河北网站seo策划

目录 一:绘制直线 二:绘制矩形 三:绘制圆形 四:绘制椭圆

网站空间选择公司介绍ppt制作

一、 总则 本部分规定了 IT 运维服务支撑系统的应用需求,包括 IT 运维服务模型与模式、 IT 运维服务管理体系、以及 IT 运维服务和管理能力评估与提升途径。 二、 参考标准 下列文件中的条款通过本部分的引用而成为本部分的条款。凡是注日期的引用文件&#xff0c…

中小企业网站建设开题报告网站购物车建设

笔记来源: 1.【传送门】 2.【传送门】 前沿原理介绍 Grander因果检验是一种分析时间序列数据因果关系的方法。 基本思想在于,在控制Y的滞后项 (过去值) 的情况下,如果X的滞后项仍然有助于解释Y的当期值的变动,则认为 X对 Y产生…

新增网站备案设计一个自己公司网站开发

在开发阶段,如果同时拥有多个开源代码托管平台的账户,在代码的管理上非常麻烦。那么,如果同一台机器上需要配置多个账户,怎样才能确保不冲突,不同账户独立下载独立提交呢? 我们以两个github账号进行演示 …

免费网站后台管理系统模板下载青岛网站建设信息公示

一、 1.1 QSqlRelationalTableModel继承自QSqlTableModel,并且对其进行了扩展,提供了对外键的支持。一个外键就是一个表中的一个字段 和 其他表中的主键字段之间的一对一的映射。例如,“studInfo”表中的departID字段对应的是“departments…

网站开发 如何定位学生免费服务器

DB-Engines 数据库流行度排行榜 10 月更新已发布,排名前二十如下:这期的数据比较有意思,到了这个月,Microsoft SQL Server 马上扭转局势,成了分数增长最多的一个,与上个月相比其增加了 9.66 分,…

公司网站建设合同需要交印花税教育机构做网站素材

首先来看看网上的一篇文章:http://it.dengchao.org/neatbeans-problem-fedora/linux/ 在Windows和Linux(Fedora/Ubuntu/RedHat)中安装了NetBeans后,会遇到菜单等显示乱码的问题。这里告诉大家如何解决中文显示乱码的问题,包括Windows、Fedor…

有引导页的网站网站移动端就是app吗

智能停车场物联网远程监控解决方案 智能停车场物联网远程监控解决方案是一种集成了现代物联网技术、大数据分析以及云计算等先进技术手段,对停车场进行全面智能化管理的综合系统。它通过实时感知、精准采集和高效传输各类停车数据,实现对停车场运营状态…

网站建设 天猫 保证金做网站需要虚拟主机还是服务器

1.数据字典(固定的数据,省市级有层级关系的) //mp表如果没有这个字段,防报错,eleUI需要这个字段TableField(exist false) //父根据id得到子数据 ,从controller开始自动生成代码-->service//hasChildren怎么判断,只需要判断children的parentid的count数量>0就可以了//优化…

凡科网站建设怎么去掉极速建站外省住房和城乡建设厅网站

阿丹: myisam存储引擎与innodb存储引擎战争,在mysql中5.5.5之前myisam还是mysql的默认存储引擎但是在5.5.5版本之后被innodb反超。 官方解释: MyISAM是MySQL的默认数据库引擎(5.5版之前),由早期的ISAM所改…

做淘宝这样的网站需要什么像wordpress一样的网站吗

算法马拉松24 A 小C的多边形 题意:n1个点的多边形。给外圈的边标记上1~n,里圈的边也标记上1~n,使得对于一个外圈相邻点与中间点构成的三角形的边权之和都相等。\(n \le 10^6\) 题解:显然每个三角形权值和为\(\frac{3(n1)}{2}\) 一…