面向零基础新手的 C# 基础知识 14

14

类终于来了!哈哈哈!

在之前Bob就说了好多次,我们以后再讲,这次总算到正题了!

在这之前,我一直没弄明白,什么是类,一开始,我找到了微软的官方文档

他是这么说的:

属于构造,使用类,可以通过组合其他类型的变量、方法和事件创建自己的自定义类型。 类好比是蓝图。 它定义类型的数据和行为。 如果类未声明为静态,客户端代码就可以通过创建分配给变量的对象实例来使用该类。 变量会一直保留在内存中,直至对变量的所有引用超出范围为止。 超出范围时,CLR 将对其进行标记,以便用于垃圾回收。 如果类声明为静态,则内存中只有一个副本,且客户端代码只能通过类本身,而不是实例变量来访问它。 有关详细信息,请参阅静态类和静态类成员

???这说的是啥??看不懂??我的智商太低了?

后来,Bob说了,类的知识其实我们一直在用(而且也就是你说的现在讲的) 我们都应该是“老手”了。他说了,他一开始为了给我们自信,讲简单了(我当时心一沉),但其实也不难。

Bob作了一个比喻,比如:

某汽车公司有一个要求,是要你做一个汽车分类的软件。如果你没学过类,你可能就会这么做:

定义车1、车2、车3的变量,然后再分别设置颜色、年代等等等等。

然后你可能发现你又要设置其他内容,你又要把所有东西改过来了!太烦了!

所以类就派上用场了。

(这时候的我还是一头雾水)

简单的说,类就是蓝图,Bob就是这么说的。而我们以前经常创建的那些是对象、实例化的类。

(咦,“蓝图”这个词似乎哪里看到过……啊!)

【蓝图】港澳地区又称“蓝纸”,是工程制图的原图经过描图、晒图和薰图后生成的复制品,因为图纸是蓝色的,所以被称为“蓝图”。蓝图类似照相用的相纸,可以反复复制新图,而且易于保存,不会模糊,不会掉色,不易玷污。在中文语境中,蓝图一词通常引申为一种对未来的构想或计划。

——维基百科

以及:

【实例】实际的例子

——互动百科

没错!就是这样!

打个比方,就好比是,类是哺乳动物,拥有种类、毛发等属性,而实例就是这之中的一种,比如,狗。

当然,我们在这个世界上不能找出一种真的叫做“哺乳动物”的动物的。同样的,狗可是到处都有的。所以,类可是不能直接被引用的,而由类创建的实例化对象却可以!

知道了这些,后面就方便了。

基本定义代码:

class car

//类
{

public string make { get; set; }

//这是定义属性的语句 prop 输入后双击Tab就可以了

//其实还有完整版的,但Bob说,下次再讲……

public string model { get; set; }

public int year { get; set; }

public string Color { get; set; }

public decimal value()

//方法 decimal是十进制(浮点)
{
decimal carvalue = 0.00M;
if (year > 1949)
{
carvalue = 12970.00M;
}
else
{
carvalue = 12450.00M;
}
return carvalue;
}
}
}

程序主体:

car mycar = new car();
mycar.make = "土包子";
mycar.model = "凯申物流公司试验车";
mycar.Color = "凯申蓝";
mycar.year = 1925;
Console.WriteLine("{0} {1} {2} {3}",
mycar.make,
mycar.model,
mycar.Color,
mycar.year);
Console.WriteLine("{0:C}",mycar.value());
Console.Read();

点赞

发表回复

电子邮件地址不会被公开。必填项已用 * 标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据