有考网有考网合作机构>浦东新区培训学校>上海浦东新区职坐标IT培训
上海浦东新区职坐标IT培训
全国统一学习专线 8:30-21:00
位置:有考网 > 计算机类>Java开发> Java开发语言主要有什么特点?  正文

Java开发语言主要有什么特点?

发布时间:2022-02-09 13:58:06来源:转载

Java开发语言主要有什么特点?Java语言是适用于分布式计算环境的面向对象编程语言,它虽类似C和C++,但比C++简单,忽略了许多为提高计算效率,初学者较难掌握的程序语言特性。

Java语言主要有以下特点:

1.强类型

Java语言是一种强类型语言,强类型能约束程序员必须遵守更多的编程规定,也能让编译器检测出程序中尽可能多的错误。

2.编译和解释

Java语言是一种编程语言,用Java语言编写的源程序在计算机上运行需经过编译和解释执行两个严格区分的阶段。Java语言的编译程序先将Java源程序翻译成机器无关的字节码(bytecode),不是通常的编译程序将源程序翻译成计算机的机器代码。运行时,Java的运行系统和链接需要执行的类,并作必要的优化后,解释执行字节码程序。

3.自动无用内存回收功能

Java语言具有自动无用内存回收功能,程序可以按需使用内存,但不需要对无用内存显式地撤销分配。系统有一个垃圾收集器(garbage collector),自动收集程序不再使用的内存。这样,能避免显式的撤销分配所引起的安全问题。Java语言不再含有任何不安全的语言成分。例如,没有指针,数组元素都要检查下标是否越界。

4.面向对象

面向对象是程序员编写大型程序、有效控制程序复杂性的重要手段。Java语言在面向对象方面,比C++更“纯”,它的所有数据类型,包括布尔类型、整形、字符型等,都有相应的类,程序可完全基于对象编写。

面向对象语言主要有封装性、继承性和多态性三个特点。封装就是将实现细节隐藏起来,只给出如何使用的信息。数据及数据上的操作用类封装,对象是类的实例,外界使用对象中的数据及可用的操作受到一定的限制。继承体现众多的一种层次对象的特性,下一层的类可从上一层的类继承定义,从上一层类派生的类的对象能继承上一层对象的特性,同时可以改变和扩充一些特性,以适应其自身的特点。多态性的意义主要体现在逻辑上相同的不同层次上的操作,使用相同的操作名,根据具体对象,能自动选择对应的操作。Java语言很实用地实现了这三种特性。

5.与平台无关

与平台无关是对程序可移植性较直接较有效的支持。Java语言的设计者在设计时重点考虑了Java程序的可移植性,采用多种机制来增加可移植性,其中较主要的是定义了一种虚拟机(virtual machine),以及虚拟机使用的java字节码。在任何平台上,Java源程序被Java编译器编译成虚拟机能够识别的字节码。这样,只要有Java虚拟机的平台,就能解释执行java字节码程序,从而实现Java与平台无关。另外,Java语言还采用基于国际标准的数据类

型,在任何平台上,同上种数据类型是一致的。例如,用int标识32位二进制位(bit)整型数据,那么无论在哪一台计算机上,Java的int数据都是32位整数。相反,C语言会随着硬软件平台的改变,用int标识的整数位数也可能不全相同。

Java语言提高可移植性的代价是降低程序的执行效率。出于java语言也是一种解释执行的语言,Java程序的执行速度与C程序的执行速度有较大的差别。不过,为了尽量弥补执行效率低的缺陷,java的字节码在设计上非常接近现代计算机的机器码,这有助于提高解释执行的速度。

6.安全性

Java是在网络环境中使用的编程语言,必须考虑安全性问题,主要有以下两个方面:设计的安全防范:Java语言没有指针,避免程序因为指针使用不当,访问不应该访问的内存空间;提供数组元素上标检测机制,禁止程序越界访问内存;提供内存自动回收机制,避免程序遗漏或重复释放内存。

运行安全检查:为了防止字节码程序可能被非法改动,解释执行前,先对字节码程序作检查,防止网络“黑客”对字节码程序已作了恶意改动,达到破坏系统的目的。较后,浏览器限制下载的小应用程序不允许访问本地文件,避免小应用程序破坏本地文件。

7.分布式计算

Java语言支持客户机/服务器计算模式。Java程序能利用URL对象,能访问网络上的对象,如同访问本地的文件一样,实现数据分布。另外,Java的客户机/服务器模式也可以把计算从服务器分散到客户机端,实现操作分布。

8.多线程

线程是比进程更小的一种可并发执行的单位,每个进程都有自己独立的内存空间和其他资源,当进程切换时需要进行数据和资源的保护与恢复。若干协同工作的线程可以共享内存空间和资源,线程切换不需要数据的保护与恢复。

Java的运行环境采用多线程实现,可以利用系统的空闲时间执行诸如内存回收等操作;Java语言提供语言级多线程支持,用Java语言能直接编写多线程程序。

相关内容: Java开发 Java开发的特点 职坐标IT教育

同类文章
最新文章
相关热词
导航

雅思 托福 GRE SSAT SAT GMAT ACT 个人提升英语 英语四六级 多邻国英语测试 词库 IB 英语口语 商务英语 公共英语 考研英语 青少儿英语 成人英语 A-Level 学生英语 初高中英语 OSSD AP课程 AEAS个性化定制课程 一级建造师 二级建造师 消防工程师 消防设施操作员 BIM 造价工程师 环评师 监理工程师 咨询工程师 安全工程师 建筑八大员 公路水运检测 通信工程 装配式工程师 注册电气工程师 二级注册建筑师 一级注册建筑师 智慧消防工程师 智慧建造工程师 全过程工程咨询师 EPC 碳排放管理师 ACCA CFA 注册会计师 会计证 初中级经济师 初级会计师 中级会计师 基金从业 证券从业 税务师 薪税师 企业合规师 会计就业实操 期货从业 FRM CMA CQF 教师资格 人力资源管理 导游考试 心理咨询师 健康管理师 社会工作师 普通话 育婴员 物流师 家庭教育指导师 专利代理师 教师招聘 儿童专注力 儿童情绪管理 法律职业资格 少儿编程 书法培训 国画 茶艺 乐器音乐 舞蹈 棋类 机器人编程 戏曲培训 信奥赛C++ 少儿小主播 口才培训 篮球培训 商务办公 影视后期 剪辑包装 游戏设计 游戏程序 UI设计 室内设计 photoshop CAD制图 视觉设计 商业空间设计 平面设计