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

网络设计应该考虑的原则有哪些五年级上册优化设计答案

网络设计应该考虑的原则有哪些,五年级上册优化设计答案,安阳做网站哪里好,wordpress短链接关键字【C#】泛型 泛型是什么 泛型是将类型作为参数传递给类、结构、接口和方法,这些参数相当于类型占位符。当我们定义类或方法时使用占位符代替变量类型,真正使用时再具体指定数据类型,以此来达到代码重用目的。 泛型特点 提高代码重用性一定…

【C#】泛型

泛型是什么

泛型是将类型作为参数传递给类、结构、接口和方法,这些参数相当于类型占位符。当我们定义类或方法时使用占位符代替变量类型,真正使用时再具体指定数据类型,以此来达到代码重用目的。

泛型特点

  1. 提高代码重用性
  2. 一定程度避免装箱拆箱

泛型分类

声明 泛型类 基本语法:

class 类名<泛型占位字母>

声明 泛型结构 基本语法:

struct 结构名<泛型占位字母>

声明 泛型接口 基本语法:

interface 接口名<泛型占位字母>

声明 泛型函数 基本语法:

函数名<泛型占位字母>(参数列表)
注意:泛型占位字母可以有多个,用逗号分开

代码展示

1. 泛型类

class TestClass<T>
{public T value;
}
class TestClass2<T1, T2, K, J>
{public T1 value1;public T2 value2;public K value3;public J value4;
}
class Program
{static void Main(string[] args){//使用时必须指定具体数据类型,如:int类型TestClass<int> t = new TestClass<int>();t.value = 5;Console.WriteLine(t.value);//输出:5//再创建一个对象,将泛型指定为string类型,这里说明泛型可以提高代码重用性TestClass<string> t2 = new TestClass<string>();t2.value = "123456";Console.WriteLine(t2.value);//输出:123456//创建一个有多个泛型类的对象TestClass2<int, string, bool, TestClass<float>> t3 = new TestClass2<int, string, bool, TestClass<float>>();Console.ReadLine();}
}

2. 泛型结构体

struct TestStruct<T>
{public T value;
}
class Program
{static void Main(string[] args){//创建结构体对象TestStruct<bool> ts = new TestStruct<bool>();Console.WriteLine(ts.value);//输出:FalseConsole.ReadLine();}
}

3. 泛型接口及类继承

interface TestInterface<T>
{T value{get;set;}
}class Test : TestInterface<int>
{private int myValue;public int value {get{return myValue;}set{myValue = value;}}
}
class Program
{static void Main(string[] args){//创建接口实例,Test类是实现 指定泛型为int类型的接口 的类,所以创建接口实例时,泛型指定类型必须与Test类指定的泛型类型一致 即int类型TestInterface<int> it = new Test();it.value = 100;Console.WriteLine(it.value);//输出:100Console.ReadLine();}
}

创建接口实例时,泛型指定类型必须与Test类指定的泛型类型不一致时,会报错。
在这里插入图片描述

4. 泛型方法

  1. 普通类中的泛型方法
class Test2
{//泛型作为参数传递public void TestFun<T>(T value){Console.WriteLine(value);}//泛型作为返回值public T TestFun<T>(bool v){return default(T);}//泛型既不作为参数传递 也不作为返回值public void TestFun<T>(){//用参数类型在里面进行逻辑处理,例如:T t = default(T);//获得类型的默认值方法:default()Console.WriteLine(t);}//多个泛型作为参数传递public void TestFun<T, K, M>(T t, K k, M m){}
}
class Program
{static void Main(string[] args){//创建Test2对象Test2 tt = new Test2();tt.TestFun<float>(12.5f);//作为参数传递时 输出:12.5tt.TestFun<string>(true);//作为返回值tt.TestFun<int>();//既不作为参数传递 也不作为返回值  输出:0tt.TestFun<int, double, bool>(1, 8.888888, false);//多个作为参数传递Console.ReadLine();}
}
  1. 泛型类中的泛型方法
//Test2 与 Test2<T> 名字一样但是后者有泛型,就相当于新的类,两个类是不一样的
class Test2<T>
{public T value;//这个不叫泛型方法 因为 T是泛型类声明的时候 就指定的 在使用这个函数的时候 不能进行动态变化public void TestFun(T t){Console.WriteLine("No :" + t);}//这个才是泛型方法 一直是方法名后面加了尖括号并且有占位符public void TestFun<K>(K k){Console.WriteLine("YES :" + k);}
}class Program
{static void Main(string[] args){Test2<int> tt2 = new Test2<int>();//这两个不是同一个方法tt2.TestFun(156);//输出:No :156tt2.TestFun<int>(156);//输出:YES :156//这两个同一个方法tt2.TestFun<string>("123");//输出:YES :123tt2.TestFun("789");//输出:YES :789}
}

tt2.TestFun(156); 与 tt2.TestFun(156); 调用的方法如下:
在这里插入图片描述
tt2.TestFun(“123”); 与 tt2.TestFun(“789”); 调用的方法如下:
在这里插入图片描述

【tt2】是一个泛型为【int类型】的【Test2】对象,使用tt2.TestFun()方法时,传入的参数与对象的泛型一致时,则会调用【public void TestFun(T t)】。传入的参数与对象的泛型不一致时,则会调用同名的泛型方法【public void TestFun<K>(K k)】,且调用时可以省略尖括号【<>】,通过参数直接判断该方法的泛型数据类型。

小结

  1. 声明泛型时,就是一个任意类型的占位符,真正起作用是在使用它时。
  2. 泛型占位符至少有一个,可以有无数个,多个时用逗号分隔开。
  3. 文章提到的default目的是用来获取任意类型的默认值的。

因为作者精力有限,文章中难免出现一些错漏,敬请广大专家和网友批评、指正。

http://www.khdw.cn/news/64348.html

相关文章:

  • 合肥做网站推广哪家好央视新闻的新闻
  • 迅捷在线图片编辑seo搜索推广
  • 网站开发相关技术seo每日工作内容
  • 做网站的机构建站优化公司
  • 网站个人主页搜索引擎营销的6种方式
  • 科技核心期刊宁波网站推广优化公司怎么样
  • 专业烟台房产网站建设电子商务seo是什么意思
  • 五金外贸接单网站搜狗搜索引擎入口
  • 自己做网站传视屏外链网盘网站
  • 手机网站建设 苏州青岛seo关键词优化公司
  • 长沙o2o网站制作公司网站关键词怎么快速上排名
  • 不备案怎么做网站无锡网站制作推广
  • html5 手机网站开发叫才百度下载安装免费下载
  • cms网站源码网站收录入口
  • 1千万人网站维护成本网站排名顾问
  • 微信小程序定制开发需要多少钱电脑优化系统的软件哪个好
  • 设计和建设企业网站心得和体会网站免费推广网站
  • 公司网站模板内容线下推广渠道和方式
  • 建设的比较好的网站友情链接的概念
  • 官方网站开发需求网球排名即时最新排名
  • 建设网站前端营销渠道策划方案
  • 网站建设图片上传操作超云seo优化
  • 中国建筑网官网建设通杭州关键词优化服务
  • 网站标题格式建一个网站需要多少钱?
  • 专业网站的建设木卢seo教程
  • 政府网站平台安全建设方案关键词代做排名推广
  • 做网站要多少的分辨率google国外入口
  • 女生做网站运营好吗宁波网站建设团队
  • 做网站的怎样找客户浙江网站推广
  • 新人做网站盈利西安外包公司排行