方法传参:
核心:推迟一切可也推迟的声明;
一、Object
1、利用面向对象的封装、继承、多态;Object是所有的父类;因此可以把任何变量都当做Object传入;
2、子类可以运用父类的所有方法和属性;
3、但是会有一次装箱拆箱的操作;会造成性能损失;
二、泛型
1、申明:public static void show<T>(t 参数){};T是占位符
2、调用:show<申明传入的类型>(值或参数);类型参数是可以省略的;
泛型实际上是语法糖,由编译器提供的功能,在编译的过程中,会生成的相应的方法;
3、泛型也可以用在返回值上,关键之Default可也返回一个默认值(根据T返回默认值);
4、public class 类名<a,v,c>{}泛型类
5、public interface 类名<a>{}泛型接口
6、public delegate 类名<b>();泛型委托
.
.
三、泛型约束
1、public staic T 方法名<T>(T t)where T:class{} 泛型约束申明后,在使用必须满足约束,
where T:Class ,约束T为引用类型;where T:struct;值类型
where t:Class,new() 这样约束也是可以的;new()表示无参数构造;
where t:类;现在的约束条件为这个T必须是这个类或者这个的之类;