java泛型简单入门
泛型
泛型 泛指某一种类型 ( 必须是 引用类型 )
明确时机:
1.有时候 创建对象的时候, 明确泛型
2.有时候 调用一个方法时, 明确泛型
3.有时候 创建一个类型,然后实现一个接口的时候 明确泛型
泛型的好处:
1.让程序更精准 准确 ,把一些运行时的错误,在编写的时候 避免掉
2.提高程序的 可拓展性 兼容性
泛型种类:
- 泛型方法
- 泛型类
- 泛型接口
实例:
第一种:每次使用 一种类型 就要创建 一个对象
public class Display<SH> { // 定义一个泛型类
public void show( SH sh ){
System.out.println(sh);
}
}
第二种:每次使用新的 数据类型 需要重写一个构造方法
public class Display1 {
public void display( String s ){
System.out.println( s );
}
public void display( Integer i ){
System.out.println( i );
}
public void display( Boolean b ){
System.out.println( b );
}
}
第三种:定义的泛型方法 带可变参数
public class Display2 { // 泛型类 作用于 类中所有方法
public <PY> void play( PY py ){ // 定义一个泛型方法 只作用于当前方法
System.out.println( py );
}
}
测试类:
public class demo1 {
public static void main(String[] args) {
// 泛型类的 可扩展性
Display<String> str = new Display<>();
str.show("asdfas");
Display<Integer> num = new Display<>();
num.show(547893);
Display<Boolean> bln = new Display<Boolean>();
bln.show( true );
System.out.println("------------------------------");
// 普通 泛型方法
Display1 s = new Display1();
s.display("sfasg");
Display1 n = new Display1();
n.display(2345);
Display1 b = new Display1();
b.display( true );
System.out.println("---------------------------");
// 带参可变的 泛型方法
Display2 p = new Display2();
p.play("asdfa");
p.play(345);
p.play(true);
p.play(3.14);
}
}
java泛型简单入门的更多相关文章
- 大白话说Java泛型:入门、使用、原理
文章首发于[博客园-陈树义],点击跳转到原文<大白话说Java泛型:入门.使用.原理> 远在 JDK 1.4 版本的时候,那时候是没有泛型的概念的.当时 Java 程序员们写集合类的代码都 ...
- java泛型 之 入门(interface)
一:泛型简单介绍: (1)所谓泛型,就是变量类型的參数化. 泛型是JDK1.5中一个最重要的特征.通过引入泛型,我们将获得编译时类型的安全和执行时更小的抛出ClassCastException的可能. ...
- java泛型简单学习
一. 泛型概念的提出(为什么需要泛型)? 首先,我们看下下面这段简短的代码: //import java.util.List; public class GenericTest { public st ...
- 【Java基础】Java注解简单入门
注解简单来说就是配置,是特别的配置,之前常用的配置文件,可以用注解替换.然后通过反射去获取注解的信息. 如何定义一个注解 你在IDE中新建一个注解定义,是这样的结构的: package com.nic ...
- Java泛型简单理解
优点1: 没有使用泛型,向list集合中添加非字符串,运行时会报错:类型不匹配 ObjectList.java: package cn.nxl2018; import java.util.ArrayL ...
- java的简单入门,tomcat服务器
Tomcat是一款开源的处理动态非常牛逼的web服务器.是sun公司开发的,在丧尸危机之后被收购了. 安装Tomcat需要的支持安装包 JDK下载:http://www.oracle.com/tech ...
- java 泛型简单使用
- 大白话说Java泛型(一):入门、原理、使用
文章首发于[博客园-陈树义],点击跳转到原文<大白话说Java泛型(一):入门.原理.使用> 远在 JDK 1.4 版本的时候,那时候是没有泛型的概念的.当时 Java 程序员们写集合类的 ...
- JAVA WEB快速入门之通过一个简单的Spring项目了解Spring的核心(AOP、IOC)
接上篇<JAVA WEB快速入门之从编写一个JSP WEB网站了解JSP WEB网站的基本结构.调试.部署>,通过一个简单的JSP WEB网站了解了JAVA WEB相关的知识,比如:Ser ...
- Java中Redis简单入门
Redis是一个开源的,先进的 key-value 存储可用于构建高性能,可扩展的 Web 应用程序的解决方案. Redis官方网网站是:http://www.redis.io/,如下: Redis ...
随机推荐
- 移动端如何自动适配px
<script type="text/javascript"> (function(doc, win) { var docEl = doc.documentElemen ...
- PHP变量与变量作用域
PHP变量与变量作用域 1. 变量的基本概念 在PHP中,变量用于存储各种类型的数据,如字符串.整数.浮点数.布尔值.数组和对象等.变量名以美元符号$开头,后面跟着一个或多个字符(变量名).例如: & ...
- StarUML画流程图
一.新建流程图 1.1 新建流程图 1.2 左侧操作符介绍 Flow:顾名思义就是流,用来从一个操作流向下一个操作. Process: 过程 Terminator:用在结束的时候. Dicision: ...
- Ollama模型迁移
技术背景 在前面的一些文章中,我们介绍过使用Ollama在Linux平台加载DeepSeek蒸馏模型,使用Ollama在Windows平台部署DeepSeek本地模型.除了使用Ollama与模型文件交 ...
- 面试官最想听到的Vue和React区别
前言 欧阳最近找工作面试时总是被问到两个问题:Vue和React的区别和从编译原理的角度来聊聊Vue的template和React的jsx.面试官问这些问题一般是想了解你对这两个框架的理解,所以这是一 ...
- 2. MySQL的数据目录(详解讲解)
2. MySQL的数据目录(详解讲解) @ 目录 2. MySQL的数据目录(详解讲解) 1. MySQL8 的主要目录结构 1.1 相关命令目录 1.2 配置文件目录 2. 数据库和文件系统的关系 ...
- ES6语法糖,超甜!
ES6 语法糖 1. ... ... 表示取出可遍历数组中的内容. const arr = new Array() const numbers = [1,2,3,4,5] arr.push(...nu ...
- win11 输入法自定义短语输出日期时间变量
自定义短语中输入%yyyy%-%MM%-%dd% %HH%:%mm%:%ss%
- OpenOffice已停更六年 文档基金会呼吁用户迁移LibreOffice
OpenOffice 源代码发布至今已经有 20 年了.文档基金会近日发布公开信,表示说:"LibreOffice 是 OpenOffice 的未来.我们将会全力以赴".以此呼吁那 ...
- AI时代的灵魂拷问:我们真正的核心竞争力到底是什么?
"当所有人都在谈论AI+的时候,今天我想聊一点不一样的..." 上周,朋友看着我用Cursor在30分钟内完成了他过去需要两天才能完成的工作. 那一刻,一种强烈的危机感涌上心头,他 ...