面向对象的几个基本概念的理解

一、面向对象是执行者到指挥者的转变

现在要做一件事情:把大象放进冰箱。 做这样一件事的步骤就是:1、打开冰箱。2、放进大象。3、关上冰箱门。

如果你是这么做的,那么这就是面向过程,它偏向于是事件的“执行者”。而面向对象,则偏向于是事件的“管理者”,它一定是先创造出一种冰箱,它具备可以开门,可以拉大象进门,可以自动关门的功能,然后调用这个冰箱去自己完成“把大象放进冰箱”这件事。

你愿意去当一个执行者,还是去当一个管理者?当然是管理者,所以,编程语言的发展,一定更趋向于人的更合理的思维方式。

二、类和对象

“物以类聚”这句成语听过吧?类,就是具有相同特征的一类事物的统称,它是抽象的,不能直接使用。对象就是类里面的一个具体存在,看得见,可以直接使用。

三、变量/方法/类名的命名规范

变量命名规范:

1、变量如果就一个单词,全部小写。如有多个单词,除第一个单词外,其余单词的首字母大写,如果变量名是1一个缩写,如“CCTV”,每个单词都要大写。

2、命名要有意义。如:string strName;

3、变量是名词。

方法/类名命名规范:

1、每个单词首字母大写,方法名是是一个动作,类名是一个名词。

2、命名要有意义。

四、局部变量和成员变量区别

1、作用域不同,成员变量定义在类的下面,方法的外面。局部变量则定义在方法的里面。

2、局部变量必须赋值,它没有默认值,而成员变量有默认值(数值类型的默认值是0,引用类型的默认值是null)。

五、深刻理解下面代码

//Person以及其字段、方法代码略

void Main(string arg[])

{
    Person p1=new Person();

    Person p2=new Person();//同一个类的多个对象之间毫无关系,唯一的关系是它们都是根据同一个类的模版创建的。

    p1.name="qkh";

    p1.age=18;

    p1.gender=false;

    p1.Sing();
}

 

注:以上内容均属软谋远程,如需转载,请注明出处。

 

 

posted @ 2013-09-06 17:49  蜡笔小新111  阅读(1458)  评论(1编辑  收藏  举报