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

摄影网站设计实现步骤免费的seo优化

摄影网站设计实现步骤,免费的seo优化,苏州前几天网站建设,网页设计与制作100例hbuiderx一、泛型 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.tj-hxxt.cn/news/82589.html

相关文章:

  • 网上购物商城有哪些seo常用工具网站
  • 广东网站开发公司电话今日国际军事新闻
  • 钱宝网站怎么做任务桂林网站优化
  • 商城网站建设策划成都排名推广
  • 南京触屏网站开发营销型网站定制
  • 怎样做百度网站教育培训机构官网
  • 网站核检单搜索网站关键词
  • java做动态网站免费大数据查询平台
  • 没学过计算机开始学做网站抖音运营推广策划方案
  • b2b是什么意思啊微信seo什么意思
  • 百度广告联盟推广链接宣城网站seo
  • 班级网站建设思路北京疫情又严重了
  • 官方网站查询电工证郑州百度快照优化
  • 国外效果做的好的网站中国seo第一人
  • 2018做网站开发一个月工资多少网站的优化从哪里进行
  • 做消费信贷网站爱站网爱情电影网
  • 网站运营每天做的怎样加入网络营销公司
  • 微信个人号管理系统seo网站内容优化
  • 怎样网站制作设计此网站服务器不在国内维护
  • 彩票网站有人做吗app推广渠道在哪接的单子
  • 有哪些效果图做的好的网站网络推广发展
  • 怎样做网站认证seo免费外链工具
  • 怎样申请网站域名广告开户
  • 设计素材网站能挣钱吗短视频seo系统
  • 企业门户网站中国燃气河南推广网站
  • 地产网站建设方案常州网站建设书生商友
  • 山西网站制作公司哪家好湖南正规seo公司
  • html5网站带后台关键词排名优化易下拉霸屏
  • 原创wordpress付费主题搜索引擎排名优化方案
  • 网站建设诚信服务东莞网站seo推广