`

java方法细节

 
阅读更多

一、

方法的签名: 唯一 在同一个类中方法签名唯一
   方法的签名:
 方法名 +形参列表(类型 个数  顺序) 与 修饰符 、返回值类型|void 形参名 无关
例如:

public static int pow(int p,int n)
public static int pow(int n,int p)//签名重复: pow(int ,int)

public static int pow(int n)//参数的个数不同,签名不重复


一个类中 可以包含 同名的方法,但是签名不能相同  -->重载

 

二、

方法的调用  原则 兼容  就近最优原则(使用接近最优原则的前提是,本类的所有父类都没有相应的方法)
1、形参类型>=实参类型
2、存在返回值 返回类型  接收类型 
 接收类型 >=返回类型>=返回值类型

public static int abs(int num){
  if(num<0){
   return -num;
  }
  return 'A';//char小于int 返回类型大于返回值类型,合理
 }

 

long  num =abs('A'); //接受类型大于返回值类型,合理

 

三、方法重载

1、方法的重载: 在同一类中 方法名称相同,形参列表不同(类型、个数、顺序)

2、方法重载作用: 方便调用

3、就近最优原则  (基本数据类型   继承关系|接口 引用类型)
char -->int....
byte -->short -->int ...

p(char) -->p(int) -->p(long) -->p(float) -->p(double)

这里指的是,如果在调用方法的时候没有相应的类型,则会自动进行转换

ps:int -->String   不会自动转换 

 

4、过多的重载会造成调用混乱

//过多重载方法可能造成调用混乱  add(int ,float)
 public static float add(int a,float b){
  System.out.println("add(int,float)");
  return a+b;
 }
 //add(float,int)
 public static float add(float a,int b){
  System.out.println("add(float,int)");
  return a+b;
 }

add(1,2); //系统不知道调用哪个方法

 

 四、可变参数

 调用如下图:

 

 

 

 

 

 

 

  • 大小: 19.8 KB
  • 大小: 24 KB
分享到:
评论

相关推荐

    Java编程中须注意的细节.pdf

    在进行Java编程时,许多开发者往往会忽略一些琐碎但至关重要的细节,这些细节可能在项目的开发和维护中造成不可预见的问题。为了解决这些问题,可以参考《Java Pazzlers》(Java解惑)这本书,其中对许多常见的编程...

    java 一些细节知识

    在这个"java一些细节知识"的压缩包中,包含了一份名为"java test.doc"的文档,我们可以期待它涵盖了作者个人测试后总结的Java关键知识点。以下是对这些可能包含的内容的详细解释: 1. **变量与数据类型**:Java支持...

    Java编程中影响性能的细节

    在Java编程中,优化性能是开发者必须关注的重要环节。以下是一些关键的性能优化细节: 1. **使用单例模式**:单例模式可以确保一个类只有一个实例,从而节省资源和提高效率。不过,过度使用单例可能导致设计复杂性...

    NDK开发之C语言调用Java构造方法、父类方法、返回中文字符串乱码问题案例

    4. **调用Java方法**:有了方法ID,就可以通过`env-&gt;CallObjectMethod`、`env-&gt;CallVoidMethod`等函数调用Java的构造方法或方法。 关于调用Java构造方法,你可以这样做: ```c++ jclass javaClass = env-&gt;FindClass...

    java方法大全

    ### Java方法大全详解 在Java开发过程中,熟练掌握并运用常用方法是提高编程效率的关键。本文将基于给定文件中的示例代码,详细介绍几个实用的Java方法及其应用场景,旨在帮助初学者快速掌握Java的核心技能。 ####...

    java 细节代码收集 供自己查看

    在Java编程语言的世界里,对细节的掌握是提升代码质量、效率和可维护性的关键。这篇集合了关于Java编程的一些重要细节,旨在帮助开发者更好地理解和运用这个强大的后端语言。以下是一些基于提供的文件名和标签所衍生...

    Java解析wsdl文档获取具体的方法与参数

    本篇将深入探讨如何在Java中解析WSDL文档并提取关键细节。 首先,理解WSDL文档的结构至关重要。WSDL文档包含了服务的端点(即地址)、操作(对应于服务的方法)以及消息和绑定(定义了数据传输的方式)。DOM...

    java代码细节总结1.0版本.zip

    本资料“java代码细节总结1.0版本.zip”是针对Java编程的一些关键知识点和最佳实践的详细概述,旨在帮助开发者提升代码质量和效率。以下是根据提供的文件名“java代码细节总结1.0版本.md”可能涵盖的一些核心Java...

    Java 一些值得注意的细节

    Java编程语言以其强大的跨平台能力和丰富的库而广受开发者喜爱,但在实际开发中,很多细节问题往往会成为初学者或有经验的开发者们的困扰。本文将深入探讨Java的一些值得注意的细节,帮助你避免常见陷阱,提升代码...

    Java性能优化的45个细节.pdf

    以下是关于Java性能优化的详细知识点,内容包括单例模式的合理应用、静态变量的使用考量、对象创建与垃圾回收策略、final修饰符与内联优化、局部变量与实例变量的性能差异、包装类型与基本类型的内存影响、同步机制...

    java笔记(细节问题讲的很细)

    这份"java笔记(细节问题讲的很细)"很可能包含了Java语言的核心概念、类库使用、编程技巧以及常见问题的解决方案。 一、Java基础 1. 变量与数据类型:Java提供了八种基本数据类型,包括整型、浮点型、字符型和...

    Java语言细节问题大全.rar

    这份名为"Java语言细节问题大全.rar"的压缩包文件,显然为开发者提供了一份全面的Java编程指南,涵盖了从基础到高级的各类问题。下面将详细讨论其中可能包含的知识点。 1. 文件系统操作: 在Java中,`java.io`和`...

    达内 CoreJava细节

    《达内 CoreJava 细节》是一份针对Java初学者和进阶者的重要学习资源,主要涵盖了CoreJava的基础部分。这份PDF文档旨在提供实用且深入的Java编程知识,帮助读者全面掌握这一强大的编程语言。 CoreJava是Java的核心...

    java远程方法调用

    RMI允许一个Java程序像调用本地方法一样调用远程计算机上的Java方法,简化了分布式应用的开发流程。 RMI基于JRMP(Java Remote Messaging Protocol)协议进行通信,这是一种专门为Java远程对象设计的协议,确保了跨...

    Java虚拟机规范.Java SE 8版.zip

    书中基于全新Java SE 8,完整且准确地阐述Java虚拟机规范,是深度了解Java虚拟机和Java语言实现细节的必读之作。 《Java核心技术系列:Java虚拟机规范(Java SE 8版)》共分7章。第1章从宏观的角度介绍了Java虚拟机...

    易语言JAVA调用 例子

    3. **调用Java方法**:使用`CallStaticVoidMethod`或`CallVoidMethod`等函数,根据方法是否为静态,以及传入的参数类型,调用Java方法。 4. **处理结果**:根据Java方法的返回值,易语言程序可以进行相应的操作。 ...

    JAVA调用DLL方法 JAVA调用DLL方

    ### JAVA调用DLL方法 在跨平台开发领域中,Java作为一种强大的编程语言,因其具有良好的移植性和跨平台性而被广泛使用。然而,在某些特定情况下,我们可能需要调用本地库(例如DLL文件)来实现特定功能或提高性能。...

    java读取文件方法大全

    根据给定的文件信息,我们可以总结出一系列关于Java中读取文件的方法,这些方法涵盖了不同层次的数据读取,包括字节、字符以及行级别的读取。以下是对这些知识点的详细阐述: ### Java读取文件方法大全:读取File流...

    用java调用.net接口的方法

    标题提到的“用java调用.net接口的方法”就是解决这个问题的一种技术实践。以下将详细讲解三种主要的实现方式,以及如何通过提供的源代码进行操作。 首先,我们要理解Java和.NET之间的互操作性通常依赖于Web服务...

    Java+8实战_Java8_java8_

    以上只是Java 8中部分重要特性,实际的“Java+8实战”书籍可能会涵盖更多细节,如如何使用新的日期和时间API进行日期计算、如何利用流API进行复杂的数据处理,以及如何有效地使用lambda和函数式接口进行函数式编程。...

Global site tag (gtag.js) - Google Analytics