1:将复杂的事情简单化。
2:面向对象将以前的过程中的执行者,变成了指挥者。
3:面向对象这种思想是符合现在人们思考习惯的一种思想。
过程其实就是函数;对象是将函数等一些内容进行了封装。
成员变量与局部变量:
成员变量作用于整个类中;存在堆内存中,因为对象的存在,才在内存中存在。
局部变量作用于函数或者语句中;存在栈内存中。
匿名类:
封装
定义:
是指隐藏对象的属性和实现细节,仅对外提供公共访问方式。
好处:将变化隔离;便于使用;提高重用性;安全性。
封装原则:将不需要对外提供的内容都隐藏起来,把属性都隐藏,提供公共方法对其访问。
封装就像机箱,把cpu,主板,显卡等全部放进机箱,安全,美观。
而且对外只提供几个插孔,操作方便
总结:在类中定义其实都称之为成员。成员有两种:
1.成员变量:其实对应的就是事物的属性。
2.成员函数:其实对应的就是事物的行为。
记住:属性是用于存储数据的,直接被访问,容易出现安全隐患,
故类中的属性通常被私有化,并对外提供公共的访问方法。
该访问方法有两个,规范写法:属性 xxx,对应setXXX() getXXX()。
用于给对象进行初始化,是给与之对应的对象进行初始化,它具有针对性,函数中的一种。
特点:
1:该函数的名称和所在类的名称相同。
2:不需要定义返回值类型,不可写return语句。
3:该函数没有具体的返回值。(不同于void,void代表一种返回类型,就是没有结果返回)
记住:所有对象创建时,都需要初始化才可以使用。
注意事项:一个类在定义时,如果没有定义过构造函数,那么该类中会自动生成一个空参数的构造函数,为了方便该类创建对象,完成初始化。如果在类中自定义了构造函数,那么默认的构造函数就没有了。
一个类中,可以有多个构造函数,因为它们的函数名称都相同,所以只能通过参数列表来区分。
所以,一个类中如果出现多个构造函数。它们的存在是以重载体现的。
一般函数可以被该对象调用多次。 而且只有对象调用才执行,给对象添加对象所具备的功能。
什么时候定义构造函数呢?
当分析事物时,该事物存在具备一些特性或者行为,那么将这些内容定义在构造函数中。
构造代码块:
this:代表对象。就是所在函数所属对象的引用。
在定义功能(函数)时,如果该功能内部使用到了调用该功能的对象,这时就用this来表示这个对象。
本类功能用到本类对象时都有this。
this 还可以用于构造函数:
格式:this(实际参数);
this对象后面跟上 . 调用的是成员属性和成员方法(一般方法);
this对象后面跟上 () 调用的是本类中的对应参数的构造函数。
注意:用this调用构造函数,必须定义在构造函数的第一行。
因为构造函数是用于初始化的,所以初始化动作一定要执行。否则编译失败。