1.类的定义
C#使用类关键字class定义类,如:
public class MyClass
{
}
2.类的继承
类继承使用:
public class BaseClass
{
}
public class MyClass:BaseClass
{
}
3.子类的可访问不能大于父类的可访问性,如下是错误的
internal class BaseClass
{
}
public class MyClass:BaseClass
{
}
4.接口的定义使用 interface 关键字,一般以I开头
interface IMyInterface
{
void xyz();
}
5.抽象类,抽象类以abstract关键字定义
abstract class MyClass
{
int age=0;
abstract void xyz();
}
6.抽象类和接口的相似处和区别
相似处:接口和类都包含子类可以继承的成员,都不能实例化对象,单都可以声明对象
区别:(1)抽象类可以包含抽象成员和非抽象成员(即有方法体的成员),接口只能包含抽象成员,接口成员默认是抽象的,但不使用abstract修饰
(2)抽象类可以包含公共的,受保护的,受保护的内部成员,而接口成员一是公共的,但是不使用访问控制修饰符
(3)接口不能包含字段(可以包含属性),构造函数,析构函数,静态成员和常量。
7.接口的实现
接口可以包含属性和方法,当实现一个接口时必须实现相应的方法,且书写属性的get和set块,实现的方法和属性必须是公共的;
可以使用abstract或virtual实现接口成员,但不能用static或const。
interface Iterface1
{
void Dosomething();
}
interface Iterface2 : Iterface1
{
new void Dosomething();
string Name { get; set; }
}
class TestInterface:Iterface2
{
public void Dosomething()
{
}
private string _name;
public string Name
{
get { return _name; }
set { _name = value; }
}
}
7.参考资料
http://blog.sina.com.cn/s/blog_574c993d0100d59n.html