Java 5.0 泛型之 受限泛型
package Demo;
// 受限泛型
class Info17<T> {
private T var; // 定义泛型变量
public void setVar(T var) {
this.var = var;
}
public T getVar() {
return this.var;
}
public String toString() { // 直接打印
return this.var.toString();
}
}
public class GenericsDemo17 {
public static void main(String args[]) {
Info17<Integer> i1 = new Info17<Integer>(); // 声明Integer的泛型对象
Info17<Float> i2 = new Info17<Float>(); // 声明Float的泛型对象
i1.setVar(30); // 设置整数,自动装箱
i2.setVar(30.1f); // 设置小数,自动装箱
fun(i1);
fun(i2);
}
public static void fun(Info17<? extends Number> value) { // 只能接收Number及其Number的子类
System.out.println(value);
}
}
package Demo;
// 受限泛型
class Info21<T> {
private T var; // 定义泛型变量
public void setVar(T var) {
this.var = var;
}
public T getVar() {
return this.var;
}
public String toString() { // 直接打印
return this.var.toString();
}
}
public class GenericsDemo21 {
public static void main(String args[]) {
Info21<String> i1 = new Info21<String>(); // 声明String的泛型对象
Info21<Object> i2 = new Info21<Object>(); // 声明Object的泛型对象
i1.setVar("hello");
i2.setVar(new Object());
fun(i1);
fun(i2);
}
public static void fun(Info21<? super String> value) { // 只能接收String或Object类型的泛型
System.out.println(value);
}
}
相关文档:
Java学习从入门到精通
一、 JDK (Java Development Kit)
JDK是整个Java的核心,包括了Java运行环境(Java Runtime Envirnment),一堆Java工具和Java基础的类库(rt.jar)。不论什么Java应用服务器实质都是内置了某个版本的JDK。因此掌握JDK是学好Java的第一步。最主流的J ......
java中的反射机制通过invoke方法来实现,这中间主要是是通过一下几个函数实现的
Class.forName ("类名")
Class.forName ("类名").newInstance
Class.getMethod ("调用的方法名",class[]{参数类列表})
instance.getClass
Method.invoke ("对象名","参数封装成的对象")
具体怎么实现,让我们来看一个简单的例子: ......
之前介绍了Java的语法基础,接下来介绍面向对象的相关思想和概念。
本部分包含的主要内容包括:
1、类与对象,主要介绍类和对象之间的关系。
2、现实世界中的对象与软件系统中的对象,介绍如何从现实世界中的对象抽象出软件系统中的对象。
3、软件系统中的对象和类之间的关系,如何根据软件对象抽象出类。
4、类的定义 ......
1. JAR 文件包
JAR 文件就是 Java Archive
File,顾名思意,它的应用是与 Java 息息相关的,是 Java 的一种文档格式。JAR 文件非常类似 ZIP
文件——准确的说,它就是 ZIP ......
栈与堆都是Java用来在Ram中存放数据的地方。与C++不同,Java自动管理栈和堆,程序员不能直接地设置栈或堆。
Java的堆是一个运行时数据区,类的(对象从中分配空间。这些对象通过new、newarray、anewarray和multianewarray等指令建立,它们不需要程序代码来显式的释放。堆是由垃圾回收来负责的,堆的优势是可以动态地分配内存 ......