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

摄影网站设计实现步骤seo网络推广企业

摄影网站设计实现步骤,seo网络推广企业,做网站公司不给源代码,修改网站主目录的位置一、泛型 1 概念 泛型(Generics),广泛的类型。最大用途是给集合容器添加标签,让开发人员知道容器里面放到是什么类型,并且自动对放入集合的元素进行类型检查。 类比实参和形参,我们在对方法中的变量操作时,并没有指…

一、泛型

1 概念

泛型(Generics),广泛的类型。最大用途是给集合容器添加标签,让开发人员知道容器里面放到是什么类型,并且自动对放入集合的元素进行类型检查。

类比实参和形参,我们在对方法中的变量操作时,并没有指明变量的实际大小,而是使用变量名来指代。泛型就是这个情况下诞生的,通过符号来指代类型,等方法调用传入实参时才会明确具体类型。

//当使用这个类时,再指明T的类型
class MyClass<T>{T obj;public T getObj(){return obj;}public void setObj(T obj){this.obj = obj;}
}public class Demo{public static void main(){//指明类型是StringMyClass<String> stringClass = new MyClass<>();//指明类型是DoubleMyClass<Double> stringClass = new MyClass<>();//指明类型是IntegerMyClass<Integer> stringClass = new MyClass<>();}
}

总的来说,泛型就是一个参数,是类型的参数。泛型的作用:把运行时可能存在的强制类型转换风险提前到编译期解决,并简化了代码。

2 声明位置和使用位置

  • 泛型类
    • 声明位置:类名 <T>
    • 可以使用的位置:
      • 成员变量类型
      • 非静态成员方法的返回值类型
      • 非静态成员方法的参数类型
  • 泛型接口
    • 声明位置:接口名 <T>
    • 两种使用情况:
      • class ClassA implements 接口名<类型名称>, 实现类不再是泛型类
      • class ClassB<T> implements 接口名<T>, 实现类还是泛型类
  • 泛型方法
    • 声明位置:public static <T> 返回值类型 方法名(T t)
    • 使用位置:只能在方法域内部使用
    • 示例:public static <T> T show(T t) : 传入什么类型,就返回什么类型

3 使用的注意事项

  • 静态域内部不能使用泛型
  • 使用泛型类时,必须明确泛型类型
  • 使用泛型对象时,可以省略右边的泛型类型,但是不能少了<>
  • 如果使用泛型类时没有指明类型,默认是Object类型

4 通配符

  • <?> 表示任意的泛型类型
    跟原先的T有些区别,原先的T的类型对应的是调用时传入的类型。方法泛型需要再返回值前面定义。即public static <T> 返回值类型 方法名(T t),所以T类似于一个中转站。
  • <? extends A> 设定类需要继承父类A,即上限
  • <? super B> 设定类需要是子类B的父类,即下限

应用场景:

  • 设置下限:最小也肯定是动物。最大可能是Object。通常用于添加数组,不适合获取数据
void test1(List<? super Animal> list){//适合添加数据list.add(new Animal());list.add(new Cat())//不适合获取,得到数据后也要强制类型转换Object o = list.get(0);
}
  • 设置上限:获取到的肯定是动物的子类,最大也是动物类
void test1(List<? extends Animal> list){//适合获取数据Animal a = list.get(0);//不能添加数据list.add(new );//无法确定添加什么类型的数据
}
  • <?>不适合获取,也不能添加,通常用于翻转,复制等操作。

5 通配符<?>和泛型参数T的区别

通配符<?>和泛型参数T的区别在于使用的场景和限制。 通配符<?>是一种不确定的类型,可以用来表示任意类型。它可以在方法的参数和返回值类型中使用,用来增加灵活性,使方法可以接受不同类型的参数。
泛型参数T是一种确定的类型,可以在类、方法、接口等定义中使用,用来指定某种具体的类型。它可以使代码更加安全和类型正确,并提供编译时的类型检查。

具体区别如下:

  1. 使用范围:通配符<?>可以在方法的参数和返回值类型中使用,可以接受不同类型的参数。而泛型参数T可以在类、方法、接口等定义中使用,用来指定某种具体的类型。
  2. 灵活性:通配符<?>可以接受任意类型的参数,因此在方法的定义中可以处理多种不同类型的参数。而泛型参数T是一种确定的类型,只能处理指定的类型。
  3. 类型推断:通配符<?>在方法调用时无法推断具体的类型,需要手动指定或进行类型转换。而泛型参数T在方法调用时可以根据实际参数类型自动推断具体的类型,不需要手动指定。
  4. 限制:通配符<?>无法获取具体的类型信息,只能进行简单的操作。而泛型参数T可以通过反射等方式获取具体的类型信息,进行更复杂的操作。

总之,通配符<?>和泛型参数T在使用场景、灵活性和类型推断等方面有所不同。选择使用哪种方式取决于具体的需求和代码逻辑。

http://www.yidumall.com/news/90100.html

相关文章:

  • 重庆外贸网站建设公司除了百度指数还有哪些指数
  • 网站整体运营怎么在百度发帖
  • 网站建设托管东莞网络营销平台
  • 企业邮箱后缀seo主要优化
  • 网站域名过期怎么做网络推广项目外包公司
  • 网页设计视频网站建设汕头seo排名
  • O2O网站制作需要多少钱企业宣传标语
  • 西安学校网站建设价格百度识别图片找图
  • 杭州利兴建设官方网站网站查询
  • 苏州餐饮 网站建设百度在西安的公司叫什么
  • 泰安营销型网站建设公司独立站seo优化
  • wordpress 页面不存在seo工资待遇怎么样
  • 网站开发与app开发的区别网站收录是什么意思
  • 唐山诚达建设集团网站怎么宣传自己的店铺
  • 鹤壁北京网站建设游戏推广员怎么做
  • 电子商务公司经营范围有哪些怎么做网站优化排名
  • 做网站平台多少钱新产品推广方案范文
  • 企业 网站 客户留言怎么做广州软件系统开发seo推广
  • 做机械的专业外贸网站有哪些如何优化网站推广
  • 网站开发推广渠道竞价网络推广外包
  • python开发做网站360推广平台登录入口
  • 永州冷水滩网站建设重庆网站制作系统
  • 昆山有做网站的公司吗聚合搜索引擎
  • 仿win8 html5微网站纯手工代码百度经验实用生活指南
  • 深圳做网站的网络百度一下你就知道官网首页
  • 怎样做网站卖自己的产品教程企业网站的在线推广方法有
  • 中国佛山营销网站建设网络营销概念是什么
  • 《php网站开发实例教程》推广普通话活动方案
  • 春节网站设计app拉新推广代理
  • 徐汇区网站建设哪家比较靠谱百度指数移动版怎么用