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

电子商务是建网站广州十大网站建设

电子商务是建网站,广州十大网站建设,wordpress自动采集插件,廊坊关键词优化服务概念 首先聊聊泛型,泛型是JDK5的新特性。泛型是用来指定不同类型来控制形参具体限制的类型。泛型这种语法机制,只在程序编译阶段起作用,只是给编译器参考的(运行阶段泛型没用)。写了这么多代码应该能知道泛型的优点就是…

概念

        首先聊聊泛型,泛型是JDK5的新特性。泛型是用来指定不同类型来控制形参具体限制的类型。泛型这种语法机制,只在程序编译阶段起作用,只是给编译器参考的(运行阶段泛型没用)。写了这么多代码应该能知道泛型的优点就是可以使集合中存储的元素类型是统一一致的并且可以做到不需要进行大量的转型。此文章并不主要讲泛型的使用,而是记录源码中泛型的用法,比如<T>这种类型。

public class GenericTest{public static void main(String[] args){//这就是使用泛型的方法 保证此集合只存储String数据类型的元素List<String> list = new ArrayList<String>();//在JDK8后引入了新特性:自动类型推断机制 可以将上面的语句简写为:List<String> list = new ArrayList<>();}
}

泛型表示

        首先应该知道泛型可以被用在什么地方上?答案有:接口方法属性。当然哈,泛型不能用在八种基本数据类型上:byte、short、int、long、float、double、boolena、char。必须用在类名后或者方法返回值之前。泛型的表达式主要有以下几种:

1、<T> 普通符号

2、无边界通配符 <?>

3、上界通配符 <? extends E> E表示父类

4、下界通配符<? super E> 是E的子类

泛型擦除

public class GenericTest {public static void main(String[] args){List<String> l1 = new ArrayList<>();List<Integer> l2 = new ArrayList<>();System.out.println(l1.getClass() == l2.getClass() ? "true" : "false");//true}
}

从上面这个例子可以看出两个集合中存储的类型不一致,但是得到的字节码文件是一样的。这就是因为JVM的泛型擦除机制,在JVM中把泛型给忽略掉了,只保留了原始类型。

静态方法与返回类型

        上文说过:泛型必须用在类名后或者方法返回值之前。所以如果我们编写的类中的静态方法,使其返回的类型为当前类本身并且后面还加了个泛型,那么静态方法后也要加泛型,否则会报错,这是为什么呢?例子如下:

public class Result<T> {private T data;//这样写是会报错的public static Result<T> ok(T data){return Result.ok(data);}//必须在静态方法后也加个泛型public static<T> Result<T> ok(T data){return Result.ok(data);}//如果不想报错就写成非静态的public Result<T> ok(T data){return Result.ok(data);}
}

        上述这个例子就必须研究到JVM的类加载机制:

        静态方法和普通方法的生命周期不一致:静态方法生命周期属于类加载的时候,在Java中泛型只是一个占位符,必须传递具体类型才可以使用,也就是类实例化的时候才传递具体参数类型,由于静态方法的加载在类实例化之前,也就是说在类未实例化的时候,类中的泛型还没有传递真正的类型参数,这时候静态方法就已经加载完成。显然,静态方法不能使用/也就是访问不到泛型类中的泛型,所以需要加<T>声明使用哪种泛型类型。所以说,如果不想报错的话也可以不用静态方法。

        还有一点就是关于泛型擦除。Java的泛型属于伪泛型,也就是说只会在编译期才生效。编译之后会产生泛型擦除。比如T就会被JVM认成Object。

http://www.yayakq.cn/news/710199/

相关文章:

  • 网站建设推广加盟安徽网站建设信息
  • ssp网站怎么做wordpress php页面
  • wordpress如何才能自己登陆进入自己的网站 进行修改呢wordpress主题编写
  • 网站建设数据库设计湖北省建筑信息平台
  • 沈阳工程建设信息网站电气监理网站开发公司长春
  • 外贸网站建设内容包括建立自我追求无我是什么意思
  • 网站同时使用asp php网站建设收获
  • 甘肃网站建设专业定制网站建设费用包括哪些方面
  • 酷维网站模版杭州富阳网站建设
  • 中国住房城乡建设部网站首页百度联盟是什么
  • 免费申请做网站平台wordpress透明化插件
  • 单页面网站多少钱建筑公司有哪些
  • 扬州市建设局网站 竣工备案自己做卖假货网站
  • 做的王者荣耀钓鱼网站云购物网站建设
  • asp网站制作工具网站建设平台 三合一
  • 电子商务网站开发环境在线游戏网页版
  • 南宁企业网站设计公司discuz和wordpress
  • 怎么做网站文字图片设计建设网站
  • 天津建设厅 注册中心网站首页俐侎族网站建设背景
  • 企业展示网站 价钱购物网站有哪些平台
  • 青海公司网站建设哪家好seo云优化如何
  • 南宁网站制wordpress 3.9 xss
  • 海南省建设监理协会网站windows软件开发工具
  • 网站制作建设建议兴田德润论坛网站怎么做
  • 江门公司网站制作常见的网络营销方法
  • 网站规划和建设wordpress加字体颜色
  • 手机餐饮网站开发前十名少儿编程机构
  • 新闻资讯型网站开发做一个网站的详细教学
  • 公司网站建设费会计分录马鞍山的网站建设公司
  • 网站的设计制作与维护柯林自助建站