您的位置:首页 > 职场人生

黑马程序员 自学17C#面向对象之基本概念

2014-05-07 23:32 204 查看
-------
ASP.Net+Unity开发、.Net培训、期待与您交流! -------


C#编程基础之面向过程

基础

2014/4/15

面向对象概念:

万物皆对象。

一般描述对象从两方面描述:

行为(讲课……)——方法

特征(肤色)——属性

属性:对象具有的各种特征

(肤色:黑,体重:150……)有一个值

属性通过具体的值来描述对象。

方法:行为,动作,执行的操作。

(老师的行为:上课,学生的行为:学习)

手机/品牌 != 对象

我的手机→ 对象(××的手机)(具体的一个)

对象:所处的与之对峙的“象”

类:

是模版,是确定对象将会拥有的特征(属性)和行为(方法)

比如:人类,拥有 age sex height

也拥有吃喝拉撒睡

类是对象的类型: int a;

类型名 变量名(对象名);

人类 张三;

类是抽象的概念,仅仅是一个模版,比如“人”类。

对象是一个具体存在的,而类是一个概念。

张三是属于一个人类的对象,他的姓名属性的值:张三。性别的属性的值:男。年龄属性的值:20。这三个都是特征。

会说话。行为。

特征+行为构成一个对象。

对象可以叫做类的实例(Instance)

从类中产生一个对象→实例化。

类不占内存 对象占内存

人类 你

Int a;

类的定义:

语法:

[访问修饰符] class 类名

{

成员;

……

}

一个类最好定义在一个.cs文件中,类名和文件名相同

当前类,右键→添加→新建项

类名名称命名方法:开头首字母大写

类中可以包含变量的定义,方法

Public string name;

Public char sex;

………

在我们自己写的类中,在写方法时,先不用加static(静态)

public void SayHello()

{

Console.WriteLine(“……”);

}

类的实例化

(通过一个类产生一个对象的过程) 在内存中产生了一个属于XX类的对象叫做实例名

类名实例名 = new 类名 ();

Person zsPerson = new Person();

就是↓

Person zsPerson;//定义了一个变量,这个变量类型为Person类型

zsPerson = new Person();//产生了一个Person对象,并把其赋给zsPerson(通过new完成)

……Main()

{

Person zhangsanPerson = new Person();

//Person lisiPerson = new Person ();

}

上面通过这个类的模版产生了一个zhangsan对象。

zhangsanPerson→对象名/实例名;

访问(zhangsanPerson)类的方法:实例名 .
方法名(); ConsolColor.ResetColor();

访问(zhangsanPerson)类的属性:实例名 .
属性名; ConsoleColor.white;

属性其实就是变量 zhangsanPerson.name=”张三”

属性可通过= 进行赋值/取值

eg:

class Person

{//属性(字段)

public string name;

public char sex;

publicint age;

}

//方法

public void SayHello()

{

Console.WriteLine(“我是{0},我是{1}生,今年{2}岁”,name,sex,age);

}

//上面是一个类文件

Class Program

{

……Main()

{//类的实例化,两个对象的产生

Peroson zaPerson = new Person();

Person lsPerson = new Person();

zsPerson.name=”张三”;

zsPerson.sex=’男’;

zsPerson.age=18;

lsPerson.name=”李四”;

lsPerson.sex=’女’;

lsPerson.age=16;

//下面是调用方法

zsPerson.SayHello();

lsPerson.SayHello();

Console.ReadKey();

}

}

属性要有一个值 + 方法→对象 (实例化)

只要是没有加static的方法/属性都必须先实例化,在通过实例名.属性实例名.方法名();来访问。

加static的方法或属性,可以直接通过类名.方法名(); 类名.属性名来访问。在同类中可省略类名。

Console.WriteLine(“”);

这个writeLine有static修饰,可以直接取用;

Random r = new Random();

r.Next(X,X);

随机数无static修饰,需要先实例化再调用。

词汇小结:

Instance: 实例

Method: 方法

-------
ASP.Net+Unity开发、.Net培训、期待与您交流! -------
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: