ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

从C++入手,探寻java的特点

2020-09-23 08:31:43  阅读:226  来源: 互联网

标签:java 语言 数据类型 C++ 跨平台 探寻 指针


java的特点

java语言建立在成熟的算法语言和坚实的面向对象理论的基础上,具有强大的应用系统设计能力,其具备的跨平台特型,其具备的跨平台特型、面向对象和可靠性、安全性等特点是它能够充分适应网络需要的无比可拟的优势。

java以更简单、更精炼的方式实现了C++语言的所有功能。java是当今世界信息技术的所有功能。

1.跨平台特型

跨平台特性使java应用程序可以运行在多种操作系统(Windows、UNIX等)平台上,这是java区别其它高级语言的最重要的标志。

java虚拟机中的计时器负责介绍执行字节码文件,将自己码解释成由本地操作系统支持的机器指令,解释一句,执行一句

java虚拟机执行应用程序具有以下特点:

  • 动态性:管理功能全部采用动态方式,如动态分配数组的存储空间、动态创建对象、动态链接数据库等,这些动态特性使java程序适合咋网络上运行。
  • 异常处理:提供可靠的异常处理机制。
  • 线程: 采用多线程方式运行,各线程独立执行,并协调一致地处理共享数据。

2.完全面向对象和简单性

java对c\c++语言的基本语法的改进说明:

  • 不支持全局变量和弘替换
  • 为每种数据类型分配固定长度
  • 进行类型相容性检查,防止不安全的类型转换
  • 不支持goto语句
  • 不支持指针类型,通过引用模型实现了指针的功能。
    (这个是重点,要好好理解这个特点)
  • 不支持结构类型,使用类代替
    (没有struct,只有class)
  • 不支持头文件,用import来声明导入制定包中的类或接口
  • 内容动态存储且自动管理,动态申请数组和对象的存储空间,自动释放空间,没有指针操作方式

java的基本语法说明:

  • 为8种基本数据类型提供相应的基本数据类型包装类,使基本数据类型与类相关联,体现完全面向对象
  • 将数组设计为引用类型,每个数值都有长度属性
  • 不支持全局函数,所有函数都必须写在类中;
    函数内不能用static声明局部变量
  • 不支持友元类和运算符重载,因为友元破坏封装性
  • 提供单继承机制,即一个类只有有个父类。子类不能继承父类的构造方法,但可以继承析构方法。所有成员方法都可以在运行时被覆盖,都是C++含义的虚函数;不支持多继承,提供接口,通过“单继承+接口”方式实现多继承功能

由于java使用下标形式对数组元素进行操作,则不需要使用指针;
方法采用返回值或引用类型参数返回结果,也不需要使用指针;
构造方法采用重载方式,则不需要采用参数默认值形式,避免产生歧义;
通过成员方法实现类的操作,则不需要重载运算符等;

3.可靠性

C++最大的隐患是使用指针和内容缺乏自动管理

(1)语言级别
java语言提供严密的语法规则,在编译和运行时进行严格检查,降低程序出错的可能性。
例如:boolean与int类型数据不能进行运算,数组下标不能越界,避免有效数据被覆盖。
java语言提供异常处理机制,使程序具备在运行过程中及时发现并处理运行时错误的能力。

(2)运行架构级别
java语言提供的资源回收(garbage collection)机制,对内容资源进行自动管理,跟踪程序使用的所有内容资源,自动收回不再使用的内容资源,减轻了程序员的工作量,提高了程序运行的可靠性。

4.安全性

java采用域管理方式的安全模型,无论是本地代码还是远程代码,都可以通过配置策略,设定课访问的资源域

参考《java程序设计使用教程-第5版》叶核亚编著

标签:java,语言,数据类型,C++,跨平台,探寻,指针
来源: https://www.cnblogs.com/zhenyude123123/p/13716136.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有