方法的重载和方法的重写

ArcMap学习笔记(三)地图数字化 地图数字化前言地图数字化实现步骤1.加载地形图2.新建要素图层3.开启编辑环境4.设置捕捉环境5.选择数字化图层6.数字化控制点7.数字化等高线8.数字化图幅边框9.保存数字化成果总结 前言 使用软件:ArcMap10.4.1中文版 如果出现侵权,请在评论留言,我会及时删除,谢谢。 地图数字化 空间数据采集(输入)是将现有的地图、外业观测成果、航空像片、遥感图片数据、文本资料等转换成GIS可以直接... 阅读详情

方法的重写Overriding和重载Overloading是Java多态性的不同表现。

方法的重载:

什么是方法的重载呢? 

方法的重载是指方法名相同,参数类型,参数个数,参数顺序至少有一个不相同的一类方法。在方法体的内部不能使用private、protected、public定义局部变量。被final修饰的形参不能修改其引用中存在的值。

注意:1.如果只有访问修饰符权限改变不构成方法的重载。

             2.如果只有返回值类型不同不构成方法的重载。

 下面来举一个例子:

public class MethodTest {
String name="成某某";
public String draw(){
	System.out.println("画了一个圆");
	return "yuan";
}
public void draw(int i){
	System.out.println("画了一个正方形");
}
public int draw(String s){
	return s.length();
}
public int draw(int b,String s){
	System.out.println("draw:"+s+"--"+b);
	return b;
}
public int draw(String s,int b){
	System.out.println(s+"   "+b);
	return b;
}
private void test(final int b){
    //b++;  这样写会报错,被final修饰的形参不能改变它的值。
	int i=0;
	i++;
	
}
}

 观察上述的实例:public void draw(int i) {  System.out.println("画了一个正方形"); }    如果只改变它的访问权限,改为缺省,

写为:     void draw(int i) {  System.out.println("画了一个正方形"); }     这样写不能通过编译,会报错,不构成方法的重载。如果只改变它的返回值类型,写为:   public int draw(int i) {  System.out.println("画了一个正方形");   return   i;}      也不能通过编译,会报错,不构成方法的重载。

方法的重写(方法的覆盖):

 什么叫方法的重写?

当一个子类要继承父类时,它如果需要重写父类的方法的话必须符合一定的规则。

方法重写的规则:1.子类的方法必须与父类的某个方法的方法名,返回值类型以及参数类型、个数、顺序完全相同。若子类中的方法与父类中的某一方法具有相同的方法名、返回类型和参数表,则新方法将覆盖原有的方法。

                                2.子类的方法不能缩小父类方法的访问权限。

                                3.子类的方法不能抛出比父类方法更多的异常。

                                4.不能重写标志为final因为final表示最终的意思,不能被修改。

                               5. 非检查异常:重写方法可以抛出任何非检查的异常,无论被重写方法是否声明了该异常。 

                               6. 检查异常:重写方法一定不能抛出新的检查异常,或比被重写方法声明的检查异常更广的检查异常 。但是可以不抛出异常。

下面我来举一个例子:

public class MethodTestSon extends MethodTest{
public void draw(int a){
	System.out.println("子类画了一个圆");
}
public int draw(String s){
	return 0;
}
public int draw(int a,boolean b){
	return a;
}
public int draw(int a,String s){
	return a;
}
public void go(){
	System.out.println("你走了");
}
public void work(final MethodTest m){
	System.out.println(m.name);
	m.name="成某某来了";
	System.out.println(m.name);
	//m=new MethodTest();    被final修饰的对象,不能改变它的引用,也就是不能改变它的地址;
}

 

【Flutter 面试题】 怎么减少Widget的重新构建? 关于 const 关键字的使用:在 Flutter 开发中,任何时候当你确定一个 Widget 在其整个生命周期内都不会发生变化时,使用 const 关键字声明这个 Widget。这样的声明告诉 Flutter 框架这个 Widget 可以在编译时生成,后续的构建周期中可以重用已经创建的 Widget,从而避免了重复的构建开销。这适用于静态文本、图标或整个不变的 Widget 树。 阅读详情

相关推荐

树莓派34/100 - Pico读取MPU6050加速度和陀螺仪传感器数据

树莓派Pico连接MPU-6050模块(三轴陀螺仪+三轴加速度),读取运动姿态数据。

申龙斌的程序人生 5087

重写和重载的区别

重写(Override) 重写是子类对父类的允许访问的方法的实现过程进行重新编写, 返回值和形参都不能改变。即外壳不变,核心重写! 重写的好处在于子类可以根据需要,定义特定于自己的行为。 也就是说子类能够根据需要实现父类的方法。 重写方法不能抛出新的检查异常或者比被重写方法申明更加宽泛的异常。例如: 父类的一个方法申明了一个检查异常 IOException,但是在重写这个方法的时候不能抛出 Exception 异常,因为 Exception 是 IOException 的父类,只能抛出 IOExcep

qq_52285743的博客 513

从零配置EtherCAT IGH主站:手把手教你处理内核版本与实时性优化的那些坑

本文详细指导如何从零配置EtherCAT IGH主站,涵盖内核版本适配、实时性优化及常见问题解决方案。通过精确匹配内核头文件、应用实时补丁和优化网卡驱动,帮助开发者实现微秒级响应,适用于工业自动化、机器人控制等高精度场景。

weixin_30790841的博客 382

Java中方法的重载和重写

重载是在同一个类中的具有相同方法名,不同参数(个数、类型、顺序)的方法的定义,构造方法 普通方法 抽象方法都可以重载;重写是在子类继承父类的时候重写,在子类重写的方法名必须和父类的方法名完全相同,可以用@Override检查是否是重写方法。 一.重载(Overload) Overload:发生在一个类或者其一个子类当中,具有相同的方法名,但是方法的参数列表不同,与返回值无关,所以返回值类型可以相同也可以不同。方法重载是编译时多态。 ①函数名相同 ②参数列表一定不同(类型,个数) ③返回值不做要

m0_56673710的博客 3657

医疗AI新思路:为什么Graph Neural Network能改善气道分割的漏检问题?

本文探讨了Graph Neural Network(GNN)在医疗AI领域改善气道分割漏检问题的创新应用。通过分析3D UNet等传统方法的局限性,揭示了GNN在图结构建模中的独特优势,特别是在捕捉细小末梢支气管方面的突破性表现。文章详细介绍了UNet-GNN混合架构的设计原理、实验性能对比及优化方向,为CT影像分析提供了新思路。

weixin_30379531的博客 224

Delta并联机构运动学正逆解:从理论建模到Matlab实战

本文深入解析了Delta并联机构运动学正逆解的核心原理与实战方法。通过几何建模,清晰阐述了其“逆解简单、正解复杂”的特性,并详细推导了基于一元二次方程的逆解解析算法与采用牛顿-拉弗森迭代法的正解数值算法。文章结合完整的Matlab代码实例,从符号推导到数值求解,提供了从理论到实践的完整实现路径,助力机器人开发者掌握Delta并联机构的运动学分析。

weixin_29096377的博客 432

java封装,继承和多态

1 package case8; public class TestPolymorphism { public static void main(String[] args) { // 以多态方式分别实例化子类对象并调用eat()方法 /********* begin *********/ Animal a=new Cat(); Animal b=new Dog(); Animal c...

NJU phd 在读。 3115

c语言串口编程详解

串口: 一种异步通信接口,通常用于低速数据传输。RS-232: 最常见的串口标准,定义了电气特性、连接器和信号线。UART: 通用异步收发传输器,是实现串口通信的硬件模块。通过以上内容,你应能够理解并实现C语言在Windows和Linux平台上的串口编程。希望这本手册能帮助你在实际项目中顺利进行串口通信开发。如果有任何疑问或需要进一步的帮助,请随时提问。

jkzyx123的博客 2223

方法的重载和重写

重载:是指在同一个类中,有方法名相同,但是形参列表不同的多个方法 。 既然方法名相同,那么编译器怎么辨别这些方法呢?就是通过形参列表 那么什么是形参列表呢?就是指形参的返回类型+个数+顺序,只有其中一个条件不一样,那么就是不同的形参列表 方法签名,了解一下 ================================================================== 重写:在父子关系(只能是继承)中,子类根据需求将父类继承过来的方法,重写方法体 可以使用@Override注解,注解的作

ExceptionCoder的博客 511

MATLAB点云处理(八):为点云添加高斯噪声

本文对如何借助MATLAB,为点云添加高斯噪声做出了说明,并给出实现代码。

孙悟空 2844

硬核干货|C#+EtherCAT协议:高精度多轴伺服运动控制通信实战

本文摘要: 文章聚焦工业自动化领域多轴伺服运动控制的高精度与实时性需求,基于C#与EtherCAT协议实现完整解决方案。EtherCAT凭借微秒级同步、分布式架构等优势成为首选,而C#通过优化GC策略和实时线程可满足工业控制要求。文章从工程落地角度,详细拆解EtherCAT的PDO/SDO通信机制与多轴同步控制逻辑,提供完整的C#代码实现(主站初始化、伺服配置、运动控制等),所有代码均通过汇川/松下伺服实测验证。核心亮点包括:纯C#原生开发、工业现场高频问题解决方案、硬件适配指南,帮助开发者快速掌握高精度多

这里只有干货:从 Modbus 通信到 MES 对接,从 YOLO 训练到工控机部署,带你搞定工业软件开发全流程。 577

方法的重写与重载

方法的重载 同一个类中,方法名相同,参数列表不同(参数个数或者对应的数据类型不同) 例如: public void print(int a) public void print(int a,double b); public void print(double b,int a) 方法的重写 子类继承父类时,有可能会重写父类中的方法,实现另外的功能 注意:父类私有的方法不能重写 重写时,访问...

小白学编程 4183

使用 Prometheus 监控 Spring Boot 应用

本文介绍了使用SpringBoot+Prometheus+Grafana实现应用监控的方案。首先在SpringBoot项目中集成Micrometer和Actuator组件,通过配置暴露Prometheus监控端点。接着配置Prometheus采集应用指标数据,并通过Grafana可视化展示。具体步骤包括:1)SpringBoot集成Micrometer;2)配置Prometheus抓取应用指标;3)安装Grafana并导入SpringBoot监控模板;4)展示JVM和业务指标。该方案可以实现对SpringB

蔡定努 430

方法重载和方法重写

重写的方法必须与被重写的方法具有相同的名称、参数列表和返回类型(或子类型)。

C6666888的博客 1907

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

方法的重载和重写有什么区别

区别点重载(Overloading)重写(Overriding)发生位置同一个类中父类与子类之间参数列表必须不同(参数个数、类型或顺序不同)必须相同返回类型可以相同,也可以不同必须相同(Java 5 之后,允许返回类型是协变类型)方法名相同相同修饰符无限制访问修饰符不能比父类的更严格多态性编译时多态性运行时多态性与继承的关系与继承无关与继承相关,子类重写父类的方法目的提供同一个方法名的多个实现,以处理不同类型或数量的参数子类定制父类方法的行为。

阿鹏的博客 1340

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

方法重写和方法重载

qq_774952435的博客 5972

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

方法重写和方法重载的区别

方法重写和方法重载的区别

qq_45854518的博客 2446

方法的重载和重写简述

方法的重载(overload) 在同一个类中方法名相同,参数列表不同(个数不同,类型不同,顺序不同) 和返回值和权限修饰符无关 方法重载示例(构造方法) package waking.test.cc; /** * 方法的重载 * @author waking * */ public class Demo01 { private int id; private String name...

weixin_43688349的博客 2767

简述方法的重载和方法的重写

简述方法的重载和方法的重写、java中实现多态的机制是什么?、什么是抽象类?什么是抽象方法?有什么特点?、请说出作用域public,private,protected,以及不写时的区别、是否可以从一个static方法内部发出对非static方法的调用?、简述this,super关键字用法

m0_58725148的博客 2970

方法重写和重载的区别

1 问题在Java中,方法存在着重写和重载两种方式,它们的区别是什么?2 方法2.1方法的重写在Java中,重写(override)指的是子类可以重写其父类中的非private方法,使得子类在调用该方法时会使用自己的实现而不是父类的实现。方法的重写具有以下特点:1.重写是指子类定义了与父类具有相同名称、参数列表和返回类型的方法,并且子类方法的访问修饰符不能比父类方法更严格。2.重写用于实现多态性,...

算法与编程之美 851

Java 中构造器重载,方法重载和方法重写区别

开发工具与关键技术:Java 作者:吴永旗 撰写时间:2019年4月25日 什么构造器重载? 构造器重载名字相同,而形参列表一定不同或者形参列表次序不同,构造器名和类名相同,并且没有返回值 例子如下: public class Dog { public Dog(){//类名 Dog作为构造器名 System.out.println(“无参构造方法”); } public Dog(String ...

小坏蛋博客 1002

方法重写和方法重载总结

重载(overloading) 是在一个类中,必须改变原同名方法的参数列表,其他可以按需改变来创建一个新的同名方法。常见的有构造器的重载,overroad,相当于重新装参数,但是其实现不一定修改。

进一步有一步的欢喜 467

方法的重写和重载

子类重新定义父类中已存在的方法,方法名、参数列表和返回类型必须完全相同。同一类中定义多个同名方法,通过参数列表(类型/数量/顺序)区分。b. 返回类型可以是父类方法返回类型的子类(协变返回类型)。子类可重载父类方法(需参数列表不同)。实现运行时多态(动态绑定),允许子类修改或扩展父类的行为。a. 子类方法抛出的异常 ≤ 父类方法异常(或完全不抛)。​:用于扩展方法功能(编译时多态),需通过参数列表区分。a. 方法名、参数类型、返回类型必须一致。a. 必须不同(类型、数量或顺序)。​:必须基于父子类继承。

weixin_74120671的博客 511

《方法的重载和重写的异同点》

方法的重载和重写的异同点 开发工具与关键技术:MyEclipse 10、Java 作者:潘玉莹 撰写时间:2019-04-12 方法的重载 什么是方法的重载?  重载是在一个类里面,方法名称相同,而形参列表不同。返回值类型可以相同也可以不同。每个重载的方法(或者构造器)都必须有一个独一无二的参数类型列表 通俗概念:在同一个类中,允许存在一个以上的同名方法,只要他们的参数个数或者参数顺序不同即可...

weixin_44548676的博客 1468

方法重载和方法覆盖(重写)的区别:

方法重载和重写是不同的概念,主要有以下区别: 1、首先是含义不同 1)方法重载是在同一个类中,声明多个同名方法,通过参数列表来区分不同的方法,与参数列表的数量、类型和顺序有关,与修饰符和返回值类型以及抛出异常类型无关 2)方法重写(方法覆盖)的前提是发生在具有继承关系的两个类之间,方法重写有以下规则: a.参数列表必须保持一致 b.返回值类型必须保持一致 c.方法名必须保持一致 d.重写方法的访问权限范围必须大于等于父类方法 e.重写方法的抛出异常类型范围不能大于父类方法 2、方法的重载和重写的作用不同 重

一枚正在长大的程序猿 7714
上一篇: java的Object类理解和接口的定义
下一篇: File类的学习总结
coder150806
博客等级 码龄8年 79粉丝 43原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值