diff --git a/s-day02/src/com/inmind/generic_interface07/Demo10.java b/s-day02/src/com/inmind/generic_interface07/Demo10.java new file mode 100644 index 0000000..3b334d4 --- /dev/null +++ b/s-day02/src/com/inmind/generic_interface07/Demo10.java @@ -0,0 +1,12 @@ +package com.inmind.generic_interface07; + +public class Demo10 { + public static void main(String[] args) { + //创建实现类1对象 + MyInterfaceImpl myInterface = new MyInterfaceImpl(); + myInterface.method("hello"); + //创建实现类2对象(在实现子类中不确定类型,在创建实现类对象时才确定类型) + MyInterfaceImpl2 myInterface2 = new MyInterfaceImpl2<>(); + myInterface2.method(123); + } +} diff --git a/s-day02/src/com/inmind/generic_interface07/MyInterface.java b/s-day02/src/com/inmind/generic_interface07/MyInterface.java new file mode 100644 index 0000000..2a45fc7 --- /dev/null +++ b/s-day02/src/com/inmind/generic_interface07/MyInterface.java @@ -0,0 +1,19 @@ +package com.inmind.generic_interface07; +/* + 泛型接口:在接口中定义一个未知类型 + 泛型接口的格式: + public interface 接口名<大写字母>{ + } + + 泛型接口的泛型类型何时确定??? + 1.在定义实现子类中直接确定泛型的类型 + 2.在实现子类中不确定类型,在创建实现类对象时才确定类型 + */ +public interface MyInterface { + //泛型作为参数 + void method(T t); + //泛型作为返回值 + T method1(); + //泛型既作为参数又作为返回值 + T method2(T t); +} diff --git a/s-day02/src/com/inmind/generic_interface07/MyInterfaceImpl.java b/s-day02/src/com/inmind/generic_interface07/MyInterfaceImpl.java new file mode 100644 index 0000000..d079f1b --- /dev/null +++ b/s-day02/src/com/inmind/generic_interface07/MyInterfaceImpl.java @@ -0,0 +1,21 @@ +package com.inmind.generic_interface07; +/* +泛型接口的泛型类型何时确定??? + 1.在定义实现子类中直接确定泛型的类型 + */ +public class MyInterfaceImpl implements MyInterface{ + @Override + public void method(String s) { + + } + + @Override + public String method1() { + return ""; + } + + @Override + public String method2(String s) { + return ""; + } +} diff --git a/s-day02/src/com/inmind/generic_interface07/MyInterfaceImpl2.java b/s-day02/src/com/inmind/generic_interface07/MyInterfaceImpl2.java new file mode 100644 index 0000000..3e9f14b --- /dev/null +++ b/s-day02/src/com/inmind/generic_interface07/MyInterfaceImpl2.java @@ -0,0 +1,23 @@ +package com.inmind.generic_interface07; + +/* + 泛型接口的泛型类型何时确定??? + 2.在实现子类中不确定类型,在创建实现类对象时才确定类型 + */ +public class MyInterfaceImpl2 implements MyInterface{ + + @Override + public void method(E e) { + + } + + @Override + public E method1() { + return null; + } + + @Override + public E method2(E e) { + return null; + } +}