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

济南营销型网站建设工作室推广文案范文100字

济南营销型网站建设工作室,推广文案范文100字,熊掌号结合网站做seo,儿童网站开发方面外文文献DAY8.1 Java核心基础 泛型 Generics 是指在类定义时不指定类中信息的具体数据类型,而是用一个标识符来代替,当外部实例化对象时再指定具体的数据类型。 在定义类或者接口时不明确指定类中信息的具体数据类型,在实例化时再来指定具体的数据类…

DAY8.1 Java核心基础

泛型在这里插入图片描述

Generics 是指在类定义时不指定类中信息的具体数据类型,而是用一个标识符来代替,当外部实例化对象时再指定具体的数据类型。

在定义类或者接口时不明确指定类中信息的具体数据类型,在实例化时再来指定具体的数据类型

极大地提升了类的扩展性,一个类可以装载各种不同的数据类型

泛型可以指代类中的成员变量数据类型,方法的返回值数据类型以及方法的参数数据类型。

基本使用:

定义一个Demo不指定类中的具体数据类型,用标识符代替

public class Demo<T>{private T t;public Demo(T t) {this.t = t;}public T getT() {return t;}public void setT(T t) {this.t = t;}
}
public static void main(String[] args) {Demo<String> hello = new Demo<>("hello");System.out.println(hello.getT());Demo<Integer> integerDemo = new Demo<>(11);System.out.println(integerDemo.getT());
}

输出:
image-20250309103252419

泛型也可以同时写多个泛型

public class Demo<T,A,B>{private T t;private A a;private B b;public Demo(T t, A a, B b) {this.t = t;this.a = a;this.b = b;}@Overridepublic String toString() {return "Demo{" +"t=" + t +", a=" + a +", b=" + b +'}';}
}
public static void main(String[] args) {Demo<String, Integer, Float> hello = new Demo<>("hello", 1, 2.0f);System.out.println(hello);
}

image-20250309103908102

泛型通配符<?>:在不确定传入的数据类型的时候可以使用通配符

public static void main(String[] args) {ArrayList<Integer> integers = new ArrayList<>();test(integers);ArrayList<String> strings = new ArrayList<>();test(strings);
}
public static void  test(ArrayList<?> list) {System.out.println(list);
}

比如传入的参数是Interger类型和String类型,如果定义ArrayList list作为形参则String类型的数组无法传递

泛型的上限和下限

上限:类名<? extends A> 这个类型必须是A类的子类或者A类型本身
下限:类名<? super A> 这个类型必须是A类的父类或则A类型本身

public class Test {public static void main(String[] args) {ArrayList<Double> doubles = new ArrayList<>();doubles.add(1.0);test1(doubles);ArrayList<Object> strings = new ArrayList<>();strings.add("hello");test2(strings);}/*** 标识test1方法的list参数的类型是Number的子类或者是Number本身,比如 Integer、Double、Float...* @param list*/public static void test1(ArrayList<? extends Number> list) {System.out.println(list);}/*** 表示test2方法的list参数的类型是String的父类或者是String本身,String or Object* @param list*/public static void test2(ArrayList<? super String> list) {System.out.println(list);}
}

泛型接口

public interface MyInterface<T> {public T test();
}

实现类:

public class MyInterfaceImpl1 implements MyInterface<String>{public String t;public MyInterfaceImpl1(String t) {this.t = t;}@Overridepublic String test() {return t;}
}
public class MyInterfaceImpl2<T> implements MyInterface<T>{public T t;public MyInterfaceImpl2(T t) {this.t = t;}@Overridepublic T test() {return t;}
}

两个实现类,一个在实现的时候就定义了类型,一个没有定义,所以MyInterfaceImpl1就不能在使用的时候指定其它类型对象,就只能使用String类型

image-20250309110134125

正确测试代码:

public static void main(String[] args) {MyInterfaceImpl1 myInterfaceImpl1 = new MyInterfaceImpl1("123");System.out.println(myInterfaceImpl1.test());MyInterfaceImpl2<Integer> myInterfaceImpl2 = new MyInterfaceImpl2<>(123);System.out.println(myInterfaceImpl2.test());
}
http://www.dtcms.com/wzjs/392138.html

相关文章:

  • 青岛的网站设计上海已经开始二次感染了
  • 新绛网站建设谷歌优化培训
  • 有没有做高仿手表的网站晚上免费b站软件
  • 网站做背景不显示设计网页
  • 网站后台软件可以自己做吗企业网站制作公司
  • 平台推广赚钱新的seo网站优化排名 网站
  • 网站建设英文怎么写收录网站是什么意思
  • 鄂州网站设计制作品牌设计公司排名前十强
  • 云南今天刚刚发生的新闻苏州seo按天扣费
  • 企业网站搭建流程黄石市seo关键词优化怎么做
  • 本科自考有哪些科目云南网络推广seo代理公司
  • 厦门做企业网站百度电脑版官网
  • 手机wap网站怎么做公众号开发网站公司
  • 谁做网站百度号注册官网
  • 用符号做照片的网站百度指数分是什么
  • 有没有帮别人做创意的网站cms建站系统
  • 大余做网站建设搜索引擎营销总结
  • 地方门户网站的特点网络项目免费的资源网
  • 那个网站可以做家具效果图温州seo优化公司
  • 做毛绒玩具在什么网站上找客户关键词优化建议
  • 交互设计好的网站站长工具seo综合查询权重
  • 郑州网站建设推广报价网站排名怎么优化
  • 网站开发公司起名字广告主平台
  • 做百度竞价什么网站好快速排名新
  • 昆明做网站猫咪科技微平台推广
  • 东游科技网站建设手机最新产品新闻
  • 怎么把网站的标题做的炫酷河北网络科技有限公司
  • 门户网网站seo怎么做重庆百度推广开户
  • 建筑工程网上申请质量安全监督四平网站seo
  • 网站建设肆金手指排名8在线代理浏览网页