在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

继承

单继承

不能通过子类访问父类private

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ConsoleApp1
{
    public class People
    {       
        public int Id {  get; set; }
        public string Name { get; set; }
    }
    //继承 只能c#单继承
    public class Teacher:People
    {
        public string Type {  get; set; }
        public string Position {  get; set; }
    }
    public class NewTeacher : Teacher { 
        public string NewTeacherNo {  get; set; }
    }
}

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
创建了一个实例吗?为啥要创建?好调用吗?
在这里插入图片描述
有参构造方法里面的参数必须要实现吗?
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
这个构造方法有什么用

 public NewTeacher(int id,string name) {
     this.Id = id;
     this.Name = name;
     this.Type = Type;
     this.Position = Position;
     this.NewTeacherNo = NewTeacherNo;
     Console.WriteLine("id:" + Id +",type:"+Type+",NewTeacherNo:"+NewTeacherNo);

 }

在这里插入图片描述
为什么要进行初始化,不进行初始化还可以调用父类属性吧

在这里插入图片描述
在这里插入图片描述

public class People {
    public int Id { get; set; }
    public string Name { get; set; }
}

public class Teacher : People {
    // 不写构造函数,不初始化属性
}

// 使用:
Teacher teacher = new Teacher();  // 不初始化
Console.WriteLine(teacher.Id);    // 能调用,输出:0
Console.WriteLine(teacher.Name);  // 能调用,输出:null(空值)

在这里插入图片描述

using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.CompilerServices;
using System.Text;
using System.Threading.Tasks;

namespace ConsoleApp1
{
    public class People
    {       
        public int Id {  get; set; }
        public string Name { get; set; }
    }
    //继承 只能c#单继承
    public class Teacher:People
    {
        public string Type {  get; set; }
        public string Position {  get; set; }
    }
    public class NewTeacher : Teacher { 
        public string NewTeacherNo {  get; set; }
        public NewTeacher(int id,string name) {
            this.Id = id;
            this.Name = name;
            this.Type = Type;
            this.Position = "NEW TEACHER NO";
            this.NewTeacherNo = NewTeacherNo;
            Console.WriteLine("id:" + Id +",type:"+Type+",NewTeacherNo:"+NewTeacherNo);

        }


    }
}

namespace ConsoleApp1
{
    internal class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("Hello, World!");
             NewTeacher xiaocao=new NewTeacher(9,"xiaocao");
            xiaocao.Position = "newTeacher";
            Console.WriteLine(xiaocao.Name+","+xiaocao.Id+","+xiaocao.Position);
        }
    }
}

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
什么是静态成员

Logo

Agent 垂直技术社区,欢迎活跃、内容共建。

更多推荐