第一部分 Java基础
1.1 Java简介
Java是一门面向对象的编程语言,它吸收了C++语言的各种优点,还去除了多继承、指针的复杂概念。Java语言具有功能强大和简单易用两个特征。Java语言允许程序员以优雅的思维方式进行复杂的编程。
1.2 Java主要特性
1.2.1 简单性
相比于C++语法,Java语法去除了头文件、指针、结构、联合、操作符重载、虚基类等复杂的概念。此外Java开发环境远远超出其它编程语言的开发环境。
1.2.2 面向对象
在Java语言中,一切都是对象。类之间只能进行单继承,但是接口之间支持的是多继承,并且支持类与接口之间的实现机制(implements)
1.2.3 分布式
Java支持网络编程,它提供了一个专门的编程接口用于网络应用类编程的库,类似于URL/URLConnection/Socket等等,而且这种访问非常便捷
1.2.4 健壮性
Java的编译器可以检查出其他语言仅在运行时才能发现的问题。Java采用的指针模型可以消除重写内存和损坏数据的可能性。
1.2.5 安全性
Java在设计时就能够防范常见的各种攻击,例如堆栈溢出、内存破坏、文件读写(未授权时的读写操作)等。
1.2.6 体系结构中立
Java程序编译后的结果是字节码格式,这种格式是中立的,可以在实现Java平台的任何系统中运行。
1.2.7 可移植性
Java中的基本数据类型的性质是稳定的(例如字长固定),不会随着处理器的变化而产生变化。这也就消除了在跨平台移植程序时可能产生的问题。
1.2.8 解释型
Java程序在运行时,生成的字节码经过Java解释器来解释执行,对于开发过程来说变得更加快捷,也更加具有探索性。
1.2.9 高性能
Java的字节码可以在运行的时刻动态翻译成对应运行这个应用的特定CPU的机器码
1.2.10 多线程
Java是第一个支持并发程序设计的主流语言。
1.2.11 动态性
Java可以适应不断发展的环境,库中可以自由的添加新方法和实例变量。
1.3 Java发展历史
时间 |
版本 |
说明 |
1996.1 |
Java1.0 |
提供解释执行的Java虚拟机 |
1997.2 |
Java1.1 |
确定Java语言基本形态 |
1998.12 |
Java1.2 |
使用JIT编译器技术,改善语言的可迁移性和执行效率 区分SE(桌面和通用应用开发)/EE(企业级应用开发)/ME(移动端开发)对不用的领域在形态和API集合进行划分 |
2000.5 |
Java1.3 |
Corba 作为语言级别的分布式对象技术,成为 J2EE 的一个技术前提。 |
2002.2 |
Java1.4 |
NIO,正则表达式,XML处理器等的支持,Java语言趋于成熟 |
2004.9 |
Java5 |
如注解 (Annotation),装箱 (Autoboxing),泛型 (Generic),枚举 (Enum),foreach 等被加入,提供了 java.util.concurrent 并发包 |
2006.12 |
Java6 |
对虚拟机内部进行改进,同年宣布Java开源 |
2011.7 |
Java7 |
对NIO2 和 Fork/Join 并发包的支持 |
2014.3 |
Java8 |
Lambda表达式的支持,提供函数式编程能力 |
|
Java10 |
.... |
1.4 Java开发环境配置
http://blog.51cto.com/aiilive/2309267
1.5 简单Java程序的实现
1.5.1 Java下的main方法
看一个程序:
public class Test{ //类:其中包含一个或者多个方法,方法必须在类内部声明
public static void main(String[] args){ //方法:类似于C语言中函数的概念
System.out.println("Hello,Java");
System.out.println("My name is:"+args[0]);
}
}
将这段代码保存在记事本中,起名为Test.java,接下来就要开始进行编译和运行了。
1.5.2 Java程序的运行
Java程序要能够运行,首先要通过编译程序对源文件进行编译,生成的.class文件,这个.class文件是字节码。之后这个文件再通过Java虚拟机执行。要能够实际完成这两个操作则需要在cmd窗口执行两个指令
Javac 用于编译
Java 用于运行