C#派生类中使用基类protected成员的方法

我们知道C#中通过继承可以使一个具有公共数据和方法的基类被广泛应用从而减少代码量,这样派生类会具有基类中所有成员(除构造器等),我们理所当然可以通过派生类实例来使用基类的成员。那么当基类成员被protected修饰时,我们应该怎么在派生类中使用基类成员呢,下面将介绍使用方法。

首先我们贴一段错误的使用代码:

 1 class Program
 2     {
 3         static void Main(string[] args)
 4         {
 5             Console.ReadLine();
 6       
 7         }
 8     }
 9     public class Person
10     {
11         protected string Name
12         {
13             set { name = value; }
14             get { return name; }
15         }
16         private string name;
17     }
18     public class Student:Person
19     {
20         public void Method(Person person)
21         {
22              person.Name="rurui";
23          }
24     }

在派生类中我们不能引用基类的实例来作用基类成员,而我们应该使用派生类的实例来使用,如下代码:

 1 class Program
 2     {
 3         static void Main(string[] args)
 4         {
 5             Console.ReadLine();
 6         }
 7       
 8         public class Person
 9         {
10             protected string Name
11             {
12                 set { name = value; }
13                 get { return name; }
14             }
15             private string name;
16         }
17         public class Student : Person
18         {
19            public void Method(Person person)
20             {
21                 Student stu = person as Student;
22                 stu.Name = "rurui";
23             }
24            
25         }
26     }

 

转载于:https://www.cnblogs.com/rurui/p/6132294.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值