你所在位置:首页C#.net开发 → c#类和接口、值类型和引用类型的区别

c#类和接口、值类型和引用类型的区别

发布时间:2019-03-14

1.类和接口

在C#中接口是负责功能的定义,项目中通过接口来规范类,而类是负表具体功能的实现。

一个类可以继承一个基类也就是父类,但可以实现多个接口(接口其实就是实现了多继承)。

在类中也有抽象类的定义,抽象类用abstract声明,抽象类(abstract class)不能实列化,抽象类里可以有抽象的方法,属性,也可以有具体的方法和属性。也就是说抽象类里可以有抽象方法,也可以有具体的方法,但是有抽象方法的类一定是抽象类。

接口╥nterface)只是功能的定义,是一个行为的规范,接口中可以包含方法,属性,而这些只有定义,而没有实现体。

2.值类型和引用类型

值类型和引用类型的区别在于,值类型的变量直接存放的是实际数据,而引用类型的变量存放的则是数据的地址。值类型的变量直接把变量的值保存在堆栈中,从堆栈中可以快速的访问实际数据,因此值类型表示实际数据,而引用类型的变量则是把实际数据的地址保存在堆栈中,而实际数据保存在堆中。表示指向存储在内存堆中数据的指针和引用,(包括类,接口,数组和字符串),因此值类型和引用类型最基本的区别在于内存中的存诸方式。

 

  值类型 引用类型 变量存放内容 实际值 引用 内存单元 堆栈 堆 传递参数 实际值 引用(对象)

    
上一篇:c#继承com
下一篇:C# Winform打包部署时添加注册表信息实现开机启动