C#

# C#学习笔记——类的继承和接口

2020-05-24  本文已影响0人  盛夏的猫宁

继承

经常会需要扩展现有的类型来添加方法或数据。比如我们首先有一个Student类来存储学生的姓名、年龄等信息,现在需要建立一个类BoyStudent来存储男同学的兴趣爱好。因为每个男同学都是学生,因此Students类中的所有内容都应该被包含在BoyStudent类;另一方面,BoyStudent类中还包含Student类中不包含的内容,如兴趣的种类。在这种情况下,BoyStudent类就可以在Student类的基础上建立,即在Student类的基础上添加新的内容。我们可以称BoyStudent类继承自Student类,其中Student类称为基类,BoyStudent称为派生类。

来看两段代码。

//基类 
public class Student
{
    public string Name{get;set}
    private int Age{get;set}
    public virtual string Teacher{get;set}//允许重写的属性
}
// 派生类
public class BoyStudent : Student
{
    public string Hobby{get;set}
    public string TeacherName;
    public override string Teacher
    {
        get
        {
            return $"Dear {TeacherName}";
        }
        set 
        {
            TeacherName = value;
        }
    }
}
// 调用
public class Program
{
    public static void Main()
    {
        BoyStudent boyStudentTom = new BoyStiudent();
        boyStudent1.Name = "Tom";
        
        Student studentTom = boyStudentTom;// 类型转换
    }
}

接口

接口有点像协议,在其中定义实现的某些功能的方法名称和这些方法需要的参数类型。这样的话,该接口的所有派生类的实例,在调用该方法时就会有统一的格式。

// 定义接口
 interface IfileWrite
 {
     void FileWrite(string address,string fileName);
 }
// 接口派生类
 class Example:IfileWrite
 {
     public void FileWrite(string address,string fileName)
     {
         ...//具体实现
     }
 }
上一篇下一篇

猜你喜欢

热点阅读