作者wwe90425 (撒尿牛丸)
看板C_Sharp
标题[问题] 介面实作的问题
时间Sun Jan 15 00:34:12 2017
之前看深入浅出c#有提到
如果有继承介面的话,一定要实作介面的方法或属性
但这几天上班看到同事写的程式码时
却发现没有实作介面类别理的方法,却可以顺利compile没报错
想请问一下这是什麽原因?
附上程式码:
介面:
public interface IRepository<T> where T : class
{
IQueryable<T> GetAll();
T GetById(int id);
void Add(T entity);
void Update(T entity);
void Delete(T entity);
void Delete(int id);
}
继承介面的类别:
public interface IRepoPostSubDtl : IRepository<T_PostSubDtl>
{
}
另外想请问一下where T : class这是什麽意思
请高手帮忙解答,感谢~
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 118.166.129.240
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/C_Sharp/M.1484411657.A.ED8.html
1F:推 vi000246: 因为继承它的也是一个介面 T是泛型 class代表传进来 01/15 01:06
2F:→ vi000246: 的参数只能是class 01/15 01:06
3F:→ jizang: 你Code里面继承介面的不是类别,仍然是一个介面... 01/15 17:31
4F:推 ryan10328: 那个叫做泛型约束条件 01/26 20:23
5F:→ Litfal: 介面继承介面通常用"扩充"这个词 比较简单易懂 01/27 10:22
6F:→ reichs: class应该是约束T必须是参考型别,struct则是实值型别. 01/28 17:43