黑马程序员——面向对象

------- <a href="http://www.itheima.com" target="blank">android培训</a>、<a href="http://www.itheima.com" target="blank">java培训</a>、期待与您交流! ----------

面向对象

面向对象是相对面向过程而言

面向过程强调的是行为步骤,面向对象强调的是将行为以对象的形式进行封装,然后对对象进行操作。

Java通过创建类再用类建立对象。

类是某一类对象的抽象描述,对象是类的实例化。

面向对象程序设计的特点:继承、多态和封装。

继承:用父类派生出子类,子类具有父类的非私有成员变量和成员方法。关键字extends

多态:不同的子类重写父类的某个方法,通过调用父类中该方法可实现调用所有子类中相应的方法。

封装:类将对象的属性和行为封装起来,对客户暴露一定的接口,隐藏其实现细节。


权限修饰符:

修饰类———只能用public (共用)、abstract(抽象)、  final(终态)。

当不加修饰符时表示该类具有包存取范围。

修饰成员变量和成员方法————public、private、protected

访问包位置

类修饰符

Private

Protected

Public

本类

可见

可见

可见

同包其他类或子类

不可见

可见

可见

其他包的类或子类

不可见

不可见

可见


局部变量的声明周期和作用域:局部变量在方法被执行时创建,方法执行结束被销毁。

复合语句内部定义的局部变量的作用域只在复合语句内部,在互相嵌套的区域定义同名同类型的变量视为重复定义,是错误。

this关键字:java中this代表本类对象的引用。

构造方法:

构造方法是类实例化创建对象时调用的函数,构造方法没有返回值,定义时也不用写void,构造方法可以有多个重载形式,如果定义类时未定义构造方法,编译器会隐式定义一个无参的构造方法。

在构造方法中用this调用其它构造方法时,该语句应写在方法的第一句,用super调用父类构造方法时,也应写在方法第一句。

静态:

静态成员和静态方法是在类加载时创建的,可不同过对象直接调用。静态代码块在类加载时执行一次,之后不再执行。

在静态方法中不能调用非静态成员和方法。

对象创建

在声明了一个引用而未创建该对象时,该引用只是一个值为null未指向任何对象的空引用,不能对其调用对象方法,否则会发生空指针异常。

引用存在于栈内存中,对象存在于对内存。

对象比较

“==”比较的是两个对象是不是同一个对象。

equals方法要看要比较的对象中equals方法是怎么写的。

对象销毁

当某个对象不再被任何引用指向时,该对象视为垃圾,由java的垃圾回收机制进行销毁。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章