区分过载方法

若方法有同样的名字,Java怎样知道我们指的哪一个方法呢?这里有一个简单的规则:每个过载的方法都必须采取独一无二的自变量类型列表。
若稍微思考几秒钟,就会想到这样一个问题:除根据自变量的类型,程序员如何区分两个同名方法的差异呢?
即使自变量的顺序也足够我们区分两个方法(尽管我们通常不愿意采用这种方法,因为它会产生难以维护的代码):

 

//: OverloadingOrder.java
// Overloading based on the order of
// the arguments.

public class OverloadingOrder {
  static void print(String s, int i) {
    System.out.println(
      "String: " + s +
      ", int: " + i);
  }
  static void print(int i, String s) {
    System.out.println(
      "int: " + i +
      ", String: " + s);
  }
  public static void main(String[] args) {
    print("String first", 11);
    print(99, "Int first");
  }
} ///:~

两个print()方法有完全一致的自变量,但顺序不同,可据此区分它们。

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索string
, static
, 方法
, print
, 两个
一个
方法过载、java方法过载、配变重过载计算方法、变压器过载判断方法、区分硬水和软水的方法,以便于您获取更多的相关知识。

时间: 2024-10-22 15:45:26

区分过载方法的相关文章

java返回值过载

我们很易对下面这些问题感到迷惑:为什么只有类名和方法自变量列出?为什么不根据返回值对方法加以区分?比如对下面这两个方法来说,虽然它们有同样的名字和自变量,但其实是很容易区分的: void f() {} int f() {} 若编译器可根据上下文(语境)明确判断出含义,比如在int x=f()中,那么这样做完全没有问题.然而,我们也可能调用一个方法,同时忽略返回值:我们通常把这称为"为它的副作用去调用一个方法",因为我们关心的不是返回值,而是方法调用的其他效果.所以假如我们象下面这样调用

浅入深讲解prototype的具体使用方法

文章简介:但是在实际的编程过程中不知道有没有感觉到现有方法的不足?prototype 方法应运而生!下面,将通过实例由浅入深讲解 prototype 的具体使用方法. prototype 是在 IE 4 及其以后版本引入的一个针对于某一类的对象的方法,而且特殊的地方便在于:它是一个给类的对象添加方法的方法!这一点可能听起来会有点乱,别急,下面我便通过实例对这一特殊的方法作已下讲解: 首先,我们要先了解一下类的概念,JavaScript 本身是一种面向对象的语言,它所涉及的元素根据其属性的不同都依

主类型的过载

主(数据)类型能从一个"较小"的类型自动转变成一个"较大"的类型.涉及过载问题时,这会稍微造成一些混乱.下面这个例子揭示了将主类型传递给过载的方法时发生的情况:   //: PrimitiveOverloading.java // Promotion of primitives and overloading public class PrimitiveOverloading { // boolean can't be automatically converted

seo终极优化方法之分析研究

先 搜索引擎的友好 什么是搜索引擎的友好呢?也就是让搜索引擎很快的抓取,了解它的脾气,具我的了解搜索引擎对于难以处理和识别的打字稿.复数.连字号等等各种各样的问题,搜索的准确度会降低.显然,如果搜索引擎刻意去迎合这种错误使用的话,会伤害到所有的搜索使用者.所以,这就牵涉到一个搜索匹配度,一个相关的问题是,搜索引擎区分结果是依靠文档的重要性,而只是按照内容关联次数简单地进行结果区分.再一个区分的方法就这文章里面出现关键词的次数,搜索引擎可以判断出是不是搜索者想要的这个结果.如果匹配度很高的话,搜索

[lcm] Qualcomm平台兼容多显示屏lcd的方法&并从lk传输到kernel过程

1如何兼容不同的LCD模组 1-1 通过LCD_ID的电平状态区分 1-2 通过IC的ID区分 1-3 通过LCD_ID和IC ID的结合区分 2LCD初始化过程 3读取LK屏的ID传输到kernel 3-1 LK把相关参数报存到pbuf 3-2 kernel获取LK保存的pbuf 3-3 解析出所用的LCD并初始化 更多相关文章: <高通Qualcomm平台lk(light kernel)启动流程1--aboot_init()之前>: http://blog.csdn.net/u014134

php判断是否为ajax请求的方法_php技巧

本文实例讲述了php判断是否为ajax请求的方法.分享给大家供大家参考,具体如下: 先说前端使用 jQuery 时怎么区分: jQuery 发出 ajax 请求时,会在请求头部添加一个名为 X-Requested-With 的信息,信息内容为:XMLHttpRequest 在后端可以使用 $_SERVER["HTTP_X_REQUESTED_WITH"] 来获取.(注意:中划线换成了下划线,不区分大小写) 由此,我们可以这样来判断是否为 ajax 请求: if(isset($_SERV

《多核与GPU编程:工具、方法及实践》----3.6 monitor

3.6 monitor 信号量提供一个十分方便的机制,如果合适地应用,可以通过多线程的实现来获得最大并行性.然而,这只是"如果".由于它提供十分细粒度且横跨多个线程的程序逻辑并发控制机制,因此高效地使用信号量机制是十分困难的.在面向对象编程时代,信号量已经变得不如从前流行. 幸运的是,存在另一个称为monitor的机制.monitor是一个对象或者模块,可以供多个线程进行安全访问.为了完成这一功能,某个时刻只允许一个线程执行一个monitor的任意一个公有的方法.为了阻塞一个线程或者通

java反射机制如何 得到当前方法的 method对象

问题描述 写了个获取调用方法的method对象的方法,但是无法区分重载方法publicstaticMethodgetCurrentMethod(){StackTraceElement[]yste=Thread.currentThread().getStackTrace();if(yste.length<2){returnnull;}/**getMethodName**/Stringstr="";for(inti=0;i<yste.length;i++){if(yste[i]

几种常用的js数组去重方法

下面这些数组去重的方法是自己收集和整理的,如有不对希望指正文中不对之处. 双重循环去重 这个方法使用了两个for循环做遍历.整个思路是: 构建一个空数组用来存放去重后的数组 外面的for循环对原数组做遍历,每次从数组中取出一个元素与结果数组做对比 如果原数组取出的元素与结果数组元素相同,则跳出循环;反之则将其存放到结果数组中 代码如下: Array.prototype.unique1 = function () {     // 构建一个新数组,存放结果     var newArray = [