• 高级内容,非专业人士请绕道


       

       首先跟大家分享一句话: 偶尔找个时光,好好的放松一下吧,不要背负过多的压力。拒绝不属于我们自己的承担,让自己做一下自己想做的事,不要太长的时间,一个下午就好

    Okay, give me the next time.

         NO.1     接口初步

    01.接口是用来规范实现该接口中类中方法的格式,它相当于是规范的制定者。

    02.在没有继承关系的多个类中,想实现多态,接口是一种处理方案。

    03.接口中只能定义方法不能定义变量。

       0.1 :创建一个接口

             命名规范所有接口名称必须有I开头,代表interface

    public interface IFly
     {
      //注意接口中的方法不能有方法体,也不能有修饰符
    //
    void Say(); }

        0.2 :使用接口实现多态

    0.2.1  先定义一个接口

    public interface IFly
        {
        
           //返回类型为string ,传入参数类型为string
            string Say(string msg);
    
        }

    0.2.2  然后定义两个可以飞翔的类用来实现此接口

     //01.定义一个鸟类
    public class Birds:IFly,IEat
        {
            public string Say(string msg)
            {
                Console.WriteLine("我是一只小小鸟");
                return "鸟!";
            }
        }
    
    //02.定义一个飞机类
     public class Plane:IFly
        {
            public string Say(string msg)
            {
                Console.WriteLine("我是一架冒着黑烟徐徐飞翔在孤寂的夜空中!!");
                return "飞机";
            }
        }

     0.2.3最后在Main方法中实现接口

      class Program
        {
            static void Main(string[] args)
            {
                //定义一个接口类型的数组
                IFly[] flys = {
                                  new Birds(), 
                                  new Plane()
                              };
                //遍历数组中的对象
                foreach (IFly fly in flys)
                {
            //括号中的“飞行”并非可以显示出来,而是根据规范传入的字符串,可以是任意字符
                    Console.WriteLine(fly.Say("飞行"));
                   
                }
                Console.ReadKey();
                
            }
        }

     运行结果如下:

    讲到这里,你会了吗?反正我会了。

    NO.2     匿名类

    解析:顾名思义也就是没有名字的类!

    话不多说马上来定义一个匿名类:

      //什么是var?
     //成就匿名类的就是var:是一种语法糖技术
     //var 意思就是代表任何数据类型,但是CLR在编译的时候会把它编译成确切的数据类型
                var stu = new {Name="老王",Age=20,Phone="110"};
                var stu2 = new {Name="随便",Age=25};

    匿名类就定义好了,那么就有人问了怎么调用输出呢?来看代码

     static void Main(string[] args)
            {
              
                var stu = new {Name="老王",Age=20,Phone="110"};
                var stu2 = new {Name="随便",Age=25};
                 Console.WriteLine("我是"+stu.Name+ "我今年"+stu.Age+"岁"+"我的电话号不是"+stu.Phone);
                Console.WriteLine("我是"+stu2.Name+"我今年"+stu2.Age); Console.ReadKey(); }

     运行结果如下:

     由于个人时间原因,今天讲的就到这里,如果大家感兴趣请关注一下,后续内容我会定时补上,谢谢大家百忙之中抽出的时间!

  • 相关阅读:
    ajax chrome load
    不一样的自拍
    jQuery点击空白关闭弹出层
    笔记整理
    带三角缺口的边框
    连续input在同一行对齐问题
    用Windows PowerShell 控制管理 Microsoft Office 365
    Qt and C++ Reflection,利用Qt简化C++的反射实现
    滴滴打车推出的“专车服务”后的见闻以及思考
    Exchange的AutoDiscover服务
  • 原文地址:https://www.cnblogs.com/System-out-println/p/5387678.html
Copyright © 2020-2023  润新知