Java核心技术——基础概念

Java核心技术

Java基础概念

Java特性

  1. 简单性
    • Java相较于C++去除了头文件、指针运算、结构、联合、操作符重载、虚基类等;
    • Java目标之一是支持开发能够在小型机器上独立运行的软件,由于不断扩展,类库已经相当庞大,并不能很好的运营在小型机器上了,Java微型版(Java Micro Edition)使用于嵌入式设备;
  2. 面向对象
    • 面向对象设计是一种程序设计技术,他将重点放在数据(即对象)和对象的接口上。
    • 于C++不同的是Java的多重继承是更简单的接口概念
  3. 分布式
    • Java 有一个丰富的例程库,用于处理像 HTTP 和 FIT 之类的 TCP/IP 协议。Java 应用程序能够通过 URL 打开和访问网络上的对象,其便捷程度就好像访问本地文件一样。
  4. 健壮性
    • Java能够在编写时就检测出bug
  5. 安全性
    • Java适用于网络/分布式环境
    • 使用Java可以构建防病毒、防篡改的系统,防范各种攻击
      • 运行时堆栈溢出。如蠕虫和病毒常用的攻击手段。
      • 破坏自己的进程空间之外的内存
      • 未经授权的读写
    • 但是Java安全模型并没有原来预想的那么成功,但在那个时代是很超前的设计
  6. 体系结构中立
    • 采用虚拟机生成代码,编译生成一个体系结构中立的目标文件格式
    • 生成的字节码指令与特定的计算机体系结构无关,可以在任何机器上解释执行
    • 解释虚拟机指令肯定会比全速运行机器指令慢很多。 然而, 虚拟机有一个选项,可以将执行最频繁的字节码序列翻译成机器码,这一过程被称为即时编译。
    • Java 虚拟机还有一些其他的优点。它可以检测指令序列的行为, 从而增强其安全性。
  7. 可移植性
    • Java数据格式具有固定大小,消除了在代码移植时,因为编译器不同数据格式的变化
    • 二进制数据以固定的格式进行存储和传输消除了字节顺序的困扰,字符串是标准的Unicode格式存储的
    • 除用户界面相关部分,其他Java库都能很好地支持平台独立性。你可以处理文件、正则表达式、XML、日期和时间、数据库、网络连接、线程等,而不用操心底层操作系统。不仅程序是可移植的,Java API往往也比原生 API 质量更高。
  8. 解释型
    • Java解释器可以在任何移植了解释器的机器上执行Java字节码,链接是一种增量式且轻量级的过程,是开发过程更加快捷
  9. 高性能
    • 字节码可以(在运行时刻)动态地翻译成对应运行这个应用的特定CPU的机器码。
    • 通过编译时的优化提高代码执行的速度,必要时还可以撤销优化
  10. 多线程
    • 多线程可以带来更好地交互响应和实时行为
    • 第一个支持并发程序设计的主流语言
  11. 动态性
    • 能够适应不断发展的环境,库可以自由的添加新方法和实例变量,动态语言可以更容易的实现运行程序的演进

Java发展史

  1. 1996年,Sun发布了Java第一版,并不能用于应用开发,随后进行改进发布了Java 1.1 但仍有局限性
  2. 1998年,发布了Java 1.2版,使图形工具箱更具伸缩性,更加接近“一次编写,随处运行”
  3. Sun还推出了两个版本,用于手机等嵌入式设备的“微型版”和用于服务器处理的“企业版”
  4. 标准版的1.3和1.4对最初的Java 2版本进行了改进,扩展了标准类库,提高了系统性能
  5. 5.0版是自1.1版以来对Java语言做出了重大改进的版本,添加了泛型类型(generic type)(类似于C++的模板)
  6. 2006年,发布版本6,没有对语言方面进行改进,改进了其他性能,并增强了类库
  7. 2009年Sun被Oracle收购,2011年发布Java 7,只做了一些简单的改进
  8. 2014年Java 8发布,提供了“函数式”编程,可以很容易地表述并发执行的计算
  9. 2017年发布Java 9,引入了系统模块,引入了新的响应式流API支持Java 9中的响应式编程
  10. 2018年接连推出Java 10和Java 11,对语言特性进行了改进,优化了系统,在此之前,Java 基本上是两年一个版本,除了 Java SE 7 经过了五年,Java SE 8 经过了三年。在此之后,就是每六个月发布一次新版本。但是不是每个版本都是 LTS(Long-Term-Support)。
  11. 2019年推出Java 12
关于Java 8的特性在以后的学习中讲解
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值