一、泛型类:

泛型是指适用于某一种数据类型而不是一个数据机构中能存不同类型

 import java.io.*;
import java.nio.file.Files;
import java.nio.file.Paths;
import java.util.List; class myClass<Type>{
public Type[] tlist;
public Type tobject;
@SuppressWarnings("unchecked")
myClass(int maxsize,Type object){
this.tlist = (Type[])new Object[maxsize];
this.tobject = object;
}
public Type getMyObject() {
return this.tobject;
}
public Type[] getMyList() {
return this.tlist;
}
public void setMyObject(Type object) {
this.tobject = object;
}
} public class test{
public static void main(String args[]) throws IOException {
myClass<String> newone = new myClass<String>(5,"5");
System.out.println(newone.getMyList());
System.out.println(newone.getMyObject());
newone.setMyObject("6");
System.out.println(newone.getMyObject());
}
}

1、知识点1--变量定义:

关于泛型变量(非数组)的定义:

 class myClass<T>{
public T t;
myClass(T newt){
this.t = newt;
}
}

关于数据的泛型定义:

 @SuppressWarnings("unchecked")
myClass(int maxsize){
this.tlist = (Type[])new Object[maxsize];
}

2、知识点2--泛型的实例化

这里需要显式的指出数据类型

 myClass<String> newone = new myClass<String>(5,"5");

二、泛型接口:

 public interface myinterface<T>{
public T next();
}
//接口需要继承
public class myclass implements myinterface<String>{//继承时候显式定义类型
private String[] stringlist=new String[]{"a1","b1","c1"};
@Override
public String next(){
Ramdom rand=new Random();
return stringlist[rand.nextInt(3)];
}
}

三、泛型方法:

1、在泛型类下的泛型方法:

泛型参数:

 public void show(T t){
System.out.println(t);
}

泛型返回值

 public T getObject(){
return this.t;
}

2、单独的泛型方法:

 public stati <T> void out(T t){
System.out.println(t);
}

Java初学者笔记五:泛型处理的更多相关文章

  1. Java初学者笔记

    Java初学者笔记 前提:认识汉字,认识英语单词,会用键盘打字 ------------------------------- 端口是什么: --------面向对象编程(OOP) 接口”(Inter ...

  2. 【原】Java学习笔记027 - 泛型

    package cn.temptation.test; import java.util.ArrayList; import java.util.Iterator; public class Samp ...

  3. Effective Java 读书笔记之四 泛型

    泛型的本质是参数化类型.只对编译器有效. 一.请不要在新代码中使用原生态类型 1.泛型类和接口统称为泛型,有一个对应的原生态类型. 2.原生类型的存在是为了移植兼容性. 3.无限制通配类型和原生态类型 ...

  4. 【Java学习笔记】泛型

    泛型: jdk1.5出现的安全机制 好处: 1.将运行时期的问题ClassCastException转到了编译时期. 2.避免了强制转换的麻烦. <>: 什么时候用? 当操作的引用数据类型 ...

  5. Java初学者笔记一:元类、获取类型、枚举

    零.绪论: 2018年新年伊始,学习Java的冲动越来越强烈,毕竟以后无论是做安全开发还是安全研究都必不可少的掌握这门语言,所以在不断完善Python作为脚本语言的主语言的情况下觉得学习Java作为高 ...

  6. Java学习笔记五:Java中常用的运算符

    Java中常用的运算符 运算符是一种“功能”符号,用以通知 Java 进行相关的运算.譬如,我们需要将变量 score 的值设置为 20 ,这时候就需要一个“=”,告诉程序需要进行赋值操作. Java ...

  7. Java分享笔记:泛型机制的程序演示

    package packA; import java.util.*; public class GenericDemo { public static void main(String[] args) ...

  8. java学习笔记之泛型

    "泛型"这个术语的意思就是:"使用与许多许多的类型".泛型在编程语言中出现时,其最初的目的是希望类或方法能够具备最广泛的表达能力.如何做到这一点呢,正是通过解耦 ...

  9. Java学习笔记五——流程控制

    分支结构 Java提供了两种常见的分支控制结构:if语句和switch语句. if语句 if语句使用布尔值或布尔表达式(表达式结果为布尔值),if语句有3中形式: 第一种形式: if (5 > ...

随机推荐

  1. Aria2 Axel wget curl 四个下载命令

    经常由于不同需求使用下载管理器从互联网下载文件,它给我和其他人提供了很多帮助.我们都想要一个超级快速的下载管理器来完成下载尽可能多的任务,以便我们可以节省时间来进一步地工作.有很多可以加速下载的下载管 ...

  2. Linux - tar命令 压缩 和 解压

    压缩 tar -cvf jpg.tar *.jpg //将目录里所有jpg文件打包成tar.jpg tar -czf jpg.tar.gz *.jpg //将目录里所有jpg文件打包成jpg.tar后 ...

  3. laravel 控制器

    1:如何快速的创建一个控制器 用cmd进入当前的项目名文件夹里面执行如下语句: php artisan  make:controller  HgjController 2:编辑Hgj中的index方法 ...

  4. 用python批量执行VBA代码

    先说下背景环境 1. 公司需要问卷调查,有两份问卷, 1)是spss问卷,2)是excel问卷.spss问卷数据不全,但有各种标签, excel呢, 生成的数据直接把选项变成了值 2. 现在需要把ex ...

  5. Spring 4 官方文档学习(十一)Web MVC 框架之locales

    http://docs.spring.io/spring/docs/current/spring-framework-reference/html/mvc.html#mvc-localeresolve ...

  6. e1087. try/catch语句

    The try/catch statement encloses some code and is used to handle errors and exceptions that might oc ...

  7. sdi 采集卡---环视频拼接直播方案

    http://www.upano.cn/# 360度无死角直播1080p 30fps http://search.jd.com/Search?keyword=sdi%E9%87%87%E9%9B%86 ...

  8. Ubuntu adb devices : no permissions 解决方法

    ntun下USB连接Android手机后,使用adb devices 出现如下: List of devices attached ???????????? no permissions 同时在DDM ...

  9. 深入了解Android蓝牙Bluetooth ——《总结篇》

    在我的上两篇博文中解说了有关android蓝牙的认识以及API的相关的介绍,蓝牙BLE的搜索,连接以及读取. 没有了解的童鞋们请參考: 深入了解Android蓝牙Bluetooth--<基础篇& ...

  10. 【Java 线程的深入研究2】常用函数说明

    ①sleep(long millis): 在指定的毫秒数内让当前正在执行的线程休眠(暂停执行) ②join():指等待t线程终止. 使用方式. join是Thread类的一个方法,启动线程后直接调用, ...