我大二的时候开始接触java,现在把我当时学习时的笔记发出来,希望对有志于学习爪哇的初学者们有个大概方向的帮助哦!
java是oop语言,主体就是类对象。
一 类的一般形式
类都包含类声明和类体。
类声明:由关键字class来声明类。在声明中可以包含父类,实现的接口以及将类声明成public、abstract、final等。
Public class classname;
Abstract class classname
Final class classname
Class classname extends fatherclass
Class classname implements interface
类体:实例变量(成员变量)和成员方法。
在java中可以通过Private、protected、public等关键字对方法和变量的使用权限作定义。
二 类成员变量
成员变量可以是java语言中的任意数据类型,包括简单类型、数组、类和接口。
成员变量与局部变量的区别:前者作用在整个类中,而后者的作用域仅在方法的内部。
权限关键字:static、final、transient、volatile
Static:定义变量为类变量。相当于c中的静态变量一个概念意义。
Final:常量。Final int CONST= 50;CONST在程序中是不能被改变的。
Transient:声明一个暂时性变量。
Volatile:声明一个共享变量。此变量对多线程中,各个线程对该变量的访问一致。
三 方法
包括方法声明和方法体
Type name( parameter-list ){//方法声明
Method body;//方法体
}
>1. >方法声明
Type:指定方法返回的数据类型;可以是任何有效的类型,甚至包括创建的类的类型。
Name:方法名
parameter-list:参数列表,是类型序列和标识对,用逗号分开。
注意:
1)方法如果没有返回值则type类型必须是void,其他类型必须用return value返回值。
2)方法参数parameter-list如果是简单数据类型则实现值传递,即方法接收参数的值,但不能改变参数的值;如果想改变这些参数的值则必须使用引用数据类型(数组,类,接口)。
>2. >方法体
对方法的实现;包括局部变量的声明和所有合法的语句。This引用成员变量。
四 构造器
Java通过构造方法在创建对象时完成对象的初始化。构造器名与类名相同,一旦定义了构造器,在对象被创建时自动调用构造方法。
注:
1)Java中如果没有定义任何构造器,系统将会提供一个默认的构造器,它没有任何的参数。
2)java构造器只能在由new创建对象时使用,也就是说只能由new运算符调用。
3)构造器可以根据不同的参数组合进行重组。
五 重载
方法名相同,但是他们的参数不同,我们把这个叫做重载。
方法重载是java实现多态性的方法之一。
注:
>1) >重载方法一定具有不同的参数列表或者参数类型或者参数参数数目。
>2) >重载的多个方法必须返回相同的数据类型。
>3) >方法重载是java实现“一个接口,多个方法”的手段。在现实中,经常需要实现相同的功能,而只是参数的数据类型不一样的情况。比如求绝对值,在c中,abs返回整数的绝对值,labs()返回长整数的绝对值;而在java中利用重载,就可以很容易的通过math的abs()方法可以得到所有数值类型的绝对值。
六 对象
将类实例化即可以生成多个对象。对象通过消息传递进行交互。
对象包括三个周期:生成、使用、清除。
>1. >生成
包括生成对象、实例化、初始化三个方面。通常格式如小
Type objectName = new type( [paramlist] );
>1) >Type objectName:声明一个类型为type的对象,其中type是组合类型(包括类和接口),对象的声明并不为对象分配内存。
>2) >运算符new为对象分配内存,实现实例化一个对象。New调用了对象的构造方法返回对该对象的一个引用(即该对象的内存地址)。
>3) >执行构造方法对对象进行初始化。
>2. >使用
对象的使用包括引用对象的成员变量和方法,通过运算符“.”可以实现对变量的访问和方法的调用,当然变量和方法可以通过关键字设定一定的访问权限来允许或者禁止其他方法对其进行的访问和操作。
>1) >引用对象的变量
Object.variable
>2) >调用对象的方法
Object.method( paramlist )
>3. >清除
Java垃圾收集机制周期性的释放无用的内存。不过java的垃圾机制并不是想象中的那么健全和好使的,所以靠自己还是比较实在点。