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

唐山做网站价格dede网站版权信息标签

唐山做网站价格,dede网站版权信息标签,优秀网页设计鉴赏,如何注册公司和商标文章目录 1、泛型1.1、为什么要使用泛型#xff1f;1.2、泛型的应用1.3、泛型通配符1.4、泛型上限和下限1.5、泛型接口 2、枚举 1、泛型 Generics 是指在定义类的时候不指定类中某个信息#xff08;属性/方法返回值#xff09;的具体数据类型#xff0c;而是用一个标识符来… 文章目录 1、泛型1.1、为什么要使用泛型1.2、泛型的应用1.3、泛型通配符1.4、泛型上限和下限1.5、泛型接口 2、枚举 1、泛型 Generics 是指在定义类的时候不指定类中某个信息属性/方法返回值的具体数据类型而是用一个标识符来替代当外部实例化对象的时候再来指定具体的数据类型。 集合和数组相比较优势在于长度可以随时改变集合中存储的数据类型是灵活的不固定。 1.1、为什么要使用泛型 使用泛型可以确保集合中数据的统一性同时它又兼具很好的灵活性 package com.htl.test;import java.util.ArrayList;public class Test3 {public static void main(String[] args) {ArrayListInteger list new ArrayList();list.add(1);list.add(2);for (int i 0; i list.size(); i) {int num list.get(i);System.out.println(num);}} }1.2、泛型的应用 在自定义类中添加泛型基本语法 public class 类名泛型标识1,泛型标识2...{private 泛型标识1 id;public 泛型标识2 test(){return (泛型标识2) new Object();} }自定义一个表示时间的类 Time package com.htl.test;public class TimeT {private T value;public T getValue() {return value;}public void setValue(T value) {this.value value;} }package com.htl.test;public class Test4 {public static void main(String[] args) {TimeInteger time1 new Time();time1.setValue(10);System.out.println(现在的时间是 time1.getValue());TimeString time2 new Time();time2.setValue(十点);System.out.println(现在的时间是 time2.getValue());} }package com.htl.test;public class Test5 {public static void main(String[] args) {Time2String,Integer,Float time new Time2();time.setHour(十点);time.setMinute(10);time.setSeconde(10.0f);System.out.println(现在的时间是 time.getHour() : time.getMinute() : time.getSeconde());} }package com.htl.test;public class Time2H,M,S {private H hour;private M minute;private S seconde;public H getHour() {return hour;}public void setHour(H hour) {this.hour hour;}public M getMinute() {return minute;}public void setMinute(M minute) {this.minute minute;}public S getSeconde() {return seconde;}public void setSeconde(S seconde) {this.seconde seconde;} }静态成员不能用泛型来修饰非静态成员变量可以用泛型。 静态成员变量在类加载的时候就存入到内存中了没有类型所以无法存入就不能定义为静态的。 静态方法可以使用泛型 private static Object hour; public staticH H getHour() {return (H)hour; }1.3、泛型通配符 String 和 Integer 在泛型引用中不能转换为 Object多态在泛型引用中不生效 package com.htl.test2;import java.util.ArrayList;public class Test {public static void main(String[] args) {ArrayListString list1 new ArrayList();test(list1);ArrayListInteger list2 new ArrayList();test(list2);}/*** 既可以传入String类型的集合* 也可以传入Integer类型的集合*/public static void test(ArrayList? list){}}1.4、泛型上限和下限 使用泛型的时候可以通过泛型上限和下限对数据类型的范围进行扩充 泛型上限 表示实例化时的具体数据类型可以是上限类型的子类或者上限类型本身用 extends 关键字来修饰。 泛型下限 表示实例化时的具体数据类型可以是下限类型的父类或者下限类型本身用 super 关键字来修饰。 基本语法 泛型上限类名泛型标识符 extends 上限类名 泛型下限类名泛型标识符 super 下限类名package com.htl.test2;public class TimeT {public static void main(String[] args) {test(new TimeNumber());test(new TimeByte());test(new TimeInteger());test2(new TimeString());test2(new TimeObject());}/*** 参数的泛型只能是Number或者它的子类Number、Byte、short、Integer...*/public static void test(Time? extends Number time){}/*** 参数的泛型只能是String或者它的父类String和Object*/public static void test2(Time? super String time){} }1.5、泛型接口 我们在定义类的时候可以使用泛型定义接口的时候同样可以使用泛型。 public interface MyInterfaceT{public T getValue(); }实现泛型接口有两种方式一种是实现类在定义时继续使用泛型标识另一种时实现类在定义时直接给出具体的数据类型。 1、实现类继续使用泛型 package com.htl.test3;public class MyImplementT implements MyInterfaceT {private T obj;public T getObj() {return obj;}public void setObj(T obj) {this.obj obj;}Overridepublic T getValue() {return null;} }2、实现类给出具体的数据类型 package com.htl.test3;public class MyImplement2 implements MyInterfaceString {private String obj;public String getObj() {return obj;}public void setObj(String obj) {this.obj obj;}Overridepublic String getValue() {return null;} }实现类继续使用泛型在具体实例化的时候需要给出具体的数据类型。 实现类给出具体的数据类型在具体实例化的时候不需要给出具体的数据类型。 package com.htl.test3;public class Test {public static void main(String[] args) {MyImplementString myInterface new MyImplement();MyImplement2 myInterface1 new MyImplement2();} }2、枚举 Enum 是一种有确定取值区间的数据类型本质上就是一个类简洁、安全、方便。 枚举的值被约束到一个特定的范围只能从这个范围内取值。 package com.htl.test3;public enum WeekEnum {MONDAY,TUESDAY,WEDENSDAY,THURSDAY,FRIDAY,SATURDAY,SUNDAY; }package com.htl.test3;public enum ResponseEnum {SUCCESS(0,成功),ERROR(-1,失败);private Integer code;private String msg;public Integer getCode() {return code;}public String getMsg() {return msg;}ResponseEnum(Integer code, String msg) {this.code code;this.msg msg;} }package com.htl.test3;public class Test2 {public static void main(String[] args) {System.out.println(ResponseEnum.SUCCESS.getCode());System.out.println(ResponseEnum.ERROR.getMsg());} }
http://www.w-s-a.com/news/932616/

相关文章:

  • 做分销的网站本地dede网站怎么上线
  • 中学网站模板北京管理咨询公司
  • 网站开发用哪个软件方便二级网站建设 管理思路
  • 个人怎么创建网站中国建设银行网站口
  • 跟知乎一样的网站做展示网站步骤
  • 邯郸网站建设效果好wordpress app 加载慢
  • 做app的网站有哪些功能广州自适应网站建设
  • 兰州建设网站的网站开源网站建设
  • 深圳网站建设南山指数基金是什么意思
  • 备案中又需要建设网站网站信息组织优化
  • 做网站推广需要什么asp响应式h5网站源码下载
  • 柳州建设网官方网站免费自助建站哪个平台好
  • 论坛网站模板源码下载网站建设与网页设计是什么
  • 跑流量的网站淘宝网站的建设目标是
  • 网站计费系统怎么做九一制作网站
  • 网红营销推广温州seo博客
  • 临沂网站制作定制现在比较流行的软件开发模型
  • 南宁企业建站系统做问卷调查哪个网站好
  • 能打开各种网站的浏览器推荐建设部的网站首页
  • 苏州高端网站建设开发wordpress 删除图片
  • saas网站开发外贸网站设计风格
  • c 手机网站开发湘阴网页定制
  • 阿里云虚拟主机搭建wordpressWordPress优化手机端
  • 湖北长安建设网站衡阳市做网站
  • 灯饰网站建设图片深圳做网站哪家公司好
  • 网站的构造有什么网站做生鲜配送的
  • 怎么在手机上做微电影网站小马厂网站建设
  • 网络广告投放网站中山网
  • 保定网站制作专业网页设计模板html代码运行
  • 中国专利申请网官网杭州seo优化