From e467a9cdde701760acb4102bc9954f04933f5c2f Mon Sep 17 00:00:00 2001 From: xuxin <840198532@qq.com> Date: Wed, 14 Oct 2026 10:19:31 +0800 Subject: [PATCH] =?UTF-8?q?s-day02--=E6=B3=9B=E5=9E=8B=E7=9A=84=E9=80=9A?= =?UTF-8?q?=E9=85=8D=E7=AC=A6=E5=8F=8A=E5=85=B6=E4=B8=8A=E4=B8=8B=E9=99=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/inmind/generic_common05/Demo08.java | 42 +++++++++++++++++++ .../com/inmind/generic_common05/Person.java | 11 +++++ .../com/inmind/generic_common05/Student.java | 7 ++++ 3 files changed, 60 insertions(+) create mode 100644 s-day02/src/com/inmind/generic_common05/Demo08.java create mode 100644 s-day02/src/com/inmind/generic_common05/Person.java create mode 100644 s-day02/src/com/inmind/generic_common05/Student.java diff --git a/s-day02/src/com/inmind/generic_common05/Demo08.java b/s-day02/src/com/inmind/generic_common05/Demo08.java new file mode 100644 index 0000000..dacfef9 --- /dev/null +++ b/s-day02/src/com/inmind/generic_common05/Demo08.java @@ -0,0 +1,42 @@ +package com.inmind.generic_common05; + +import java.util.ArrayList; + +/* + 13.泛型通配符的使用(了解) + 当我们想接收一个数据类型,它们的泛型不一致,但是方法中的操作是一致的时候,如果操作???? + 泛型通配符:?,它的作用是能够匹配任意的泛型类型,?使用时默认解析为Object + + + 使用了通配符,还能限制传入的类型? + 可以,受限泛型 + + 格式: + :泛型的类型只能是B类型或者B类型的子类;上限 + : 泛型的类型只能是B类型或者B类型的父类;下限 + */ +public class Demo08 { + public static void main(String[] args) { + //创建2个集合对集合的内容进行遍历打印输出 + ArrayList list1 = new ArrayList<>(); + list1.add(new Person("张三1", 19)); + list1.add(new Person("张三2", 18)); + list1.add(new Person("张三3", 17)); + + showList(list1); + + ArrayList list2 = new ArrayList<>(); + list2.add(new Student("张三4", 19)); + list2.add(new Student("张三5", 18)); + list2.add(new Student("张三6", 17)); + showList(list2); + } + + //定义一个接收集合,对集合进行编译输出的方法 + public static void showList(ArrayList list){//泛型的上限 +// public static void showList(ArrayList list){//泛型的下限 + for (Person p : list) { + System.out.println(p); + } + } +} diff --git a/s-day02/src/com/inmind/generic_common05/Person.java b/s-day02/src/com/inmind/generic_common05/Person.java new file mode 100644 index 0000000..890c41a --- /dev/null +++ b/s-day02/src/com/inmind/generic_common05/Person.java @@ -0,0 +1,11 @@ +package com.inmind.generic_common05; + +public class Person { + String name; + int age; + + public Person(String name, int age) { + this.name = name; + this.age = age; + } +} diff --git a/s-day02/src/com/inmind/generic_common05/Student.java b/s-day02/src/com/inmind/generic_common05/Student.java new file mode 100644 index 0000000..513626b --- /dev/null +++ b/s-day02/src/com/inmind/generic_common05/Student.java @@ -0,0 +1,7 @@ +package com.inmind.generic_common05; + +public class Student extends Person{ + public Student(String name, int age) { + super(name, age); + } +}