黑马Java学习笔记之-----面向对象(一)

---------------------- android培训java培训期待与您交流! ----------------------

 

面向过程和面向对象

1. 面向对象是相对面向过程而言的,两者都是一种思想。

2. 面向过程:强调的是功能行为。

3. 面向对象:将功能封装进对象,强调具备了功能的对象。

4. 面向对象是基于面向过程的。

 

面向对象的三大特征

1. 封装(Encapsulation):隐藏对象的属性和实现细节,仅对外提供公共访问方式。

2. 继承(Inheritance):子类复用父类的方法和属性,还可以添加新的方法和属性。

3. 多态(Polymorphism):子类对象可以直接赋值给父类变量,但运行时表现出子类的特征。

4. //( 抽象:将现实世界中的事物描述为系统中类、对象、方法的过程。)

 

类与对象

1. 类是对某一类事物的描述,是抽象的、概念上的定义;

2. 对象是实际存在的该类事物的每个个体,因而也称实例(instance)。

 

成员变量和局部变量的区别

1. 成员变量定义在类中,在整个类中都可以被访问;局部变量只定义在局部范围内,如:函数内,语句内等。

2. 成员变量随着对象的建立而建立,存在于对象所在的堆内存中;局部变量存在于栈内存中,作用的范围结束,变量空间会自动释放。

3. 成员变量有默认初始化值;局部变量没有默认初始化值。

 

:如果一个方法中有与成员变量同名的局部变量,该方法中对这个变量名的访问是局部变

   量,而不再是成员变量。如想访问成员变量,在之前加this即可。

 

对象:

Person p = new Person(); 执行完后内存状态:

 

  

 

当一个对象被创建时,会对其中各种类型的成员变量自动进行初始化赋值

  

匿名对象

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

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

 

类的封装的好处:

1. 将变化隔离

2. 便于使用

3. 提高重用性

4. 提高安全性

 

构造函数:

特征:

1. 具有与类相同的名称;

2. 不含返回值;

3. 不能在方法中用return语句返回一个值。

4. 在java每个类里都至少有一个构造方法;

 

作用:对对象进行初始化。(构造函数在对象一建立就运行)

 

构造代码块:

作用:对对象进行初始化。

对象一建立就运行,而且优先于构造函数执行。

和构造函数的区别:

构造代码块是给所有对象进行统一初始化;而构造函数是给对应的对象初始化。

 

This关键字:

This代表它所在函数所属对象的引用。

简单说:哪个对象在调用this所在的函数,this就代表哪个函数。

 

this的应用:

1. 当定义类中功能时,该函数内部要用到调用该函数的对象时,这时用this来表示这个对象。但凡本类功能内部使用了本类对象,都用this表示。

2. 用于构造函数之间进行互相调用。

   This语句只能定义在构造函数的第一行,因为初始化要先执行。

 

 

 


---------------------- android培训java培训期待与您交流! ----------------------

posted @ 2013-04-29 02:03  Mercy_K  阅读(165)  评论(0编辑  收藏  举报