您的位置:首页 > 编程语言 > Java开发

自学Java系列 笔记2 面向对象1

2015-09-01 22:19 281 查看
类和对象



1、类

类的属性:

java 类属性和对象属性的初始化顺序如下:

1) 类属性(静态变量)定义时的初始化,如: static String a="string".

2) static 块中的初始化,如: static{} 中的 b="string"

3) 对象属性(非静态属性变量)定义时的初始化,如 String c="string"

4) 构造方法(函数)中的初始化代码,如d="string"



类的构造方法:对类的属性进行初始化

注释:构造器的名称必须与类名相同。修饰符:public、private、protected


构造器不是方法,没有返回值(连void也不能写)


注意:Java类中,一旦类的定义者显式定义了一个或多个构造方法,系统将不再提供默认的构造方法



java 中构造方法(构造函数)

1):它具有与类名相同的名称

2): 它没有返回值(连 VOID 都没有)

{

注:

构造方法的调用时机也与一般的方法不同。一般的方法在需要时才调用,而构造方法则是在创建对象时自动调用,并执行构造方法的内容。因此,构造方法无需在程序中直接调用,而是在对象产生时自动执行

}



Java 构造函数的重载:

{

1:构造方法的参数个数不同

2:类型不同

}



类的继承:



格式: class 子类名: extends 父类



java 继承只能直接继承父类中的共有属性和共有方法,而隐含(不可见地)继承了私有属性、只允许单继承,而不允许多重继承,也就是说一个子类只能有一个父类。但是,在java中却允许多层继承。



子类对象的实例化: 子类对象在实例化时会默认先去调用父类中的构造方法,之后再调用本类中的相应的构造方法。



super 关键字的使用

{ super 的主要功能是完成子类调用父类中的内容,也就是调用父类中的属性或者方法(成员函数) } 【注意:用super调用父类中的方法,只能放在程序的第1行】



提示

v 类的访问机制:

v 在一个类中的访问机制:类中的方法可以直接访问类中的成员变量。(有一个例外)

v 在不同类中的访问机制:先创建要访问类的对象,再用对象访问类中定义的成员。



匿名对象

• 我们也可以不定义对象的句柄,而直接调用这个对象的方法。这样的对象叫做匿名对象,如:new Person().shout();

• 如果对一个对象只需要进行一次方法调用,那么就可以使用匿名对象。

• 我们经常将匿名对象作为实参传递给一个函数调用。

• 普通申明一个对象是这样的

• A a = new A();

• 那么这个时候a就是类A的一个对象,这个对象名字就是a

• 再来看下面一个例子:

• method(A a);

• 整理method是一个方法,他需要传递一个对象来作为参数,那么这个时候有2种方法:

• 方法1:

• A a =new A();

• method (a);

• 方法2:

• method (new A());



• 方法2中new A()就是一个匿名对象,他没有名字。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: