黑马程序员——二维数组、面向对象(一)

来源:互联网 发布:人类学书籍推荐 知乎 编辑:程序博客网 时间:2024/05/01 00:25
------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------

一、二维数组

二维数组格式:int[] [] arr=new int [3][2];

访问二维数组:

Arr直接访问二维数组

 Arr[0]直接访问二维数组中角标为0的一维数组

Arr[0][0] 直接访问二维数组中角标为0的一维数组中角标为0的元素

 

引用型类型默认初始化值是null

 

二、面向对象

1.概念:

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

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

面向对象是基于面向过程的。是一种思想。

 

思想特点:符合人思考习惯的一种思想;由复杂变简单、由执行者变指挥者。

PS:我要达到某种目的(结果),就寻找能帮我达到该结果的功能对象。如:我要对手机充电,我只需要插上充电器即可,无须了解充电原理。

 

特征:封装、继承、多态

 

创建类的方法:名词提炼法

 

2.类和对象的关系

类:对现实世界中某种事物的描述,是抽象的,概念上的定义。

对象:事物具体存在的个体。

解释:定义类,就是在描述事物,在定义属性和行为。描述事物其实就是在描述事物的属性和行为。

 

属性对应的是类中的变量,行为对应的是类中的函数(方法)。属性和行为共同成为类中的成员(成员变量和成员方法)。

 

类类型变量指向对象。
类与对象之间的关系?

类是事物的描述。对象是对该类事物的实例,通过new来创建的。

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

成员变量定义在类的内部。成员变量赋初值必须与成员变量的声明写在同一条语句中,因为类的内部不允许直接出现执行语句。

1,成员变量定义在类中,整个类中都可以访问。

              局部变量定义在函数,语句,局部代码块中,只在所属的区域内有效。

       2,成员变量存在于堆内存的对象中

              局部变量存在于栈内存的方法中

       3,成员变量随着对象的创建而存在,随着对象的消失而消失。

              局部变量随着所属区域的执行而存在,随着所属区域的结束而结束

       4,成员变量都有默认初始化值。

              局部变量没有默认初始化值。

使用变量时,遵循就近原则。首先在局部范围找,有就使用;接着在成员方法里找,有就使用若成员位置没有,就报错。

 

给成员变量赋值的三种方式:1)直接定义的时候赋值,或通过对象名.成员赋值

                                            2)通过set方法类赋值

                                            3)在构造函数中赋值(在实例化对象的时候赋值)

 

4.匿名对象

       匿名对象是没有名称的对象,是对象的一种简写形式。

应用:1)只调用一次类中的方法。如果多次调用,也不会报错,但是会在内存空间创建多个对象,却都没有名字。没有意义。

              2)可以作为实际参数在方法传递中使用。

              格式:new 类名(); 例如:new People();

              用匿名对象调用属性没有意义,调用方法有意义,比较简化。

              原因:当对对象的方法只调用一次时,可以用匿名对象来完成,这样写比较简化。如果对一个对象进行多个成员调用,必须给这个对象起个名字。

 

5.封装

5.1封装

       封装是指隐藏对象的属性和实现细节,仅对外提供公共访问方式。

       优点:1.将变化隔离 2.便于使用 3.提高重用性 4.提高安全性

       原则:将不需要对外提供的内容隐藏起来。

       把属性都隐藏,提供公共方法对其访问。

封装不是私有(private),私有仅仅是封装的一种表现形式。

Getters访问器方法:仅访问成员变量而不对其修改的方法。方法名为“get成员变量名” ps:getName()

Setters更改器方法:对成员变量做出修改的方法。方法名为“set成员变量”。Ps:setName()

 

 

       5.2private 关键字

              注意:私有仅仅是封装的一种体现而已。

              私有,权限修饰符;用于修饰类中的成员(成员变量,成员函数)。

              被私有化的成员只在本类中有效。

       注意:一个私有成员变量一般对应两个访问方式,一个更改器方法,一个访问器方法。

       对外提供的方法:set()、get()。Set()方法的返回值类型一定是void。Get()方法的访问类型与获取变量的类型一致。

       注意:私有方法只能在本类中被调用、使用。

       Set方法一般有参数,get方法一般无参数。

 

 

------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------
0 0
原创粉丝点击