zoukankan      html  css  js  c++  java
  • 函数签名的概念

    什么是函数签名呢?

    函数签名(或者类型签名或方法签名)定义了函数或方法的输入与输出

    签名可包含:

    •  参数及参数的类型
    •    返回值及其类型
    •    可能抛出或传出的异常
    •    该方法在面向对象程序中可用性方面的信息(如public、static或prototype

    JavaScript中的签名

      JavaScript是一钟松散型或动态语言。这意味着你不必提前声明变量的类型。类型将在程序处理时自动确定。JavaScript中的签名仍然可以为你提供有关该方法的一些信息:

      

    MyObject.prototype.myFunction(value)
    • 该方法是安装在一个名为MyObject的对象上面。
    • 该方法安装在MyObject的原型上(因此它是一个实例方法),而不是static、或pulic
    • 该方法名为myFunction.
    • 该方法接受一个参数,该参数被称为value,并且value没有进一步定义

    C语言中的签名

    C语言中,是一个强类型的语言,在编译的时候就会被确定:

    #include<stdio.h>
    int total(int x , int y);
    int total(int x , int y ,int z);
    int main(){
        int sum;
        sum = total(1,2);
        sum = total(1,2,3);
        printf("%d",sum);
        return 0;
    } 
    int total(int x,int y){
        return x+y;
    }
    int total(int x,int y,int z){
        return x+y+z;
    }
    • int 表示是一个整型的函数,返回值必须是个整数
    • 该函数的名字是total
    • 一个有2个参数,一个有三个参数(且参数都为整型)

    函数能否被重载,取决于函数签名:

    C语言汇总函数可以被重载,因为函数签名有多个,可以重载,而在JavaScript中,函数签名只有函数名一个签名,一旦函数名相同,就会按照后来的函数来进行操作,所以JavaScript不能够被重载。

  • 相关阅读:
    【Spring】IOC核心源码学习(二):容器初始化过程
    啃啃老菜:Spring IOC核心源码学习(一)
    快速理解Kafka分布式消息队列框架
    浅谈分布式缓存那些事儿
    JVM调优总结
    唉,程序员要是自学能力不行就等死吧!
    游戏开发入门
    JVM源码分析-Java运行
    Java阻塞队列的实现
    Java中堆内存和栈内存详解
  • 原文地址:https://www.cnblogs.com/junlebao/p/13281771.html
Copyright © 2011-2022 走看看