java是什么言语?
Java是一门面向对象编程言语,不仅吸收了C++言语的种种长处,还摒弃了C++里难以明白的多继续、指针等观点,因而Java言语具有功用壮大和简朴易用两个特征。Java言语作为静态面向对象编程言语的代表,极好地完成了面向对象理论,许可顺序员以文雅的头脑体式格局举行庞杂的编程。
Java是一个强范例言语,它许可扩大编译时搜检潜伏范例不婚配题目的功用。Java请求显式的要领声明,它不支撑C作风的隐式声明。
Java可以编写桌面运用顺序、Web运用顺序、散布式体系和嵌入式体系运用顺序等。
Java的特征:
Java具有简朴性、面向对象、散布式、健壮性、平安性、平台自力与可移植性、多线程、动态性等特征;下面我们来细致引见一下:
1、简朴性
Java看起来设想得很像C++,然则为了使言语小和轻易熟习,设想者们把C++言语中很多可用的特征去掉了,这些特征是平常顺序员很少运用的。比方,Java不支撑go to语句,代之以供应break和continue语句以及非常处置惩罚。Java还剔除了C++的操作符过载(overload)和多继续特征,而且不运用主文件,免去了预处置惩罚顺序。由于Java没有组织,数组和串都是对象,所以不须要指针。Java可以自动处置惩罚对象的援用和间接援用,完成自动的无用单位收集,运用户没必要为存储治理题目懊恼,能更多的时候和精神花在研发上。
2、面向对象
Java言语供应类、接口和继续等面向对象的特征,为了简朴起见,只支撑类之间的单继续,但支撑接口之间的多继续,并支撑类与接口之间的完成机制(关键字为implements)。Java言语周全支撑动态绑定,而C++言语只对虚函数运用动态绑定。总之,Java言语是一个纯的面向对象顺序设想言语。
3、散布性
Java设想成支撑在收集上运用,它是散布式言语。Java既支撑种种条理的收集连接,又以Socket类支撑牢靠的流(stream)收集连接,所以用户可以发生散布式的客户机和服务器。
收集变成软件运用的散布运载工具。Java顺序只需编写一次,便可随处运转。
4、编译和诠释性
Java编译顺序生成字节码(byte-code),而不是一般的机械码。Java字节码供应对体系组织中性的目的文件花样,代码设想成可有效地传送顺序到多个平台。Java顺序可以在任何完成了Java诠释顺序和运转体系(run-time system)的体系上运转。
在一个诠释性的环境中,顺序开辟的规范“链接”阶段大大消逝了。如果说Java另有一个链接阶段,它只是把新类装进环境的历程,它是增量式的、轻量级的历程。因而,Java支撑疾速原型和轻易实验,它将致使疾速顺序开辟。这是一个与传统的、耗时的“编译、链接和测试”构成鲜明对比的精致的开辟历程。
5、妥当性
Java原来是用作编写消费类家用电子产品软件的言语,所以它是被设想成写高牢靠和妥当软件的。Java消除了某些编程毛病,使得用它写牢靠软件相称轻易。
Java的强范例机制、非常处置惩罚、垃圾的自动收集等是Java顺序健壮性的重要保证。对指针的抛弃是Java的明智挑选。Java的平安搜检机制使得Java更具健壮性。
6、平安性
Java的存储分派模子是它防备歹意代码的重要要领之一。Java没有指针,所以顺序员不能获得隐藏起来的内情和捏造指针去指向存储器。更重要的是,Java编译顺序不处置惩罚存储部署决议计划,所以顺序员不能经由过程检察声明去猜想类的现实存储部署。编译的Java代码中的存储援用在运转时由Java诠释顺序决议现实存储地点。
Java运转体系运用字节码考证历程来保证装载到收集上的代码不违犯任何Java言语限定。这个平安机制部份包含类怎样从网上装载。比方,装载的类是放在离开的名字空间而不是局部类,防备歹意的小运用顺序用它自身的版原本替代规范Java类。
7、可移植性
Java使得言语声明不依赖于完成的方面。比方,Java显式申明每一个基础数据范例的大小和它的运算行动(这些数据范例由Java语法形貌)。
Java环境自身对新的硬件平台和操作体系是可移植的。Java编译顺序也用Java编写,而Java运转体系用ANSIC言语编写。
8、高机能
Java是一种先编译后诠释的言语,所以它不如全编译性言语快。然则有些状况下机能是很要紧的,为了支撑这些状况,Java设想者制作了“实时”编译顺序,它能在运转时把Java字节码翻译成特定CPU(中央处置惩罚器)的机械代码,也就是完成全编译了。
Java字节码花样设想时考虑到这些“实时”编译顺序的须要,所以生成机械代码的历程相称简朴,它能发生相称好的代码。
9、多线程
在Java言语中,线程是一种特别的对象,它必须由Thread类或其子(孙)类来建立。一般有两种要领来建立线程:
1)、运用型构为Thread(Runnable)的组织子类将一个完成了Runnable接口的对象包装成一个线程,
2)、从Thread类派生出子类并重写run要领,运用该子类建立的对象即为线程。值得注意的是Thread类已完成了Runnable接口,因而,任何一个线程均有它的run要领,而run要领中包含了线程所要运转的代码。线程的运动由一组要领来掌握。Java言语支撑多个线程的同时实行,并供应多线程之间的同步机制(关键字为synchronized)。
10、动态性
Java言语的设想目的之一是适应于动态变化的环境。Java顺序须要的类可以动态地被载入到运转环境,也可以经由过程收集来载入所须要的类。这也有利于软件的升级。别的,Java中的类有一个运转时候的示意,能举交运转时候的范例搜检。
11、平台自力性
Java顺序(后缀为java的文件)在Java平台上被编译为体系组织中立的字节码花样(后缀为class的文件),然后可以在完成这个Java平台的任何体系中运转。这类门路适合于异构的收集环境和软件的分发。
相干视频教程引荐:《Java教程》
以上就是java是一种什么言语?的细致内容,更多请关注ki4网别的相干文章!