面向对象就是把构成问题的事物分解成一个个对象,建立对象不是为了实现一个步骤,而是为了描述某个事物在解决问题中的行为。
类是面向对象中的一个很重要的概念,因为类是很多个具有相同属性和行为特征的对象所抽象出来的,对象是类的一个实例。
类具有三个特性:封装、继承和多态。
三大特征
封装:核心思想就是“隐藏细节”、“数据安全”,将对象不需要让外界访问的成员变量和方法私有化,只提供符合开发者意愿的公有方法来访问这些数据和逻辑,保证了数据的安全和程序的稳定。所有的内容对外部不可见。
继承:子类可以继承父类的属性和方法,并对其进行拓展。将其他的功能继承下来继续发展 。
多态:同一种类型的对象执行同一个方法时可以表现出不同的行为特征。通过继承的上下转型、接口的回调以及方法的重写和重载可以实现多态。方法的重载本身就是一个多态性的体现。
三大思想
类与对象
类表示一个共性的产物,是一个综合的特征,而对象,是一个个性的产物,是一个个体的特征。
一个类要想真正的进行操作,则必须依靠对象,对象的定义格式如下:
类名称 对象名称 = new 类名称() ;
如果要想访问类中的属性或方法(方法的定义),则可以依靠以下的语法形式:
访问类中的属性: 对象.属性 ;
调用类中的方法: 对象.方法(实际参数列表) ;
静态方法和非静态方法:
静态方法:static,和类一起加载的
调用方法:类名().方法()
非静态方法:实例化之后才存在
调用方法:new 类名().方法()
万能公式:对象类型 对象名 = 对象值;
对象的创建分析
类与对象的关系:类是一种抽象的数据类型,它是对某一类事物整体描述或者说是定义,但是并不能代表某一个具体的事物。
创建与初始化对象:
使用new关键字创建对象
使用new关键字创建的时候,除了分配内存空间之外,还会给创建好的对象进行默认的初始化以及对类中构造器的调用。
类中的构造器也称为构造方法,是在进行创建对象的时候必须要调用的,并且构造器有以下两个特点:
(1)必须和类的名字相同
(2)必须没有返回值类型,也不能写void
作用:
(1)new的本质在调用构造方法
(2)初始化对象的值
注意:
定义了有参构造之后,如果想使用无参构造,必须显式定义一个无参的构造
This关键字:解决变量名冲突,可以调用当前对象的成员方法
通过this关键字调用成员方法,代码如下
class Student{
pubilc void openMouth(){
···
}
public void read(){
this.openMouth();
}
}