C#编程语言,从本质上讲是一组类型声明。所以,本人认为第一个要区分的点是:类型!=类。

当然,如果想要系统的学习C#还是应该先了解一下.Net框架,本文目的只是从相对宏观的角度讲清楚C#中的类。关于类的实现的具体细节网络上到处都有。本文适合初学C#的新手。

如果你学习过数据结构,就应该知道数据类型仅仅是对数据的定义。在C#中类型分为预定义类型和自定义类型,而类属于6种自定义类型中一个,所以可以称类为类类型,英文名为class。

其实,从以下几个方面描述类应该是比较清晰的:

本文中,我们不必管具体地类怎么定义,怎么继承,怎么调用,怎么回收。

我们需要了解类是什么,类的作用是什么,类怎么分类,类与类之间的关系是什么,类在整个程序集中的地位是什么

一,类是什么?

类是C#中一种预定义的类型,一种类型就会包含数据成员与函数成员,对于类,其数据成员是“字段与常量”,其函数成员是“方法,属性,索引,事件,构造函数,析构函数,运算符”。对于其中的任何一个成员,都可以讲解一个篇章,相信大部分C#参考书上都有,这里不做赘述。

二.类在整个程序集中的地位

每一个程序集都有命名空间namespace,如果还不太理解程序集的概念,可以先认为是某一个.cs文件就是一个程序集。在命名空间中是不可以直接定义预定义类型的,要从类或者其他自定义类型开始编程。为什么要有命名空间?因为它保证了不同程序集同时被调用的时候,即使有相同的命名存在,也可以兼容。

类如要被访问,或者访问程序集中其他类,则涉及到类的访问级别问题。类具有public与internal两个访问级别。public级别的类可以被外部程序集访问,internal级别的类只能被所在程序集引用,这也是默认的访问级别。

三.类怎么分类与类与类之间的关系

对于C#中的类,只有两种,要么是object类,要么是派生类。所有的派生类都继承自object类,不同的是有的派生类是直接继承object类,有的派生类是间接继承object类。这里不必知道到底怎么实现继承,但是应该知道的是类可以继承该类所在程序集中其他类,也可以继承其他程序集中的访问级别为public的类。

当然,也可以分为实例类和静态类,如果对C#有一些了解的话应该知道实例与静态的含义。

最新文章

  1. JavaScript中undefined与null的区别
  2. java基础 常用组件
  3. shell 脚本中的运算
  4. LeetCode Longest Increasing Path in a Matrix
  5. 从0 开始 WPF MVVM 企业级框架实现与说明 ---- 第二讲 WPF中 绑定
  6. 【安卓特效】怎样给ImageView加上遮罩,点击时泛黑、或泛白、?
  7. View.VISIBLE、INVISIBLE、GONE的区别
  8. Lucene:信息检索与全文检索
  9. Netty线程模型
  10. Cocos2d-x获取随机数
  11. Python 基础【第二篇】python操作模式
  12. WINFORM的DataGridView使用点滴
  13. "UBUNTU: SAUCE: apparmor: 3.0 backport of apparmor3"
  14. java配置文件的读写
  15. 2017最新最稳定的合买彩票源码asp+sql2008 新增PK式彩种+全新界面
  16. HTTPS 证书配置
  17. MySQL之数据库和表的基本操作(建立表、删除表、向表中添加字段)
  18. Tomcat zabbix监控、jmx监控、zabbix_java_gateway
  19. Spring Bean的生命周期,《Spring 实战》书中的官方说法
  20. HDU.1536.S-Nim(博弈论 Nim)

热门文章

  1. T-SQL 总结
  2. ubuntu sudo apt-get update与sudo apt-get upgrade的作用及区别,以及python pip的安装
  3. C# 窗体常用API函数 应用程序窗体查找
  4. binary tree
  5. 用jquery实现html5的placeholder功能
  6. c语言寄存器变量
  7. rabbitmq 和Spring 集成 实现(一)
  8. Error while trying to retrieve text for error ORA-12154
  9. Java的类名与文件名必须一致
  10. [SoapUI] 通过Groovy脚本获取project所在的路径或者直接用${projectDir}