java基础篇(一)——认识java
2016-11-27 15:59
169 查看
引言
自己学过J2SE,也学过J2EE,但是仍然不能很明白的了解java这门语言?为什么哪?因为理论上我并不知道java到底如何产生,如何兴起,如何得到了广大编程“老爷”的热爱,只是知道它很好,很重要,为什么好,为什么重要就变得不重要了。这样的学习缺少了一种东西——方向。——灯在哪里,路就在那里。概述
本篇博客是java系列博客的第一篇,也是java基础篇博客的第一篇。本篇博客主要介绍java的来源,以及它为什么受到IT界的欢迎,说白了就是java的历史,看起来这些不重要,但是为了深入学习,讲究一下是很必要的。内容
一 产生历程1 Games Gosling(詹姆斯·高斯林)小组对Oak语言进行了小规模的改造,1995年3月23日诞生,java的诞生标志着互联网时代的开始。
2 Sun公司继Green项目后,经过几年研究,终于在1995年5月23日在SunWorld’95上正式发布java和HotJava浏览器。同年,Netscape等公司先后获得了java的许可证。
3 java作为一种语言,需要强大的开发可作为支持,于是Sun公司在1996年1月23日发布了JDK1.0,之后相应推出了一系列的JDK版本。
4 1998年,Sun公司发布了JSP/Servlet、EJB规范,同时将Java分为J2EE、J2SE和J2ME三种类型,标志着java正式走向世界软件企业。
二 如何定义
Java是一门静态的完全面向对象的编程语言,吸收了C++面向对象的优点,摒弃了多继承和指针的难操作性。
三 特点优势
1 简单性:java自动处理对象的引用和间接引用,实现自动回收无用单元的机制,让编程人员只关注编程问题,简化了编程人员的工作。
2 面向对象:java吸收了C++的精华部分,引入对象和类,同时发展了类(class)和对象(object),提出了包(package),相对于面向过程,面向对象更加关注对象本身,而不是对象操作的过程;简化了编程人员 的思维方式,提高了编程的效率。
3 分布式:java既支持各种层次的网络连接,由以Socket类支持Stream网路连接。
4 稳健性:java语言摒弃了C++语言中一些不稳定的因素,例如go to语句的使用等。同时java引入异常处理,异常并不是错误,而是一种错误预警信号,异常处理语句的使用也是我们java编程人员必须具备的素质之一。
5 安全性:java摒弃指针,所以编程人员不能得到隐蔽起来的内幕和伪造指针去指向存储器来处理数据,同时java编译程序不处理存储安排决策,程序员并不能通过查看声明语句去猜测类的类型,以及类的作用。java运行系统使用字节码验证过程来保证装载到网络上的代码符合java语言的规范。
6 可移植性:java语言声明不依赖于实现。java的可移植性表现在三个独立的方面:源代码、CPU、操作系统。
(1)源代码:java定义了紧密的语意结构,编译器的配置并不影响源代码的语意;同时采用自动回收机制,使程序不能越界访问内存。这些小地方的规范,减少在不同平台上运转的java程序之间的差异。
(2)CPU:这个移植性是依据java虚拟机(JVM)而言的,由于java编译器发生的目标代码针对于java虚拟机,并不是一种实际的CPU,所以掩盖了不同CPU之间的差距,使得目标代码可以运行再任何具有java虚拟机的机器上。
(3)操作系统移植性:这一特性针对java作为一种虚拟的操作系统(OS)和图形用户界面(GUI)而言的。java采用一套与平台无关的库函数,提供了一个虚拟的GUI环境。
7 高性能:java虽然是先编译后解释的语言,特殊情况下仍然可以采用全编译。java字节码格式设计时考虑到这种需要全编译的需要,所以生成机器代码的过程相当简单,产生更好的代码。
8 动态性:java语言适应于变化的环境,是一种动态的语言,这里的动态是环境的改变,要与定义中的静态区分开。
四 使用领域
java的应用领域包括:Android应用、金融企业的服务器程序、网站、嵌入式领域、大数据领域、高频交易空间、科学应用。应用领域的广泛可见java语言的适应性和兼容性的强大,不同领域对应不同的特性,例如科学应用方面:安全性和稳定性要求的要更高。
总结
本篇博客简单普及java的发展历程,以及java的特点与应用,这些理论知识对于我们能在java这条路上走多远是至关重要的。相关文章推荐
- java入门-基础篇1认识java
- 全面认识JAVA
- Java多线程系列--“基础篇”06之 线程让步
- Java 序列化的高级认识
- 认识java的Class类
- 从头认识java-1.8 创建和操纵对象(1)
- JAVA之路(基础篇)
- 消息队列技术终结者(一)—通俗深刻地认识JMS(即Java Message Service)
- JAVA-初步认识-第二章-字符类型的运算续
- 黑马程序员_Java基础篇(六)——泛型
- [Java速成]1. Java快速认识
- V尼熊的java之旅——java基础篇
- 001java面试笔记——【java基础篇】java面试题
- java软件工程师培训学习日记------java语言核心基础之认识JAVA
- java 的初步认识
- Java基础篇笔记(四) ---this的用法,解决类中的成员变量和方法中的参数重名
- 从头认识java-1.2 对象-服务提供者
- 从头认识java-6.6 final(4)-类与忠告
- 重新认识java(十) ---- Enum(枚举类)
- 从头认识java-6.5 向上转型