第二小节之面向对象上

Posted 0405mxh

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了第二小节之面向对象上相关的知识,希望对你有一定的参考价值。

在程序中使用对象来映射现实中的事物,使用对象的关系来描述事物之间的联系,这种思想就是面向对象

面向对象的特点主要可以概括为封装性、继承性和多态性。

  封装性:将对象的属性和行为封装起来,不需要让外界知道具体实现细节(在定义一个类时,将类中的属性私有化,即使用private关键字来修饰)

  继承性:类与类之间的关系,可以在无需重新编写原有类的情况下,对原有类的功能进行扩展

  多态性:在程序中允许出现重名现象,它指在一个类中定义的属性的方法被其他类继承后,它们可以有不同的数据或表现出不同的行为

类是对某一类事物的抽象描述,而对象用于表示现实中该类事物的个体,类是对象的抽象,它用于描述一组对象的共同特征和行为

在java中,null是一种特殊的常量,当一个变量的值为null时,则表示该变量不指向任何一个对象

构造方法:是类的一个特殊成员,她会在类的实例化时被自动调用

  1、构造方法与类名相同

  2、在方法名的前面没有返回值类型的声明(不能有void)

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

注释:在一个类中可以定义多个构造方法

在java中的每个类都至少有一个构造方法,如果在一个类中没有定义构造方法,系统会自动为这个类定义一个默认的构造方法,这个默认的构造方法没有参数,在其方法体中没有任何代码,即什么也不做。一旦为该类定义了构造方法,系统就不再提供默认的构造方法。

this代表其所在函数所属对象的引用(代表对象的引用)

this()构造方法:只能在构造方法中使用this调用其它的构造方法,不能再成员方法中使用。调用其它的构造方法,必须放在构造器中的第一句。不能在一个类的两个构造方法中使用this互相调用。

垃圾回收:java虚拟机会自动回收垃圾对象所占用的内存空间,调用System.gc()方法。当一个对象在内存中被释放时,它的finalize()方法会被自动调用。

static关键字:某些数据在内存中只有一份,而且能够被一个类的所有实例对象所共享,只能用于修饰成员变量,不能修饰局部变量,在一个静态方法中只能访问用static修饰的成员

内部类:内部类可以在外部类中被使用,并能访问外部类的成员 ,如果内部类被声明为私有,外界将无法访问。

内部类的创建: 外部类名.内部类名 变量名=new 外部类名().new 内部类名();

1、在静态内部类中只能访问外部类的静态成员 2、在静态内部类中可以定义静态的成员,而在非静态的内部类中不允许定义静态的成员

以上是关于第二小节之面向对象上的主要内容,如果未能解决你的问题,请参考以下文章

15:面向对象三大特性(封装继承多态)之多态

面向对象分析-第二节:面向对象分析之建立对象模型

Python第二周之面向对象

12:面向对象三大特性(封装继承多态)之继承

前端学PHP之面向对象系列第二篇——魔术方法

前端学PHP之面向对象系列第二篇——魔术方法