楼上的一看果然是也是新手,C#里分字段和属性,都是成员变量,字段是私有的,在程序内部使用,而属性则是对外提供访问字段的权限(外是指这个类以外的其他类),可能你会问为什么不直接把字段写成PUBLIC的对外公开,如果这样做了就失去了可控性,比如要让一个字段,在外部访问时只能读取而不能修改,那么就可以只写get。又比如,赋值的时候不是什么值都能赋的,要做限制就可以在set中控制。不然的话,别人给这个段赋值多少就是多少。要是你写的程序被人破解,那你这值就被随便改了。没安全性可言,一点也不可控。说白了属性就是用来控制外部访问的。关于接口和类的区别我就不多说了,(打字累啊)只说两点,一类只能被继承一个,而接口可以被实现多个,另一点就是接口可以是毫无关系的两种类型而具有共同的行为,即方法。所以用来实现多态性是比类好。