1. JAVA语言的特点
Java语言有许多特点,显著的有:简单性、面向对象、分布式、编译和解释性、稳健性、安全性、可移植性、高性能、多线索性、动态性。
- 简单性:Java语言继承了C++语言的优点,去掉了C++中学习起来比较难的多继承、指针等概念,所以Java语言学习起来更简单,使用起来也更方便。
- 面向对象:Java是一种面向对象的编程语言。
- 分布式:Java设计成支持在网络上应用,它是分布式语言。所以只要用Java编写了一个程序,就可以到处应用。可以节省大量人力物力。
- 编译和解释性:Java编译程序生成字节码,而不是通常的机器码,这使得Java开发程序比用其他语言开发程序快很多。
- 稳健性:Java刚开始被设计出来就是为了写高可靠和稳健的软件。所以用Java写可靠的软件很容易。目前许多第三方交易系统、银行平台的前台和后台电子交易系统等都会用Java语言开发。
- 安全性:Java适用于网络/分布式环境。Java的存储分配模型是它防御恶意代码的主要方法之一。因此很多大型企业级项目的开发都会选择用Java。
- 可移植性:Java并不依赖平台,用Java编写的程序可以运用到任何操作系统上。
- 高性能:Java是一种先编译后解释的语言,所以它不如全编译性语言快。但Java设计者制作了“及时”编译程序,这样就可以实现全编译了。
- 多线索性:Java是多线索语言,它可以同时执行多个程序,能处理不同任务。
- 动态性:Java语言设计成适应于变化的环境,它是一个动态的语言。
2. Java、C/C++、Python等语言的不同
语言自身:
- C语言是面向过程的语言。一般来说,C语言编写的代码需要经过编译、链接最后形成可执行文件,这些行为有编译器完成,开发者只需要写代码即可。
- C++作为一种面向对象语言,全面兼容了C语言,换而言之,C是C++的子集。相比于C,C++引入了类、多态、RTTI、RAII等机制,相对的说,从源码到可执行文件的过程和C语言几乎一样。
- Java语言作为面向对象高级语言,也有类、多态等概念,生态非常强大,一般来说,Java代码需要经过javac编译成字节码文件,也就是.class文件,这个文件可以在不同的平台上直接运行,但需要安装对应平台的jvm。
- Python作为一种解释性的胶水语言,没有针对机器代码的编译,每一条语句的执行都是直接对源代码或者中间代码进行解释运行。而少了这个编译的过程,使得解释型语言运行相对较慢。
用途:
- C 主要用来做嵌入式应用 、算法实现、 服务开发等。
- C++主要做图形图像处理、服务开发等。
- Java主要用在服务接口开发,大多数mis系统的后台接口都用java开发。
- Python用途相对还是广泛的,像网络爬虫、数据分析、自动化运维、人工智能等。
跨平台:
- C,C++属于代码级别的跨平台,须针对不同的平台进行编译。
- 而java,python直接所谓的编译得到字节码文件(.class, .pyc),然后可以在任意平台上运行,当然这个平台上必须安装对于的jvm, 或pvm。也就达到了“一处编码,到处运行”的效果。