码迷,mamicode.com
首页 > 其他好文 > 详细

07抽象类特点

时间:2016-12-05 13:52:23      阅读:134      评论:0      收藏:0      [点我收藏+]

标签:括号   cti   ons   ram   stat   rri   虚方法   main   类方法   

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

namespace _07抽象类特点
{
    class Program
    {
        static void Main(string[] args)
        {
            //1.抽象类、抽象成员必须标记为abstract,不能有实现,连大括号也不能有。
            //2.抽象成员必须在抽象类中。
            //3.抽象类不能被实例化,实例化后也没有用。
            //4.子类继承抽象类后,必须把父类中的抽象abstract成员都重写override。除非子类也是抽象类。

            //5.抽象成员访问修饰符不能是private
            //6.抽象类中可以包含实例成员。实例成员可以不被子类实现。
            //7.抽象类是有构造函数的,虽然不能被实例化。
            //8.如果父类抽象方法有参数,子类override重写时要传入对应参数,有返回值也类似有返回值。

            //父类方法有默认实现,父类需要被实例化时,可以考虑将父类定义为普通类,用虚方法实现多态。
            //父类没有默认实现,也不需要实例化,则将父类定义为抽象类。

            Student s = new Student();
            s.Say();
            s.Test("andu");
        }
    }

    abstract class Person
    {
        public abstract void Say();
        public abstract void Test(string name);
    }
    class Student : Person
    {
        public override void Say()
        {
            Console.WriteLine("呵呵");
        }

        public override void Test(string name)
        {
            Console.WriteLine("你好啊,{0}",name);
        }
    }

    abstract class Teacher : Person
    {

    }

}

 

07抽象类特点

标签:括号   cti   ons   ram   stat   rri   虚方法   main   类方法   

原文地址:http://www.cnblogs.com/andu/p/6133417.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!