Java作业1-02:Java语言都有哪些特点?

Java语言的特点

首先放一下Sun公司对Java的定义

A simple, object-oriented, distributed, interpreted, robust,
secure, architecture-neutral, portable, high-performance, 
multi-threaded, and dynamic language。

翻译如下:Java是一种具有“简单、面向对象、分布式、解释型、健壮、安全、与体系结构无关、可移植、高性能、多线程和动态执行”等特性的语言。

就从上面挑几个特点写一下我的愚见吧。

1 面向对象

Java是纯面向对象的语言,这一点与Python、C++很不同,Python与C++都既支持面向对象又支持面向过程,这也就不难理解为什么很多人用C++写着C程序了。

2 与体系结构无关

这个特点也叫做跨平台,核心思想是Write once, run anywhere!

先说一下与体系结构有关的语言会有什么问题。
如果是在windows上面用C或C++写的程序,在windows上面编译后可以运行,但编译后的可执行文件无法在linux系统上运行,反之亦然,也就是说,不同的平台需要重新从源码编译,有时可能会因为环境问题会编译不通过,这就需要重修修改源码,可想而知是多么麻烦!

但在Java语言中,只需要编译一次,便可以在不同的系统上面运行,这主要是通过Java虚拟机(JVM)实现的,请先看下图:

Java虚拟机与Java程序、操作系统之间的关系

上图中,最下面是三种操作系统(Windows,Linux与Mac),中间是Java虚拟机,最上面是程序员写的Java程序,颜色相同表示该程序可以在该操作系统上运行。可以看到,Java虚拟机在其中作为一个桥梁,Java程序只需要与Java虚拟机进行适配,而不需要与不同的操作系统进行适配,从而也就实现了Write once, run anywhere!的功能。

Java虚拟机为了与不同的操作系统进行适配,制造出了字节码的概念,这个字节码是与不同的操作系统无关的。Java源码首先编译为字节码,然后Java虚拟机将字节码解释成不同操作系统上的机器码,从而执行程序。

3 解释性语言

Java程序的执行过程:Java程序首先经过编译后会得到字节码文件(后缀为class文件),然后再由虚拟机对字节码文件进行解释从而执行程序。
官方对Java的定义中是解释型语言,不过Java也带有编译型语言的特点,算作“半编译,半解释”吧,这里就不做过多讨论了。

End

就先写到这里,等以后学习Java更深入后并对Java的其他特点有了深入的体会之后再来更新。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值