方法签名由方法名称和一个参数列表(方法的参数的顺序和类型)组成。
注意,方法签名不包括方法的返回类型。不包括返回值和访问修饰符。
常见的问题应用:重载和重写。

public class A{protected int method (int a, int b) {return 0;}}
class B extends A{private int method(int a,long b){return 0;}
}

重写要求:
前提是继承,两个方法的方法签名相同。至于修饰符,范围相同或者比父类的范围大即可。
所以 B的method方法根本不是重写的A 的method方法,而是重载。重载要求方法名相同,参数和返回值随便改。

所以,参数不一定改成long,随便什么都是重载。

要是重写的话,也不是必须加@override,写@override,这个表示编辑器会给你去父类检查重写的对不对,不写就自己检查呗。

重写是覆盖,就是子类的替换了父类的,正常用方法,调的是子类的,所以重写完还是一个方法
重载是写多个同名方法,但可以给的参数不同,功能类似,所以正常调哪个方法,要看参数怎么写的,跟继承无关,区别是重载后变成多个方法。

虽然简单,但是我确实不知道有方法签名这一说,现在既然知道了,就简单的做个笔记咯。还望众喷子们冷静的路过。

关于重写和重载,学过Java的都可以说几句,但是说的到底对不对,那还真不好说,最好的办法就是亲自测试一下,用代码说话。

下面是我关于重写的测试,@override,使用这个注解,编辑器会自动帮你检查你的重写是不是OK的。

我做如下测试:

1.关于修饰符的测试

父类:如果是private,那么子类就不存在重写,只是新建了个方法。

但是要是protected的话,子类就可以重写。@override是可以OK的。子类是protected或者public。经测试private类型是错误的。直接报错。

验证上面的修饰符范围相同或者比父类大即可。

这也间接说明,继承的关系,private是不能被继承的,所以父类private类型的属性是不能到子类去的,也就无从扩展,也就谈不上重写啦。

2.关于返回类型的测试

在修饰符条件OK的情况下,来修改返回类型,

发现如果可继承的要重写的方法要是返回类型不同,编辑器也是会报错的。说是重写的两个方法的返回类型冲突。不相容的,矛盾的返回类型。

验证,重写的方法的返回类型的关系。

不信的可以自己测试下。

什么叫方法签名 Java相关推荐

  1. Java中方法签名signature、方法重载以及“两同两小一大”的方法覆盖(方法重写)总结

    1. 方法 1.1 方法 实现了某一功能,代码可以复用 1.2 方法签名 java中每个方法都有一个签名,包含方法名和参数列表(类型.个数以及顺序),只要其中一个不同,方法的签名不同,也就是属于不同的 ...

  2. java 签名 apk mac_java 方法签名

    public void test(){}()V public void test1(int i){}              (I)V public int test2(){ return 1;}( ...

  3. Thinking in Java方法签名

    方法名和参数(即,方法签名)唯一标识某个方法:如, public void add(int a,int b){ } //这两个方法的方法签名一样,是不能在同一.java里的,编译通不过 public ...

  4. 写出一下Java方法对应的签名_Java中的方法签名是否包含其返回类型?

    Java类/接口中的方法签名是否包括其返回类型? 例: Java是否知道这两种方法之间的区别: public class Foo { public int  myMethod(int param) { ...

  5. java字段描述符_Java 的方法签名与字段类型表示-[Ljava.lang.String;

    我们什么时候会接触到 Java 的方法签名呢?在进行 JNI 调用时,还有在看方法重载时.重载的方法是有不同的方法签名的,而是不区分返回值,而实际方法签名还揉入了返回值类型的,还有就是 javap - ...

  6. NDK学习笔记:JNI调用Java层方法创建Native的AudioTrack播放PCM(方法签名,CallXXXMethod)

    NDK学习笔记:JNI调用Java层方法创建Native的AudioTrack播放PCM 题目有点复杂,不过确实就是那么回事.这章想记录的内容比较多,先列出来: native static 与 nat ...

  7. java 函数签名_Java方法签名和接口

    我们知道方法签名只包括方法名称和参数列表,但不包括方法返回类型.那么为什么我为以下代码收到编译器错误,因为java不区分具有相同签名的方法. public class InterfaceTest im ...

  8. JAVA中 什么是方法签名?

    what is method signature in java? // 在 Java 中什么是方法签名? 书中是这么说的: Definition: Two of the components of ...

  9. Java方法签名的定义

    In Java, a method signature is part of the method declaration. It's the combination of the method na ...

最新文章

  1. stylegan2 示例命令fused_bias_act.cu环境配置异常(无法打开包括文件: “tensorflow/core/framework/op.h”
  2. android对OnTouchListener、OnClickListener等事件响应的研究
  3. python的构建工具setup.py
  4. CYQ.Data 轻量数据层之路 V2.0 震撼惊世 支持多数据库/内置Aop(二十五)
  5. Android socket 编程 实现消息推送(一)
  6. java 轻量级同步volatile关键字简介与可见性有序性与synchronized区别 多线程中篇(十二)...
  7. 龙头地位无可撼动!腾讯占全球游戏市场15% 连续6年登营收榜首
  8. unity ab包加载_Unity资源管理和打包
  9. 【Oracle】恢复重做日志组
  10. 卡耐基梅隆大学一些关于人机交互中未来接口人研究
  11. Jetson nano jetpack4.5安装torch1.8.0 yolov5(遇到到报错和解决办法)
  12. 学好mysql数据库能找到什么工作_MySQL数据库学习路线汇总整理全集(附详细的学习路线介绍图)...
  13. 【vbers】ibv_reg_mr|RDMA
  14. 第一次在GitHub上提交代码
  15. 2020李宏毅学习笔记——8. Convolution Netural Network
  16. CALayer的简单使用
  17. Ubuntu wine QQ 微信乱码
  18. SLAM学习——李群与李代数
  19. CSS线性渐变和径向渐变详解
  20. 祝妈妈生日快乐的html的代码,祝妈妈生日快乐的朋友圈说说 祝妈妈生日快乐的说说句子...

热门文章

  1. Gradle核心思想(三)Groovy快速入门指南
  2. 基于位置(Lbsn)的社交网络中混合推荐算法的设计
  3. (转贴)Unix与Windows共享资源的一种实现方法
  4. java jt808协议解读_jt808 协议服务端解析 - 下载 - 搜珍网
  5. 电费折扣充值cps接口
  6. 修炼内功——理解函数栈帧创建和销毁
  7. 软件版本 ——测试版
  8. 电脑Win10 企业版如何激活
  9. 新华三“大”结盟 合力推进智慧交通产业升级
  10. Steam账号被盗后,账号找回,PUBG解封经验分享