C#基础:父类 = new 子类() 的效果和作用

代码如下:

using System;
using System.Collections.Generic;
using System.Linq;

namespace StudentClassExample
{
    public class Son : Parent
    {
        public Son()
        {
            a = 1;
        }
    }

    public class Parent
    {
        public int a { get; set; }
        public int Geta()
        {
            return a;
        }
    }


    // 主程序
    class Program
    {
        static void Main(string[] args)
        {
            Son son = new Son();//1

            Parent parent = new Son();//父类指向子类,可以调用子类方法和使用子类变量(多态)parent.a=1
            int result = parent.Geta();//1


            Parent parent2 = new Parent();//parent.a=0
            int result2 = parent.Geta();//0
        }
    }
}
  • Son 类的构造函数初始化了 a 的值为 1,因此 parent(指向 Son 实例)的 a 为 1。
  • parent2 是 Parent 的实例,a 默认为 0。
  • 父类 = new 子类() :子类实例赋值给父类引用,可以在运行时决定具体调用哪个子类的方法或属性,体现多态。

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值