第一章 java程序设计概述

java的特性

    1. 简单性

    java删除了C++中许多很少使用、难以理解、易混淆的特性。例如头文件、指针运算(甚至指针语法)、结构、联合、操作符重载、虚基类等等。

    1. 面向对象
    2. 分布式
    • 什么是分布式

    分布式是研究如何把一个需要非常巨大的计算能力才能解决的问题分成许多小的部分,然后把这些部分分配给多个计算机进行处理

    1. 健壮性
    • java编译器能够检测许多在其他语言中仅在运行时刻才能检测出来的问题
    • java不会存取一个“坏的”指针,造成内存分配错误,也不必防范内存泄漏
    1. 安全性
    • 禁止运行时堆栈溢出。例如,蠕虫等病毒常用的袭击手段
      什么是蠕虫病毒
      蠕虫是一种可以自我复制的代码,并且通过网络传播,通常无需人为干预就能传播。蠕虫病毒入侵并完全控制一台计算机之后,就会把这台机器作为宿主,进而扫描并感染其他计算机。当这些新的被蠕虫入侵的计算机被控制之后,蠕虫会以这些计算机为宿主继续扫描并感染其他计算机,这种行为会一直延续下去。蠕虫使用这种递归的方法进行传播,按照指数增长的规律分布自己,进而及时控制越来越多的计算机。
    • 禁止在自己的处理空间之外破坏内存
    • 未经授权禁止读写文件
    1. 体系结构中立
    2. 可移植性
    • java作为一种编程语言:源代码可移植性
      作为一种编程语言java提供了一种最简单同时也是人们最熟悉的的可移植性–源代码可移植。这就意味着任何一个java程序,不论它运行在何种cpu、操作系统或者java编译器器上都产生一样的结果。这是不是一个新概念,人们使用c或者c++也产生同样的效果,但是使用c或者c++的人们有太多的选择,在许多细节上它都没有严格的定义。这样就导致了同一段程序在不同的环境下会产生不同意外的结果。而java就不同了,由于严密的语义结构,而使编译器不承担这一职责。
    • java作为一个虚拟机:cpu可移植性
      大多数编译器产生的目标代码只能运行在一种cpu(如Intel的x86系列),即使那种支持多种编译器的目标代码,也不能产生适合多种cpu的目标代码。
      而java不一样,java编译器产生的目标代码针对的是一种并不存在的cpu–java虚拟机,而不是一种具体的cpu。java虚拟机能掩盖不同cpu之间的差别,从而使java-code运行在安装有虚拟机的机器上。
    • java作为一种虚拟的操作系统和图形用户界面:操作系统的可移植。
      即使经过重新编译,大多数的用C和C++编写的Windows程序也不能在Unix或Macintosh系统上运行。这是为什么呢?因为程序员在编写Windows程序时使用了大量的WindowsAPI和中断调用,而Windows程序对系统功能的调用与Unix和Macintosh程序有很大的差别,所以除非将全套WindowsAPI移植到其它操作系统上,否则重编译的程序仍不能运行。
      JAVA采用了提供一套与平台无关的库函数(包括AWT、UTIL、LANG等等)的方法来解决这个问题。就象JVM提供了一个虚拟的CPU一样,JAVA库函数提供了一个虚拟的GUI环境。
    1. 解释性
    2. 高性能
    3. 多线程
    4. 动态性
    • 0
      点赞
    • 0
      收藏
      觉得还不错? 一键收藏
    • 0
      评论

    “相关推荐”对你有帮助么?

    • 非常没帮助
    • 没帮助
    • 一般
    • 有帮助
    • 非常有帮助
    提交
    评论
    添加红包

    请填写红包祝福语或标题

    红包个数最小为10个

    红包金额最低5元

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

    抵扣说明:

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

    余额充值