Java中API,JVM的含义是啥?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java中API,JVM的含义是啥?相关的知识,希望对你有一定的参考价值。
JVM就是虚拟机,SUN弄出来的你可以理解为一个独立的机器一样的,可以执行JAVA程序,而不用程序员去考虑具体硬件怎么样的。AP(Application Programming Interface,应用程序编程接口)是一些预先定义的函数,目的是提供应用程序与开发人员基于某软件或硬件的以访问一组例程的能力,而又无需访问源码,或理解内部工作机制的细节。具体点说API就是SUN预先开发好的一些程序以及说明文档。通常API只是狭义的指参考文档。 参考技术A JVM就是虚拟机,负责把java代码转换成机器码,让电脑来运行。API就是sun公司做的类和方法,主要是帮助程序员来减少代码量,白话说就是人家把工具包装好了,直接拿个简单的工具就能用,不用自己带使用源代码敲了。例如:你想去某个地方,你就不用自己在造汽车了,sun公司API已经有现成的汽车了,你直接开起来就OK了。 参考技术B JVM,全称Java Virtual Machine(java虚拟机),因为java具有跨平台性,那么它是怎么做到的呢,就是利用java虚拟机实现的,它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的,所以Java程序只需生成在Java虚拟机上运行,这样只要你电脑或手机上有java环境,都可以运行java程序。
API,全称(Application Programming Interface,应用程序编程接口),什么意思呢,就是里面提供了很多已经写好了的类的使用方法,使用时只要查找文档就可以了,API是开发人员必备文档! 参考技术C JVM是JAVA虚拟机的意思,API是接口的意思,可以理解成他是JDK那些类库的详细介绍的文档 参考技术D API就是对某个框架或开发好的程序包的说明使用文档。
JVM是JAVA虚拟机的意思
C# 中变量名中 @ 字符的用途/含义是啥?
【中文标题】C# 中变量名中 @ 字符的用途/含义是啥?【英文标题】:What's the use/meaning of the @ character in variable names in C#?C# 中变量名中 @ 字符的用途/含义是什么? 【发布时间】:2010-09-10 15:31:15 【问题描述】:我发现您可以在 C# 中以“@”字符开头变量名。 在我的 C# 项目中,我使用了一个用 Java 编写的 Web 服务(我向我的项目添加了一个 Web 引用)。 WSDL 中定义的接口对象之一有一个名为“params”的成员变量。显然,这是 C# 中的保留字,因此您不能拥有具有名称为“params”的成员变量的类。生成的代理对象包含如下所示的属性:
public ArrayList @params
get return this.paramsField;
set this.paramsField = value;
我搜索了 VS 2008 c# 文档,但找不到任何相关信息。也搜索谷歌并没有给我任何有用的答案。那么变量/属性名称中“@”字符的确切含义或用法是什么?
【问题讨论】:
【参考方案1】:另一个用例是扩展方法。第一个特殊参数可以用@this
名称来区分以表示其真正含义。一个例子:
public static TValue GetValueOrDefault<TKey, TValue>(
this IDictionary<TKey, TValue> @this,
TKey key,
TValue defaultValue)
if (!@this.ContainsKey(key))
return defaultValue;
return @this[key];
【讨论】:
【参考方案2】:直接来自C# Language Specification、Identifiers (C#) :
前缀“@”允许使用 关键字作为标识符,即 与其他人交互时很有用 编程语言。性格 @ 实际上不是 标识符,所以标识符可能是 在其他语言中被视为正常 标识符,不带前缀。一个 带有@前缀的标识符被调用 一个逐字的标识符。
【讨论】:
支持@
的.NET的目标最小版本是什么?
.NET 本身并没有像 C# 语言规范那样定义 @
符号。它从第一个版本 C# 1.0(与 .NET 1.0 一起发布)开始支持这一点。 csharpindepth.com/articles/chapter1/Specifications.aspx
对于那些想知道的人,在 VB.NET 中,您可以使用 [ ]
指定逐字标识符,例如Dim [String] As String
.【参考方案3】:
@
符号允许您使用保留关键字作为变量名。比如@int
、@string
、@double
等
例如:
string @public = "Reserved Keyword used for me and its fine";
上面的代码可以正常工作,但下面的代码就不行了:
string public = "This will not compile";
【讨论】:
【参考方案4】:您可以使用它来使用保留关键字作为变量名,如
int @int = 3;
编译器将忽略@
并将变量编译为int
使用思想并不是一种常见的做法
【讨论】:
【参考方案5】:与 Perl 的符号不同,C# 中变量名前的 @
前缀没有任何意义。如果x
是一个变量,@x
是同一变量的另一个名称。
> string x = "abc";
> Object.ReferenceEquals(x, @x).Dump();
True
但@
前缀确实有一个用途,正如您所发现的那样 - 您可以使用它来阐明 C# 否则会拒绝为非法的变量名称。
> string string;
Identifier expected; 'string' is a keyword
> string @string;
【讨论】:
【参考方案6】:在 C# 中,at (@) 字符用于表示明确不遵守语言规范中相关规则的文字。
具体来说,它可用于与保留关键字冲突的变量名称(例如,您不能使用 params,但可以使用 @params 代替,与语言规范中的 out/ref/任何其他关键字相同)。此外,它还可用于未转义的字符串文字;这与路径常量特别相关,例如而不是path = "c:\\temp\\somefile.txt"
,你可以写path = @"c:\temp\somefile.txt"
。它对正则表达式也非常有用。
【讨论】:
有趣的一点(和有用的助记符)“verbatim-”或“here-strings”和参数命名之间的约定是相同的。 【参考方案7】:如果我们使用关键字作为标识符的名称,我们会得到一个编译器错误“identifier expected, ‘Identifier Name’ is a keyword” 要克服此错误,请在标识符前加上“@”。这样的标识符是逐字标识符。 字符 @ 实际上不是标识符的一部分,因此标识符在其他语言中可能被视为普通标识符,没有前缀
【讨论】:
【参考方案8】:它只是允许您使用保留字作为变量名。前几天我想要一个名为event
的变量。我本来打算改用_event
,但我的同事提醒我,我可以直接叫它@event
。
【讨论】:
【参考方案9】:它只是让您使用保留字作为变量名。恕我直言,不推荐(除非您遇到这种情况)。
【讨论】:
@rslite: +1 不推荐 :) > never +1 不推荐,但永远不要说永远。例如,您可能需要实现使用 C# 关键字作为标识符的旧 COM 接口。或者微软可能会在新版本的框架中引入新的关键字 - 例如。 .NET 1.1 债券交易应用程序中的收益 :) @Joe:新的yield
关键字不是保留字,只能在无法合法出现标识符的上下文中使用。为 C# 设计新功能时的一个目标是以这样一种方式构造它们,即任何在添加新功能之前合法的程序在添加新功能之前都是合法的并且具有相同的含义。
@Html.TextboxFor( , , , new @class="my-css-class" )
是一个很好的例子,如果不手动编写 HTML 或让 javascript 在稍后阶段更改属性,您就无法真正绕过它。
在开源软件中出现了一种新趋势,即所有变量在 C# 代码中都以“@”符号为前缀。我相信这可能是因为 PHP 软件对变量的这种要求很熟悉。现在很多开源 Web 系统都是用 C# 编码的(过去应该是 PHP)以上是关于Java中API,JVM的含义是啥?的主要内容,如果未能解决你的问题,请参考以下文章