blob: 72f2986f2fe08b44729c22460e5af2ca15b65cde (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
|
---
title: Signature (functions)(函数签名)
slug: Glossary/Signature/Function
tags:
- CodingScripting
- Glossary
- Java
- JavaScript
- 函数签名
translation_of: Glossary/Signature/Function
---
<p>一个<strong>函数签名 (</strong>或<em>类型</em>签名,或<em>方法</em>签名<strong>) </strong>定义了 {{Glossary("Function", "函数")}} 或 {{Glossary("Method", "方法")}} 的输入与输出。</p>
<p>一个签名可以包括:</p>
<ul>
<li>{{Glossary("Parameter", "参数")}} 及参数的 {{Glossary("Type", "类型")}}</li>
<li>一个返回值及其类型</li>
<li>可能会抛出或传回的 {{Glossary("Exception", "异常")}}</li>
<li>有关 {{Glossary("OOP", "面向对象")}} 程序中方法可用性的信息 (例如关键字 <code>public</code>、<code>static</code> 或 <code>prototype)</code>。</li>
</ul>
<h2 id="深入">深入</h2>
<h3 id="JavaScript_中的签名">JavaScript 中的签名</h3>
<p>{{Glossary("JavaScript")}} 是一种<em>松散类型 </em>或 <em>动态</em>语言。这意味着您不必提前声明变量的类型。处理程序时,将自动确定类型。JavaScript 中的签名仍然可以为您提供有关该方法的一些信息:</p>
<pre class="brush: js notranslate">MyObject.prototype.myFunction(value)</pre>
<ul>
<li>该方法是安装在一个名为 <code>MyObject</code> 的 {{Glossary("object", "对象")}}上。</li>
<li>该方法安装在 <code>MyObject</code> 的原型上 (因此它是一个{{Glossary("instance method", "实例方法")}}),而不是一个 {{Glossary("static method", "静态方法/类方法")}} 。</li>
<li>该方法的名称是 <code>myFunction</code>。</li>
<li>该方法接受一个叫 <code>value</code> 的参数, 且没有进一步定义。</li>
</ul>
<h3 id="Java_中的签名">Java 中的签名</h3>
<p>在 {{Glossary("Java")}} 中,签名用于识别虚拟机代码级别的方法和类。你必须在代码中声明变量的类型才能运行 Java 代码。 Java 是<em>严格类型 </em>的,将在编译时检查所有参数是否正确。</p>
<pre class="brush: java notranslate">public static void main(String[] args)</pre>
<ul>
<li><code>public</code> 关键字是一个访问修饰符,指示任何对象都可以调用此方法。</li>
<li><code>static</code> 关键字指示此方法是一个类方法,而不是一个实例方法。</li>
<li><code>void</code> 关键字表指示此方法没有返回值。</li>
<li>该方法的名称为 <code>main</code>。</li>
<li>该方法接受一个类型为 String Array 的参数。它的名是 <code>args</code>。</li>
</ul>
<h2 id="了解更多">了解更多</h2>
<h3 id="基本知识"><code>基本知识</code></h3>
<ul>
<li><span>{{Interwiki("wikipedia", "Type signature#Java", "</span>Java内部类型签名<span>")}} </span>在维基百科上</li>
</ul>
|