• 进入面向对象的世界:类就是代码,对象是内存。


    从今天开始,我们要逐步的接触和了解面向对象。
    首先我们先了解一下抽象的意思。我不讨论理论意义上对于抽象的名词解释,我只通过我的理解来描述。

    1int i = 7;
    这行代码非常非常地简单,但就蕴含着抽象。抽象了什么呢?int抽象了一个4个字节的空间,7抽象了两进制111。
    1public class Car
    2
    3
    4}

    5
    6public class Warehouse
    7
    8
    9}

    看上面的代码,如果你对单词的理解没有歧义的话,那么也许就能在你的大脑中映射出汽车和仓库。瞧,这就是抽象的意义。封装内部的具体执行细节。
    所以我们先记住第一点:
    抽象指的是类(Class)。

    类仅仅是文字上的描述,相当于图纸。所以我们有一份QQ汽车的设计图纸,我们可以称这个图纸为类,因为他抽象了将来被生产出来的汽车所具有的所有价值体现。这份图纸被转到流水线后,就生产出了汽车,那么汽车和图纸有什么区别呢?我认为汽车是真正消耗了社会资源的实际物品,就是说汽车是图纸的实例。
    所以我们记住第二点:
    实例指的是对象(Object)。

    总结一下:类就是代码,对象是内存。

    那为什么我们要进入面向对象的世界呢?我们以前的C,VB等开发语言,还记得我们要背函数吗?记不住函数,要去帮助找相关数据操作的函数。比如我要去MSDN查字符串函数。找起来还很不方便,因此我们要买书,书上对各函数作了分类:字符串、日期、数学。我们发现函数被有序的组合起来,我们学习和查找都方便的多。所以产生了类,类把相关自身数据类型的函数聚集在一起,便于我们使用。

    因此第三点:
    函数是无序世界,类是有序世界。

    C#中所有的类型都是对象类型,类仅支持单继承

    System.Object 所有其他类型的最高类型
    System.String 字符串类型
    System.ValueType  值类型的基类
    System.Enum  枚举类型的基类
    System.Array 所有数组类型基类
    System.Delegate 所有委托类型基类
    System.Exception 所有异常类型基类


     
     类是一组数据的集合,我们将他们分类看下

    数据成员 常数
    字段
    函数成员 方法
    属性
    事件
    索引器
    运算符
    实例构造函数
    静态构造函数
    析构函数


    类允许修饰,有类声明修饰、访问修饰、成员修饰


     




     

  • 相关阅读:
    kubernetes入门(03)kubernetes的基本概念
    洛谷P3245 [HNOI2016]大数(莫队)
    洛谷P4462 [CQOI2018]异或序列(莫队)
    cf997C. Sky Full of Stars(组合数 容斥)
    cf1121F. Compress String(后缀自动机)
    洛谷P4704 太极剑(乱搞)
    洛谷P4926 [1007]倍杀测量者(差分约束)
    洛谷P4590 [TJOI2018]游园会(状压dp LCS)
    洛谷P4588 [TJOI2018]数学计算(线段树)
    洛谷P4592 [TJOI2018]异或(可持久化01Trie)
  • 原文地址:https://www.cnblogs.com/shyleoking/p/637052.html
Copyright © 2020-2023  润新知