一、Java简介:
Java 是由 Sun Microsystems 公司于 1995 年 5 月推出的 Java 面向对象程序设计语言和 Java 平台的总称。
Java主要的特性:
1、Java语言是简单的的:
Java语言的语法与C、C++语言接近。Java丢弃了C++中的一些特性,如操作符重载、多继承、自动的强制类型转换。Java语言不使用指针,而是引用,并提供自动分配和回收内存空间。
2、Java语言是每年向对象的:
Java语言提供类、接口和继承等面向对象的特性,支持类之间的单继承,支持接口之间的多继承,支持类与接口之间的视线机制(关键字为implements),支持动态绑定。
3、Java语言是分布式的:
Java语言支持internet应用开发,网络应用编程接口(java net)提供网络应用编程的类库,包括URL、URLConnection、socket、serversocket。Java的RMI(远程方法激活)机制也是开发分布式应用的重要手段。
4、Java语言的健壮性:
Java的强类型机制、异常处理、垃圾的自动收集等是Java程序健壮性的重要保证。Java的安全检查机制使得Java更具健壮性。
5、Java语言的安全性:
Java提供了一个安全机制(类classloader)以防恶意代码的攻击,并提供安全管理机制(类securityManager)让Java应用设置安全哨兵。
6、Java语言的体系结构中立性:
Java程序在Java平台上被编译为体系结构中立的字节码格式(后缀为class的文件),然后可以在实现这个Java平台的任何系统中运行。
7、Java语言的可移植性:
Java系统本身具有很轻的可移植性,Java编译器是用Java实现的,Java的运行环境使用ANSI C实现的。
8、Java语言是解释型的:
9、Java语言是高性能的:
10、Java语言是多线程的:
在Java语言中,线程是一种特殊的对象,它必须由thread类或其子(孙)类来创建。通常有两种方法来创建线程:其一,使用型构为 Thread(Runnable) 的构造子类将一个实现了 Runnable 接口的对象包装成一个线程,其二,从 Thread 类派生出子类并重写 run 方法,使用该子类创建的对象即为线程。值得注意的是 Thread 类已经实现了 Runnable 接口,因此,任何一个线程均有它的 run 方法,而 run 方法中包含了线程所要运行的代码。线程的活动由一组方法来控制。Java 语言支持多个线程的同时执行,并提供多线程之间的同步机制(关键字为 synchronized)。
11、Java语言是动态的:
Java 语言的设计目标之一是适应于动态变化的环境。Java 程序需要的类能够动态地被载入到运行环境,也可以通过网络来载入所需要的类。这也有利于软件的升级。另外,Java 中的类有一个运行时刻的表示,能进行运行时刻的类型检查。
二、Java基础语法:
2.1、类、对象、方法和实例变量的概念:
1)、对象是类的一个实例,有状态和行为。
2)、类是一个模版,它描述一类对象的行为和状态。
3)、方法就是行为,一个类可以有很多方法,逻辑运算、数据修改以及所有动作都在方法中完成。
4)、每个对象都有独特的实例变量,对象的状态由这些示例变量的值决定。
2.2、Hello world例程:
public class HelloWorld {
public static void main(String []args) {
System.out.println("Hello World"); }
}
2.3、基本语法:
☆ 大小写敏感。
☆ 对于所有的类来说,类名的首字母应该大写,如果类名由若干单词组成,那每个单词的首字母应该大写。
☆ 所有的方法名应该以小写字母开头,若方法名含有若干单词,则后面的每个单词首字母大写。
☆ 源文件名必须和类名相同。当保存文件的时候,应该使用类名作为文件名保存,文件名的后缀为.java。
☆ 所有的Java程序由public static void main(String []args) 方法开始执行。
2.4、Java标识符:
类名、变量名以及方法名都被称为标识符。所有标识符都应该以字母(a~z或者A~Z)、美元($)、下划线(_)开始;首字符之后可以是字母(a~z或者A~Z)、美元($)、下划线(_)、数字的任何字符组合;关键字不能用作表示符;标识符是大小写敏感的。
2.5、Java修饰符:
Java使用修饰符来修饰类中方法和属性,主要有两类修饰符:访问控制修饰符(default、public、protected、private)和非访问控制修饰符(final、abstract、static、synchronized)。
2.6、Java变量:
Java变量类型:局部变量、类变量(静态变量)、成员变量(非静态变量)。
2.7、Java数组:
数组是储存在堆上的对象,可以保存多个同类型变量。
2.8、Java枚举:
枚举可以单独声明或者声明在类里面。方法、变量、构造函数也可以在枚举中定义。
2.9、Java关键字:
类别 | 关键字 | 说明 |
访问控制 | private | 私有的 |
protected | 受保护的 | |
public | 公共的 | |
default | 默认 | |
类、方法和变量修饰符 | abstract | 声明抽象 |
class | 类 | |
extends | 扩充、继承 | |
final | 最终值、不可改变的 | |
implements | 实现(接口) | |
interface | 接口 | |
native | 本地、原生方法(非 Java 实现) | |
new | 创建 | |
static | 静态 | |
strictfp | 严格浮点、精准浮点 | |
synchronized | 线程、同步 | |
transient | 短暂 | |
volatile | 易失 | |
程序控制语句 | break | 跳出循环 |
case | 定义一个值以供 switch 选择 | |
continue | 继续 | |
do | 运行 | |
else | 否则 | |
for | 循环 | |
if | 如果 | |
instanceof | 实例 | |
return | 返回 | |
switch | 根据值选择执行 | |
while | 循环 | |
错误处理 | assert | 断言表达式是否为真 |
catch | 捕捉异常 | |
finally | 有没有异常都执行 | |
throw | 抛出一个异常对象 | |
throws | 声明一个异常可能被抛出 | |
try | 捕获异常 | |
包相关 | import | 引入 |
package | 包 | |
基本类型 | boolean | 布尔型 |
byte | 字节型 | |
char | 字符型 | |
double | 双精度浮点 | |
float | 单精度浮点 | |
int | 整型 | |
long | 长整型 | |
short | 短整型 | |
变量引用 | super | 父类、超类 |
this | 本类 | |
void | 无返回值 | |
保留关键字 | goto | 是关键字,但不能使用 |
const | 是关键字,但不能使用 |
2.10、Java注释:
Java 也支持单行以及多行注释。Java注释有三种类型:单行注释、多行注释、文档注释。
2.11、Java继承:
在 Java 中,一个类可以由其他类派生。如果要创建一个类,而且已经存在一个类具有所需要的属性或方法,可以将新创建的类继承该类。利用继承的方法,可以重用已存在类的方法和属性,而不用重写这些代码。被继承的类称为超类(super class),派生类称为子类(sub class)。
2.12、Java接口:
在Java中,接口为对象间相互通信的协议。接口只定义派生要用到的方法,但方法的具体实现完全取决于派生类。