java综述 (一)

2014-11-24 11:49:47 · 作者: · 浏览: 25

JAVA概述:

1、一点历史:

Java1.0:Applet开发

Java1.1:加入嵌入式

Java2分流:

J2SE(Java 2 Platform,Standard Edition)

包含了JDK(Java Development Kit,Java开发工具包),Runtime(运行时),API(Application Programming Interface)。


J2EE(Java 2 Platform,EnterPrise Edition)

包含了JSP(JavaServer Pages),Servlet,EJB(Enterprise JavaBean),JTS(Java Transaction Service),JMS(Java Message Service)等。用于电子商务网站开发。


J2ME(Java 2 Platform,Micro Edition),用于电子产品开发。


2、Java语言是一门面相对象的语言

Java是从C++衍生而来,跟C++语言风格相近。

Java略去了指针,结构体,联合体,goto,隐式类型转换,运算符重载,多重继承等概念。不需析构,因为有垃圾回收机制。


所有Java程序语言的设计都是为了实现传说中的简单,鲁棒(robust,健壮),安全。


3、Write Once, Run Anywhere

JVM(Java虚拟机) 使得跨平台得以实现。


4、JDK的配置

参见JDK配置的步骤.doc


Java基础


一、八种基本类型


Java语言提供了八种基本类型。

六种数字类型(四个整数型,两个浮点型),一种字符类型,还有一种布尔型。

1、整型:包括int,short,byte,long

2、浮点型:float,double

3、字符型:char

4、布尔型:boolean


二、变量与常量(主要常变量)


变量


1)标识符:

1. 大小写有别,例如 a 和 A是两个变量(为区别与类与接口,首字母一般小写)

2. 长度任意

3. 可以任何字母开始,另外还可以以"_"和"$"开始,一般"$"是很多代码生成器用的,人工写出来的代码不鼓励"_" "$"

4. 除了第一个字符,后面可以跟任何字母,数字,_和$


2)关键字

abstract assert boolean break byte case catch char class const continue default do double else enum extends final finally float for if goto implements import instanceof int interface long native new package private protected public return short static strictfp super switch synchronized this throw throws transient try void volatile while

保留字const,goto


常量


1)字面常量,如'A' ,3.142f


2)自定义常量(常变量)

形如 final int const的 const即为常量

如 fianl int i = 0;

这样i被赋值一次,它也终究只能被赋值一次,以后它的值就会一直是0。

一个解释,可以这样记着它:一见钟情式... :)


三、运算符、表达式与语句


1)运算符


1、算术运算符(+ - * / % ++ --)

2、位运算符(& | ^ ~ >> <<)

3、赋值运算符(= )

4、复合赋值运算符(1、3复合 或 2、3复合)

5、关系运算符(> >= <= < == !=)

6、逻辑运算符(&& || !)

7、条件运算符( :)


注意:Java中有两个运算符,也仅有两个运算符重载了:“+”与“+=”。(Java中不允许用户自定义操作符重载!!!)


2)表达式

1、算术表达式(形如:3*2+1)

2、条件表达式(形如:1+2!=4)


3)语句

1、注释

单行注释://System.out.println();

多行注释:/* System.out.println();*/

文档注释:/**

*@ author 张三

*/


2、方法调用

System.out.println();


3、表达式语句

3*2+1;


4、流程控制

选择(if...else... switch)

循环(for foreach while do...while...)

循环辅助语句

break(跳出去...)

continue(继续下去...)


注意:没有goto!!!


5、复合语句

...

int a;

Double b;


Java类

面向对象的特性:封装、继承和多态。
类是对象的模板,对象是类的实例。

可以这样来理解,类就是个模子,对象就是模子中铸出来的一个东西。


类中有方法和属性。


Think:

啥叫方法(成员方法)?

啥叫属性(成员变量)?


方法:类里面的函数,Think again:这些函数又有什么用?

属性:类里面的数据,Think again:这些数据的作用有事什么?


类里面的函数(方法)用来操作属性,也就是作用于属性。

类里面的数据(属性)用来存放数值。


============================================================

类可以有构造方法(默认的有不带参数的构造方法)。------想想这算什么?

关键字:this


继承:

class A extends B{

........

}


子类中调用父类成员,super(关键字)

多态:

通过继承,一个类可以用作多种类型:可以用作它自己的类型、任何基类型,或者在实现接口时用作任何接口类型。这称为多态性。


重载、重写与覆盖的区别:


重载时相同名称成员的参数列表是不相同的(参数顺序和类型)。重载基本要求是它的方法名必须相同。其他都可以不同。完全就是一个新方法。

重写是对虚方法的实现。可以重新定义父方法的访问权限。

覆盖是所有都相同。是覆盖了父类的方法。


请记住:以上所有说法全部都是子类相对于父类来说的。


思考一下,封装性体现在哪里呢?为什么要封装呢?

Java常用类


数组(Array类):


首先,要记得Java 数组是一个类。它内部有方法,有属性。

Java 中数组属于引用数据类型。

Java 中数组的初始化有两种方式,一种是直接赋值法,一种是用new操作符(类的特性体现)。

详情见:Java数组.doc


字符串(String类和StringBuffer类):

Java 中使用String 和StringBuffer来完成字符串的各种操作。

他们也是类,类中也有方法和属性。

String类:

注意几点:

1、String类是final的,不可被继承。

2、String类是的本质是字符数组char[], 并且其值不可改变。

3、String类对象有个特殊的创建的方式,就是直接指定比如String x = "abc","abc"就表示一个字符串对象。而x是"abc"对象的地址,也叫做"abc"对象的引用。

4、String对象可以通过“+”串联。串联后会生成新的字符串。也可以通过concat()来串联。


创建字符串的方式很多,归纳起来有三类:
其一,使用new关键字创建字符串,比如