当前位置: 首页 > news >正文

共享设计平台乐陵seo外包

共享设计平台,乐陵seo外包,微信开发app,律师做哪个网站好今天我们来聊一聊继承,说实话今天也是我第一次接触。 继承的概念是什么呢?就是一个类可以继承另一个类的属性和方法(成员) 继承是面向对象编程中的一个非常重要的特性。 好了,废话不多说,下面切入正题&a…

今天我们来聊一聊继承,说实话今天也是我第一次接触。

继承的概念是什么呢?就是一个类可以继承另一个类的属性和方法(成员)

继承是面向对象编程中的一个非常重要的特性。

好了,废话不多说,下面切入正题:

1.首先我们定义一个子类,给它创建两个构造:一个无参构造和一个有参构造

  定义一个枚举类

在定义的子类中它有自己独有的属性:

 

在定义的父类中的属性和构造:

 

在Main方法中:

同时要注意,在调用子类的带参构造时,我们要想到调用子类构造的时候,没有使用base关键字调用父类的指定的构造,默认调用父类的无参构造.

补充一下:

   01.base代表父类对象,如果base():调用父类的构造函数

   02.base代表的是方法调用,是不需要参数类型的

  03.base(传参顺序和父类构造一致,变量名和子类构造参数一致)

2.在这里补充一点访问修饰符

我们所知道的:public  private  protected

下面我画一个图来简单的描述一下(√表示可以,×表示不可以)

                  当前类     子类     其他类(Program)
   private         √          ×        ×
   protected     √          √        ×
   public           √          √        √

总结:我们可以清晰的明白三种访问修饰符对类成员的访问限制强度:private>protected>public

 3.new 子类底层原理图

我简单的用一个图来描述一下:

用文字描述:

   1.走到子类构造,不进入构造体
   2.转向父类,进入父类构造体执行
   3.转回子类构造,执行子类构造体
   4.转到Main,内存中构建出子类对象

4.继承还具有两大特性这个我们也不要忘记了,就是单根性和传递性

  单根性指的就是一个子类只有一个父类

  传递性就是只要跟父类有继承关系,就可以使用父类的属性和方法

接下来我们讲一讲多态

1.多态是什么呢?字面上的意思就是多种形态

用专业一点的话来说就是指同一个操作作用于不同的对象时,可以有不同的解释,产生不同的执行效果。

我们所接触的方法重载也是多态的一种方式。

如何实现多态呢?不要急下面我来解说

(1)实现方法的重写

      在父类中定义的方法,用virtual关键字来定义为虚方法

     在子类中定义自己的方法,用override关键字来修饰,实现对父类的方法的重写

(2)定义父类变量,用子类变量初始化父类变量

是不是觉得抽象,其实我刚开始学习时也是一样的,下面来一个小案例:

//创建一个Person父类

 public class Person
    {
       public virtual void SayHello()
       {

            //父类特有的方法
           Console.WriteLine("父类打招呼方法");
       }
    }

//创建一个Korea子类

public class Korea:Person  //在这里要注意它继承于Person类
    {
       public override void SayHello()
       {
           Console.WriteLine("金喜善打招呼方法");
       }
    }

//创建一个Chinese类

public class Chinese:Person //在这里要注意它继承于Person类

    {
       public override void SayHello()
       {
           Console.WriteLine("你好!");
       }
    }

//创建一个American类

public class American:Person   //在这里要注意它继承于Person类
    {
        public override void SayHello()
        {
            Console.WriteLine("Hello");
        }
    }

 前面我们也学过泛型了下面我们就用泛型来存储

            List<Person> list=new List<Person>();
            Chinese chinese=new Chinese();
            American usa=new American();
            Korea korea=new Korea();

            list.Add(chinese);
            list.Add(usa);
            list.Add(korea);

下面我们可以用foreach来遍历

方式一:

           foreach (Person person in list)
            {
               person.SayHello();
            }

方式二:

           foreach (Person person in list)
            {

               //方式二:不使用统一调用
                if (person is Chinese)
                {
                   Chinese chinese= person as Chinese;
                    chinese.SayHello();
                }

               if (person is Korea)
                {
                    Korea chinese= person as  Korea;
                    korea.SayHello();
                }

               if (person is  American)
                {
                    American chinese= person as  American;
                     american.SayHello();
                }

            }

下面我再穿插个示例:

http://www.hengruixuexiao.com/news/45803.html

相关文章:

  • seo站长常用工具seo咨询推广
  • 可做易企秀的网站上海搜索推广
  • 淄博网站建设及托管站长工具使用
  • 做外包的网站有哪些问题站长工具 seo查询
  • 阿里巴巴企业网站注册短视频营销的优势
  • 成都网站建设外包公司网站推广方案
  • 做销售网站多少钱张北网站seo
  • 要写网站建设方案宿州百度seo排名软件
  • 外贸平台免费网站系统优化是什么意思
  • 成都高端网站制作企业培训机构
  • 做空压机网站的公司有哪些推广普通话宣传语
  • dz网站建设上海优化外包
  • 做企业网站需要买什么在线工具网站
  • 网站怎么做本地测试网络营销公司哪家可靠
  • 网站做端口是什么问题在线资源搜索引擎
  • 做网站推广需要哪些知识成免费的crm
  • 网上代做论文的网站好seo优化基础教程pdf
  • 推广方式单一的原因宁波seo推广咨询
  • 大连公司招聘肇庆seo排名外包
  • 如果快速做网站网站域名怎么查询
  • 爬虫怎么看网站开发者模式南宁网站制作
  • 河北做网站公司那家好seo公司官网
  • 人力资源劳务派遣公司公司网络优化方案
  • 无代码做网站惠州seo按天计费
  • 钢丝高频退火设备网站建设企业文化
  • 在哪里做网站效果好宁波网站推广公司价格
  • 对网站有效的优化软件现在什么app引流效果好
  • 网上做网站推广骗局互联网品牌的快速推广
  • 网站怎么推广运营东莞网络营销平台
  • 上海建设机械网站pc端百度