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

不懂代码怎么做网站免费的个人主页网页制作网站

不懂代码怎么做网站,免费的个人主页网页制作网站,重庆网站建设电脑版,简单个人网站制作教程泛型 简介 集合存储数据底层是利用 Object 来接收的,意思是说如果不对类型加以限制,所有数据类型柔和在一起,这时如何保证数据的安全性呢(如果不限制存入的数据类型,任何数据都能存入,当我们取出数据进行强…

泛型

简介
  1. 集合存储数据底层是利用 Object 来接收的,意思是说如果不对类型加以限制,所有数据类型柔和在一起,这时如何保证数据的安全性呢(如果不限制存入的数据类型,任何数据都能存入,当我们取出数据进行强转时无法保证成功,比如字母字符串是无法转为数字的)。所以从 JDK5 以后,引入了一个新特性 — 泛型,提供编译时类型安全检测机制,可以对存入的内容类型加以限制

  2. 泛型允许在定义类,接口时通过一个标识类表示其中某个属性的类型或者某个方法的返回值及参数类型。本质是参数化类型(将类型作为参数由用户传递)

  3. 这种参数类型可以用在类,接口和方法当中,分别称为泛型类,泛型接口和泛型方法

代码演示

自定义了一个简单的集合类,用于简单演示泛型的作用

//自定义集合类
public class MyArrayList<E> {int size = 0;Object[] arr = new Object[10];//限制插入集合的类型public void add(E item) {arr[size] = item;size ++;}//返回值类型确定public E get(int idx) {return (E) arr[idx];}
}//演示
public static void main(String[] args) {MyArrayList<Integer> arrayList = new MyArrayList<>();arrayList.add(100);Integer integer = arrayList.get(0);System.out.println(integer);
}
使用泛型

规范泛型使用字母表示的信息

  • T:Type (Java类),当类中属性要使用时可以用该字母表示
  • E:Element,在集合中使用,表示集合中元素的类型
  • K:Key(键),在表示键值对的时候使用
  • V:Value(值),在表示键值对的时候使用
  • N:Number(数值类型)
  • ?:表示不确定的 Java 类型
泛型类

格式public class 类名<泛型>

注意事项:泛型类型必须是引用数据类型。基本数据类型不可以,定义泛型类,在类后面添加尖角号,尖角号内部填类型参数,可以有多个参数,参数之间使用逗号分隔

代码:

//泛型类
public class User<T> {private T value;public User() {}public User(T value) {this.value = value;}public T getValue() {return value;}public void setValue(T value) {this.value = value;}
}//测试
public static void main(String[] args) {User<Integer> user = new User<>();user.setValue(250);Integer value = user.getValue();
}
泛型接口

格式public interface 类名<泛型>

代码:

//泛型接口	
public interface Play<T>{void show(T name);
}
class Impl1<T> implements Play<T> {@Overridepublic void show(T name) {System.out.println(name);}
}//测试
public class Main {public static void main(String[] args) {Impl1<String> impl1 = new Impl1<>();impl1.show("梨花");}
}
泛型方法

在调用方法时才去指名方法的参数和返回值的类型

代码:

public class Method {//无返回值public static <T> void method1(T value) {System.out.println(value);}有返回值public static <T> T method2(T value) {return value;}
}
泛型通配符

用于解决泛型之间的引用传递的特殊语法,主要分为三种情况

  • <?> :无边界的通配符,主要作用是让泛型能够接受未知类型的数据。在没有赋值之前,表示可以接受任何数据类型,赋值后,不能往里面添加元素。
  • <? extends E>:固定上边界的通配符,了解这个之前看看几个概念
    • 协变:在使用父类类型的场景的地方可以改用子类类型(父类应用指向子类对象
    • 逆变:在使用子类类型的场景的地方可以改用父类类型(子类引用指向父类对象
    • 不变:不能做到以上两点

    数组是可以支持协变(父类引用指向子类)。泛型是不支持协变的。这种设计大大降低了程序的灵活性,为了解决这个问题,设计出固定上边界的通配符。能够接受指定类及其子类类型的数据。虽然使用的是 extends 关键字,但是不限于继承关系,接口引用关系也可以.

    public class Method {public static void main(String[] args) {MyArrayList<b> arrayList = new MyArrayList<>();Test(arrayList);}public static void Test(MyArrayList<? extends a> arrayList) {}
    }
    class a {}
    class b extends a {}
    class c extends a {}
    
  • <? suoer E>:固定下边界的通配符,接受指定类及其父类类型(或接口)的数据。
http://www.dtcms.com/wzjs/364707.html

相关文章:

  • 制作网站软件排行榜网络推广优化是干啥的
  • win10虚拟目录 做网站网站建站在线制作
  • 电脑做系统ppt下载网站谷歌浏览器2021最新版
  • 做购物网站收费百度快照关键词推广
  • 做网站用的代码知乎营销平台
  • 什么网站没人做深圳新闻最新事件
  • 罗湖草铺附近做网站h5网站制作平台
  • 图书网站建设论文semi是什么意思
  • 网站设计中 查询怎么做百度指数官方
  • 开封网站网站建设台湾新闻最新消息今天
  • 全国网站制作公司排名专业网站制作
  • 旅游网站设计与实现开题报告投放广告的网站
  • 做网站的公司网站没做好找谁投诉上海网站制作公司
  • 网站建设工作自查报告关联词有哪些
  • 给公司做网站这个工作怎么样最好用的搜索引擎排名
  • 郑州网站建设找智巢网页怎么制作
  • 商务网站建设流程步骤永州网络推广
  • 企业手机网站建设案例百度竞价渠道户
  • 网站怎么做长截图如何优化企业网站
  • 设计师万能导航网站北京网站建设公司优势
  • 怎么在本机做网站400个成品短视频
  • 重庆建设工程信息网官网查询系统网址搜索引擎营销优化的方法
  • 公司部门职位河南整站百度快照优化
  • 网站模版是什么意思免费隐私网站推广
  • 怎样提升网站关键词长沙网站建设
  • 关于未备案网站湖南网站优化
  • 怎么用服务器ip做网站网站推广的基本方法是
  • 百度网站建设如何网页制作软件dreamweaver
  • 做自动化设备哪个网站seo赚钱培训课程
  • 定制开发电商网站建设多少钱深圳seo排名