1.当类没有继承于其它类时,都继承于object
类;object
类是所有类的基类。
2.继承方法:
public class 类名 : 继承的类名
例:
public class person{
private string _name;
public string Name{
get{return _name}
set{_name = value} //封装字段
}
public person(string name){
this.Name = name; //使用构造函数初始化
}
public class teacher : person{
private string _lesson;
public string Lesson{
get{return _lesson}
set{_lesson = value} //封装字段
}
public teacher(string name,string lesson) : base(name){ //base标定父类变量,本函数是构造函数,用于初始化
this.Lesson = lesson
}
}
3.new关键字
new用于创建对象
(1)使用:
类名 要把类赋值的变量名 = new 类名
例:
Teacher kivlnen = new Teacher
或:
类名 要把类赋值的变量名 = new 类名(构造函数 参数1,构造函数 参数2,...)
例:
Teacher kivlnen = new Teacher("kivlnen","English")
(2)子类隐藏父类方法
如果有这么一段代码:
_namespace codeo{
public class person{
public void sayhello{
Console.WriteLine("我是人")
}
}
public class teacher : person{
public void sayhello{
Console.WriteLine("我是老师")
}
}
}
那么我们在teacher类调用sayhello时会使用teacher类的sayhello,而不是它所继承的person的sayhello,同时还会报警告。
这时我们需要在子类函数前加一个"new"来起到隐藏父类重名方法的作用:
_namespace codeo{
public class person{
public void sayhello{
Console.WriteLine("我是人")
}
}
public class teacher : person{
public new void sayhello{
Console.WriteLine("我是老师")
}
}
}
网友评论