上节课我们废话了一整节的课讲了对象的概念,我们也说了他的优点,可怎么创建对象呢?那么我们下面就来说下怎么创建对象!
上回书说到我们要创建对象,就得先给对象拟定一个规划图,也就是定义一个类,在定义的时候必须说明这个类的对象们是怎么工作,有什么特征,包括内部和外部的,这里就是要你真的明白钢铁是怎么炼成的了。
怎么样,被吓倒了吧?不用怕,有川哥在(我带老婆逛鬼城的时候常这样说的,哈哈)!!
其实呢定义类是很简单的了,还记得前面几节课我们讲定义变量和函数没?差不多的了,事实上变量和函数在类中有很大的势力(好在不是黑势力),他们掌管了定义方法和属性的关卡。那,下面我们就来定义一个看下了
类或者对象中的元素,我们统称为 成员,他们的全称是私有实例数据成员,成员表示数据,并且在类的每一实例中是私有的。
假设在同一类的两个实例中,数据成员有相同的值,那么我们说这两个对象之间有相同的状态。
命名规则:
1。在成员命名规则上我们一般采用 首字母小写,每个单词的首字母大写例如 carColor
2。属性的命名规则是 :首字母大写 例如 Color
存取器 :我们这里看到的 get 和 set 他被称为存取器方法。在这里我们可以在私有成员中提取值和赋值。这个方法让用户可以对私有变量进行操作
那么存取器有什么好处呢?答案就是,他可以设置对象的属性是只读\写,另外还允许用户编写访问属性时执行的定制代码。
注意:因为类属于引用类型,所以当你申明了一个类类型的变量时,并不代表你就创建了这个类,而只是创建了堆栈上的一个引用,还需要用new关键字来初始化他。另外,如果创建值类型或则引用类型的局部变量,就必须在使用之前初始化他,否则会出错,如果变量是类实例的成员,他将会自动初始化为默认值。
说道初始化为默认值,你会问,数值型的默认值是 0 ,bool型是 false,字符串型是 "",那么对象类型或者其他引用类型的默认值是什么?QQ上常常有问 session["aa"]=="" 为什么不对?当然不对了,因为他们的默认值是不存在 所以就是 null
上回书说到我们要创建对象,就得先给对象拟定一个规划图,也就是定义一个类,在定义的时候必须说明这个类的对象们是怎么工作,有什么特征,包括内部和外部的,这里就是要你真的明白钢铁是怎么炼成的了。
怎么样,被吓倒了吧?不用怕,有川哥在(我带老婆逛鬼城的时候常这样说的,哈哈)!!
其实呢定义类是很简单的了,还记得前面几节课我们讲定义变量和函数没?差不多的了,事实上变量和函数在类中有很大的势力(好在不是黑势力),他们掌管了定义方法和属性的关卡。那,下面我们就来定义一个看下了
类或者对象中的元素,我们统称为 成员,他们的全称是私有实例数据成员,成员表示数据,并且在类的每一实例中是私有的。
假设在同一类的两个实例中,数据成员有相同的值,那么我们说这两个对象之间有相同的状态。
命名规则:
1。在成员命名规则上我们一般采用 首字母小写,每个单词的首字母大写例如 carColor
2。属性的命名规则是 :首字母大写 例如 Color
存取器 :我们这里看到的 get 和 set 他被称为存取器方法。在这里我们可以在私有成员中提取值和赋值。这个方法让用户可以对私有变量进行操作
那么存取器有什么好处呢?答案就是,他可以设置对象的属性是只读\写,另外还允许用户编写访问属性时执行的定制代码。
注意:因为类属于引用类型,所以当你申明了一个类类型的变量时,并不代表你就创建了这个类,而只是创建了堆栈上的一个引用,还需要用new关键字来初始化他。另外,如果创建值类型或则引用类型的局部变量,就必须在使用之前初始化他,否则会出错,如果变量是类实例的成员,他将会自动初始化为默认值。
说道初始化为默认值,你会问,数值型的默认值是 0 ,bool型是 false,字符串型是 "",那么对象类型或者其他引用类型的默认值是什么?QQ上常常有问 session["aa"]=="" 为什么不对?当然不对了,因为他们的默认值是不存在 所以就是 null