浅谈和C++相比,Java有哪些技术的优势
答案:1 悬赏:60 手机版
解决时间 2021-11-25 20:20
- 提问者网友:几叶到寒
- 2021-11-24 19:44
浅谈和C++相比,Java有哪些技术的优势
最佳答案
- 五星知识达人网友:未来江山和你
- 2021-11-24 21:23
以下为复制的内容:
C++相比,Java有哪些技术的优势呢?
在对Java程序设计有一定了解的基础上,可以从简单性、面向对象、健壮性、可移植性等几个方面来进行讨论。
只有对这些特性进行较为充分的了解之后才能在编程中最大限度地发挥Java的语言优势。
一、简单性
在Java的基本语法中剔除了一些C++中比较晦涩的语法,可以说学Java的语法和C++相比更加容易。
在Java中已经不再使用诸如头文件、指针运算、结构、联合、操作符重载、虚基类等内容。
不过用Java实现同样的效果也是需要手动敲代码的,有时甚至代码量还相当大,这也就是用Java写项目的代码量要比C++大很多的原因。
所以用C++开发比较节省内存,但随着硬件的不断更新,其实人们更重视功能的实用性。
二、面向对象
可能在初次基础Java的时候,教材就会告诉你Java是一门面向对象的编程语言。
那么,什么是面向对象?
对象就是讲数据和数据的操作方法集成到一起,从而形成一个整体的对象。
面向对象设计,从本质来说是一种程序设计技术,更关注对象和对象的接口上,并非过程。
和Java一样,C++同样是面向对象的语言,两者的不同在于多继承,在Java中更多的使用接口概念。
三、健壮性
Java的健壮性可以理解为Java的跨平台编译和运行。
编译好的程序在Windows中可以运行,放在Linux里同样可以运行。
除此之外Java编译器能够检测许多在其他语言中仅在运行时才能够检测出来的问题。
同时和C++相比,不需要使用指针构造字符串、数组等结构,避免其指针模型消除重写内存和损坏数据的可能性。
四、可移植性
说到Java的可移植性,就需要提到Java虚拟机JVM *.java被编译成字节码文件,从而可以在任何平台运行JVM有自己的一套指令系统,
不同的平台上JVM的指令也不尽相同,但是JVM向上的字节码接口是与平台无关的,JVM接口向下与硬件相关
JVM的角色是中间件,使得Java可以跨平台运行,从而具有可移植性。
五、多线程
所谓线程就是代码执行流,各种任务可以交互执行。多线程就会多个执行流聚合在一起由CPU进行调度。
Java的线程在操作系统的实现模式依系统不同而不同,可能是系统级别的进程或线程,但对于程序员来说并没有影响。
所有实现runnable接口的类都可被启动一个新线程,新线程会执行该实例的run方法,当run方法执行完毕后,线程就结束了。
Java在不同的机器上调用多线程的编码完全相同,将多线程的实现交给了底层的操作系统或线程库来实现。
浅谈和C++相比,Java有哪些技术的优势?除了以上几点以外,Java还具有Web开发的方便之处,以及高性能和解释行,这些都可以在学Java的过程中深入体会。另外你八成应该是上学堂的:有个规律这学校喜欢比搞一些浅谈xxx之类的问题 : ^_^
C++相比,Java有哪些技术的优势呢?
在对Java程序设计有一定了解的基础上,可以从简单性、面向对象、健壮性、可移植性等几个方面来进行讨论。
只有对这些特性进行较为充分的了解之后才能在编程中最大限度地发挥Java的语言优势。
一、简单性
在Java的基本语法中剔除了一些C++中比较晦涩的语法,可以说学Java的语法和C++相比更加容易。
在Java中已经不再使用诸如头文件、指针运算、结构、联合、操作符重载、虚基类等内容。
不过用Java实现同样的效果也是需要手动敲代码的,有时甚至代码量还相当大,这也就是用Java写项目的代码量要比C++大很多的原因。
所以用C++开发比较节省内存,但随着硬件的不断更新,其实人们更重视功能的实用性。
二、面向对象
可能在初次基础Java的时候,教材就会告诉你Java是一门面向对象的编程语言。
那么,什么是面向对象?
对象就是讲数据和数据的操作方法集成到一起,从而形成一个整体的对象。
面向对象设计,从本质来说是一种程序设计技术,更关注对象和对象的接口上,并非过程。
和Java一样,C++同样是面向对象的语言,两者的不同在于多继承,在Java中更多的使用接口概念。
三、健壮性
Java的健壮性可以理解为Java的跨平台编译和运行。
编译好的程序在Windows中可以运行,放在Linux里同样可以运行。
除此之外Java编译器能够检测许多在其他语言中仅在运行时才能够检测出来的问题。
同时和C++相比,不需要使用指针构造字符串、数组等结构,避免其指针模型消除重写内存和损坏数据的可能性。
四、可移植性
说到Java的可移植性,就需要提到Java虚拟机JVM *.java被编译成字节码文件,从而可以在任何平台运行JVM有自己的一套指令系统,
不同的平台上JVM的指令也不尽相同,但是JVM向上的字节码接口是与平台无关的,JVM接口向下与硬件相关
JVM的角色是中间件,使得Java可以跨平台运行,从而具有可移植性。
五、多线程
所谓线程就是代码执行流,各种任务可以交互执行。多线程就会多个执行流聚合在一起由CPU进行调度。
Java的线程在操作系统的实现模式依系统不同而不同,可能是系统级别的进程或线程,但对于程序员来说并没有影响。
所有实现runnable接口的类都可被启动一个新线程,新线程会执行该实例的run方法,当run方法执行完毕后,线程就结束了。
Java在不同的机器上调用多线程的编码完全相同,将多线程的实现交给了底层的操作系统或线程库来实现。
浅谈和C++相比,Java有哪些技术的优势?除了以上几点以外,Java还具有Web开发的方便之处,以及高性能和解释行,这些都可以在学Java的过程中深入体会。另外你八成应该是上学堂的:有个规律这学校喜欢比搞一些浅谈xxx之类的问题 : ^_^
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯