小知识(三):类

类是抽象的概念。

例如Dog类描述了狗有的一些特性,体重、身高、年龄、以及吼叫等等。

public class Dog

{

string dogBreed;//犬种

int weight; //体重

int height; //升高

int age; //年龄

public void bellow()

{

Console.WriteLine("旺旺");

}

}

这Dog类是抽象的,描述了一些特性,不是具体的一条狗。

让后下面定义一个邻居的狗"大哈",它属于Dog类。

Dog 大哈 = new Dog();

实例化创建"大哈"的对象,现在"大哈"是具体的存在。让后可以对"大哈"对象进行具体的描述。如"大哈"的犬种是哈士奇,体重35公斤等等。

大哈.dogBreed = "哈士奇";

大哈.weight = 35;

……

让后"大哈"吼叫

大哈.bellow(); 这是一个狗的吼叫方法

注意:对Dog类不能直接赋值特性。就比如int = 8; 一样,没有意义。没指特定的狗的情况下,你不能说狗体重、身高、犬种多少一样。

类的最大的好处在于它能将一个实体的属性和行为封装在一个独立的代码单位中。按上面的例子Dog类中封装了犬种、身高、体重、年龄属性,以及吼叫方法。

访问类型有Public公共、Private私有、Protected受保护(继承可访问)、internal内部、Protected internal内部受保护(继承可访问)。对类、字段、方法、属性、构造函数都可用。

类可包含:字段、属性、构造函数、方法。

类成员方法:

语法:

访问类型 返回类型 方法名称(接受参数,)

{方法体}

访问类型默认public

如:

Public void Method(int i , string s,…….)

{方法体}

多重方法:方法名称一样,参数不一样

public string d(int i , int j)

{ }

public void d(string i)

{ }

public void d(int i)

{ }

public int d(char d)

{

return 0;

}

类构造函数:

new创建对象时初始化成员变量。构造函数的函数名和类名相同。可以有多重构造函数,如同多重方法。

例:

class Dog

{

Public Dog(string dogBreed,int Weight)

{

weight = Weight;

this.dogBreed = dogBreed;

}

Public Dog(string dogBreed)

{

this.dogBreed = dogBreed;

}

string dogBreed;//犬种

int weight; //体重

}

上例子中含有两个接受参数不同的多重构造函数。

this代表当前实例(引用当前对象),Dog实例的dogBreed字段。

类成员变量(字段):

上例子中的dogBreed、weight是该类成员变量。可以在定义的时候初始化,而不用将每个变量都在构造函数中执行初始化。

类成员属性:

C#提供了get;set;访问器。用属性封装类的数据。

例:

private int height;

public int Height

{

get { return weight; } 读取

set { weight = value; } 赋给

}

上例子中其他类无法直接读取height,只能通过访问器进行访问操作。

get set前可以设置访问类型。

对象销毁:

析构函数,C#中的析构函数声明:

~textClass()

{

析构处理

}

还可以写成:

textClass.Finalize()

{

析构处理

Base.Finalize();

}

以上是我个人的学习文档。如果本文中有错误的地方,请您指出来。谢谢!

参考文献:C#编程实战宝典。清华大学出版社,付强
丁宁
等编著。第三章。

时间: 2024-11-08 23:15:45

小知识(三):类的相关文章

电灯节电小知识的方法大全(转载)

电灯节电小知识 时间:2015-05-10 09:44:11编辑:电工栏目:用电常识 导读:有关电灯节电的小知识,包括要采用白炽灯,加装调光节电装置,楼道照明尽量采用节电装置,及时关掉不要的电灯,并选用节能灯具等,电灯节电就要从小事从细节做起. 电灯节电小知识 1.床头灯.房厅吊灯如采用白炽灯,应加装调光节电装置: 2.楼道照明尽量采用节电装置: 3.房内没人时,记着关熄房内不必要的电灯,尽量选用节能灯具. 猜你喜欢: 电视机节电小知识 电风扇节电小知识 电熨斗节电小知识 电冰箱节电小知识三要素

Python学习之旅—面向对象进阶知识:类的命名空间,类的组合与继承

前言 上篇博客笔者带领大家初步梳理了Python面向对象的基础知识,本篇博客将专注于解决三个知识点:类的命名空间,类的组合以及面向对象的三大特性之一继承,一起跟随笔者老看看今天的内容吧. 1.类的命名空间 在上一篇博客中,我们提到过对象可以动态添加属性,一起来回忆下昨天的知识点,看如下的代码: class A: pass a = A() a.name = 'alex' print(a.name) 这里我们手动为a对象添加了一个属性name,然后直接打印可以得到a对象的名称.通过这个例子,我们可以

iOS开发之oc(八)--小知识补充 init方法补充

小知识补充 一. id 1. 简介 万能指针,能指向任何OC对象,相当于NSObject * id类型的定义 typedef struct objc_object { Class isa; } *id; 2. 使用 // 注意:id后面不要加上* id p = [Person new]; 3. 局限性 调用一个不存在的方法,编译器会马上报错 二. .h和.m文件的抽取 1)每个类分布在不同文件中 2)类的声明放在.h文件,类的实现放在.m文件 3)若想使用某个类,就包含某个类的.h声明文件 三.

JSP+Ajax网站开发小知识

一.JSP基础 1.<select  name="love"  size="3">其中的size属性指定了列表框显示选项的条数,如果所有选项多于这个数,将会出现滚动条. 2.addCookie(Cookie  cookie)方法将其放入客户端,获取Cookie对象可调用request对象的Cookie[]  getcookies()方法. Cookie   myCookie  =  new  Cookie("name",  "

AE小知识

1.AE中对象模型图 (Object Model Diagram,OMD)(我的arcgis默认安装在C:\Program Files (x86)): C:\Program Files (x86)\ArcGIS\DeveloperKit10.0\Diagrams 可以帮助程序员了解类之间的关系,如何从一个类到另一个类,选择正确的接口,获取需要的属性和方法等. 2.在ArcObjects中存在三种类型的类: 抽象类(Abstract Class)    组件类(CoClass)    普通类(Cl

ios开发小知识2

http://blog.sina.com.cn/s/blog_66450b500102vadq.html http://www.cnblogs.com/lovesmile/archive/2012/06/27/2565569.html ios开发小知识2(转自cc) 退回输入键盘  - (BOOL)textFieldShouldReturn:(id)textField{    [textField resignFirstResponder];} CGRectCGRect frame = CGRe

运营小知识

一丶在做电商之前,我们要搞清楚电商的本质是什么?相对于零售,电商的本质是“把合适的产品卖给合适的人”:围绕这句话打开你的互联网思维. 解析:做批发,只需要满足代理商一个人的需求,所以产品和服务达到客人期许即可:零售则不同,你无法满足所有人的需求,只能满足一部分,深挖这一部分客户即可.MBA是先做市场调查,找到好的项目再去做,而真正是生意是从微观推动宏观,满足一部分客户的需求开始! 二丶定位就是要围绕合适的客户群体,然后再定出大众款和小众款,大众款利润低点,小众款利润高点.定价和产品架构也属于定位

IPV4理论知识3----分类编址址两级编址

IPV4理论知识3----分类编址址两级编址 前言 本次还是主要讲解IPV4方面的内容,因为这方面的内容比较多也比较重要,我就不在同意篇文章中介绍了,一个小知识点一个内容,看起来也不至于乱.如有问题,请指正. 两级编址 分类编址时,同一网络中的所有地址都属于同一个地址块,而每个地址块包含两个部分:网络ID和主机ID.网路ID是干嘛的来?还记得吗?主机ID呢?还记得0533-88888888哪个案例吗?网络ID指明了网络,主机ID则指明了连接到该网络的一台特定主机.对吧.下图描述了分类编址中一个I

uniGUI for C++ builder之杂七杂八小知识

uniGUI for C++ builder之杂七杂八小知识 2018年09月30日 22:16:05 中国银行之路在脚下 阅读数:41 标签: uniguibuilder 更多 个人分类: C++ Builder(uniGUI WEB控件) 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/dlboy2018/article/details/82913870 (中行雷威2018.9.30) (同一个世界,同一个梦想,交流学习C++Builder

js中级小知识1

首先我们复习之前的小知识,本期博客与之前有关 js数据类型 基本数据类型:string    undefined         null         boolean          number 引用数据类型:     Object     array       function 二者的区别 基本数据类型就是简单的操作值,引用数据类型,把引用地址赋值给变量 堆内存 就是存放代码块的,存放形式有两种,一种是对象一键值对的形式存放 另一种就是函数 以字符串的形式存放 案例 引用数据类型的赋