zoukankan      html  css  js  c++  java
  • c#匿名类,匿名对象

    何谓匿名类,其实本质和普通定义的类一样,只不过是由系统的编译器来完成的,首先举个例子。

    一般情况

    //声明一个类,包含贴别多的字段
    public class Person()
    {
        public string  Name{set;ge;}
        public int   Age{set;get;}
                    .               
    }
    
    //实例化和初始化
    Person person=new Person();
    person.Name="喜羊羊";
    person.Age="懒洋洋";
              

    可以看出,当字段特别多的时候,太麻烦了,所以c#3.0提供了匿名类。语法是 var   名字=new {字段赋值};
    其中var在c#中和在javascript中是不同的,c#中只是作为推断,根据赋值推断出类型,隐式类型 var。 隐式类型的本地变量是强类型变量(就好像您已经声明该类型一样),但由编译器确定类型。

    1)var类型的值必须是局部变量或静态变量

      2)var变量在声明之前必须被初始化

      3)变量的值不能为null(这样编译器就不能判断类型了)

      4)var变量不能为一个方法或方法组

      5)不能用来声明参数类型

    javascript中var类型不做判断,什么类型都可以,这个变量是什么类型的(比如String,int,double等)不做严格的限定。

    //匿名类;声明一个类#3.0,相当于把类初始化和对象声明放在一起
                var v = new { Amount = 108, Message = "Hello" };
                Console.WriteLine(v.Amount + v.Message);
  • 相关阅读:
    python环境准备(2020-1-13)
    git知识
    toolbar的相关知识
    Android开发极光推送功能实现步骤
    Android开发分享功能实现步骤
    使用tablayout和viewpager实现简单的页面布局
    activity与fragment的交互(一个activity跳转到另一个fragment)
    java中堆区和栈区的区别
    WebView的基本使用
    final的用法
  • 原文地址:https://www.cnblogs.com/alsf/p/5993747.html
Copyright © 2011-2022 走看看