【Java学习笔记】(一)Java的语言特点

版权声明:所有笔记均来源于书籍《Java从小白到大牛完整版》
自我勉励:好记性不如烂笔头

1.简单

Java的设计目标之一就是能够方便学习,使用简单。摒弃了C++中容易引发程序错误的地方,如指针、内存管理、运算符重载和多继承。C++程序员可以很快迁移到Java;没有编程经验的初学者也能很快学会Java。

2.面向对象

面向对象是Java的最重要特性。Java是彻底的、纯粹的面向对象语言,在Java中一切都是对象。Java具有面向对象三个基本特性:封装、继承和多态。封装性实现了模块化和信息隐藏,继承性实现了代码的复用,用户可以建立自己的类库。Java采用的是相对简单的面向对象技术,去掉了多继承等复杂概念,只支持单继承。

3.分布式

Java语言是为分布式系统而设计的。JDK(Java Development Kits,Java开发工具包)中包含了支持HTTP和FTP等基于TCP/IP协议的类库。Java程序可以凭借URL打开并访问网络上的对象,其访问方式与访问本地文件系统几乎完全相同。

4.结构中立

Java程序需要在很多不同的网络设备中运行,这些设备有很多不同类型的计算机和操作系统。为能使Java程序能够在网络的任何地方运行,Java编译器生成了与机器结构无关的字节码(byte-code)文件。任何种类的计算机,只要可以运行Java虚拟机,字节码文件就可以在该计算机上运行。

5.可移植

体系结构的中立也使得Java程序具有可移植性。
针对不同的CPU和操作系统Java虚拟机有不同的版本,这样就可以保证相同的Java字节码文件可以移植到不同的平台上运行。

6.解释执行

为实现跨平台,Java设计成为解释执行性的,即Java源代码文件首先被编译成字节码文件,这些字节码文件本身包含许多编译时生成的信息,在运行时候Java解释器负责将字节码解释为特定的机器码进行运行。

7.健壮

Java是强类型语言,它在编译时进行代码检查,使得很多错误能够在编译期被发现,不至于在运行期发生而导致系统崩溃。

Java摒弃了C++指针操作,指针是一种很多强大的技术,能够直接访问内存单元,但同时也很复杂,如果指针操控不好,会导致内存分配错误、内存泄露等问题。而Java中不会出现有指针所导致的问题。

内存管理方面C/C++等语言采用手动分配和释放,经常会导致内存泄露,从而导致系统崩溃。而Java采用自动内存垃圾回收机制,程序员不再需要管理内存,从而减少了错误的发生,提高了程序的健壮性。

8.安全

在Java程序执行过程中,类装载器负责将字节码文件加载到Java虚拟机中,这个过程有字节码效验器检查代码中是否存在着非法操作。如果字节码效验器检验通过,由Java解释器负责把该字节码解释为机器码进行执行,这种检查可以防止木马病毒

另外。Java虚拟机采用的是“沙箱”运行模式,即Java程序的代码和程序都限制在一定的内存空间里执行,不允许程序访问该内存空间外的内存。

9.高性能

Java编译器在编译时对字节码进行一些优化,使之生成高质量代码。Java字节码格式就是针对针对机器码转换而设计的,实际转换时相对简便。Java在解释运行时采用一种即使编译技术,可是Java程序的执行速度提升很大。多年的发展Java虚拟机有很多的改进这都使Java程序的执行速度提升很大。

10.多线程

Java是为网络编程而设计的,这要求Java能够并发处理多个任务。Java支持多线程编程,多线程机制可以实现并发处理多个任务,互不干涉,不会由于某一个任务处于等待状态而影响了它的任务执行,这样就可以容易实现网络上的实时交互操作。

11.动态

Java应用程序在运行过程中,可以动态的加载各种类库,即使是更新类库也不必重新编译使用这一类库的应用程序。这一特点使之非常适合网络环境下运行,同时也非常有利于软件开发。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

叶叶扁舟

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值