抽象类和接口的区别:
这两者很相似,但也有细微的区别,所以面试总喜欢考这个
1)
抽象类里面可以定义抽象方法或者具体实现的方法
接口里面只能定义抽象方法,不可以定义具体实现
抽象类定义的是公共的实现和能力,接口只定义公共的能力
接口相当于给类打一个标签,标志这个类有这种能力
2)
接口中不可以定义字段,属性也只能定义简写的形式,如public int Age{get;set;}
//这种定义只是表明了有Age这个属性,但具体get和set的方法也还是空的
且 接口中的抽象方法也不能用 public 、private等修饰(因为无意义)
3)接口可以多实现,类只能单一继承