先看示例然后说明
结构示例
public struct Person
{
string Name;
int height;
int weight
public bool overWeight()
{
//implement something
}
}
类示例
public class TestTime
{
int hours;
int minutes;
int seconds;
public void passtime()
{
//implementation of behavior
}
}
调用过程
public class Test
{
public static ovid Main
{
Person Myperson=new Person //声明结构
TestTime Mytime=New TestTime //声明类
}
}
(1)类是引用类型,结构是值类型。
引用类型是在堆上分配地址,值类型是在堆栈上分配地址。(堆和堆栈现在还不是很清楚,只知道堆栈的执行效率要高,先知道这个概念吧,以后再说)。
(2)类可以被继承,也可以继承其他类和接口。结构不能被继承也不能继承结构和类,但是结构可以继承接口.
(3)类有默认的构造函数,结构没有默认的构造函数,但结构可以添加构造函数。
(4)类有析构函数,结构没有析构函数。
(5)类必须要用new初始化,结构可以不用new初始化。
(6)类可以用protected修饰,结构不可以用protected修饰