using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleApp1
{
interface IInterface
{
}
public interface Icar
{
int doors;
string name;
bool suv
}
class Car : Icar
{
public int doors;
public string name;
public bool suv;
}
class Program
{
static void Main(string[] args)
{
Car s = new Car { doors = 5, name = "my name", suv = true };
Car t = new Car { doors = 2, name = "my name again", suv = false };
Console.WriteLine("test");
Console.ReadLine();
}
}
}
答案 0 :(得分:1)
因为不允许这样做。按照C# reference for interfaces:
接口可以是名称空间或类的成员,并且可以包含以下成员的签名:
- 方法
- 属性
- 索引器
- 事件
C# Programming guide进行了更详细的介绍,指出了界面中无法包含的内容:
接口不能包含常量,字段,运算符,实例构造函数,终结器或类型。接口成员是自动公开的,并且不能包含任何访问修饰符。成员也不能是静态的。
答案 1 :(得分:0)
因为您尚未将字段设置为实际属性。接口不支持字段。错误消息指出。
只需更改
public int doors;
public string name;
public bool suv;
收件人
int doors {get; set;}
string name {get; set;}
bool suv {get; set;}