java 泛型(中)

本篇文章主要说明的是泛型类、泛型接口、泛型方法等。

在学习之前,希望能对泛型有个大概了解,可参考链接 java 泛型(上)-CSDN博客

1、泛型类

(1)格式:修饰符 class 类名<类型>{}

(2)范例:public class Generic<T>{}

  • 此处T可以随便写为任意标识,常见的如T、E、K、V等形式的参数常用于表示泛型。

(3)代码实现

① Generics类

package generics;

public class Generics<T> {
   private T t;

    public T getT() {
        return t;
    }

    public void setT(T t) {
        this.t = t;
    }
}

② GenericsDemo2类

package generics;

import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;

public class GenericsDemo2 {
    public static void main(String[] args) {
        Generics<String> s = new Generics<>();
        s.setT("张三");
        System.out.println(s.getT());
        System.out.println("----------");
        Generics<Integer> i = new Generics<>();
        i.setT(39);
        System.out.println(i.getT());
    }
}

③ 运行结果

2、泛型方法

(1)格式:修饰符 <T> 返回值类型 方法名(T t){}

(2)范例:public <T> void show(T t){}

(3)代码实现

① Generics2类

package generics;

//方式三
public class Generics2 {
    public <T> void show(T t){
        System.out.println(t);
    }
}
/*
//方式二
public class Generics2<T> {
    public void show(T t){
        System.out.println(t);
    }
}
*/

/*
//方式一
public class Generics2 {
    public void show(String s){
        System.out.println(s);
    }
    public void show(int i){
        System.out.println(i);
    }
    public void show(boolean b){
        System.out.println(b);
    }
}
*/

② GenericsDemo3类

package generics;

public class GenericsDemo3 {
    public static void main(String[] args) {
        //普通类
//        Generics s = new Generics();
  //      s.show("zahngsna");
//泛型类
       // Generics<String> s = new Generics<>();
        //s.show("zahngsna");
        //泛型方法
        Generics2  g= new Generics2();
        g.show("zhngsna");
        g.show(20);

    }
}

③ 运行结果

3、泛型接口

(1)格式:修饰符 interface 接口名<T>{}

(2)范例:public interface Generic<T>{}

(3)代码实现

① Generics3 接口

package generics;

public interface Generics3<T> {
    void show(T t);
}

② Generics3Impl类

package generics;

public class Generics3Impl<T> implements Generics3<T>{

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

③ GenericsDemo4类

package generics;

public class GenericsDemo4 {
    public static void main(String[] args) {
        Generics3<String> g3 = new Generics3Impl<>();
        g3.show("张三");
        System.out.println("--------");
        Generics3<Integer> g33 = new Generics3Impl<>();
        g33.show(23);
    }
}

④ 运行结果


 

本文为学习笔记,所参考文章均已附上链接,若有疑问请私信!

创作不易,如果对你有点帮助的话麻烦点个赞支持一下!

新手小白,欢迎留言指正!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/479697.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

CI/CD环境搭建

服务简介 Gitlab 官网&#xff1a;https://about.gitlab.com/ GitLab 是一个用于仓库管理系统的开源项目&#xff0c;使用Git作为代码管理工具&#xff0c;并在此基础上搭建起来的Web服务。安装方法是参考GitLab在GitHub上的Wiki页面。Gitlab是被广泛使用的基于git的开源代码管…

2024阿里云服务器99计划优惠活动_开年采购季优惠价格表

2024阿里云开年采购活动3月优惠&#xff0c;99计划云服务器99元一年、免费领取上云扶持优惠券&#xff0c;不只是云服务器、云数据库、存储、云电脑、域名等均有活动&#xff0c;阿里云服务器网aliyunfuwuqi.com整理阿里云开年采购上云无忧活动入口、优惠价格表和优惠券领取详细…

unbantu Apache的基本配置与配置静态资源访问

目录 前言: 1.Apache介绍 2.安装Apache 3. 测试Apache服务是否启动成功 3.1配置Servername 3.2重启服务 4.配置Apache主页面 5. 配置静态的资源 6.为静态资源设置访问权限(基于源地址) 致谢: 前言: 此博客是基于unbantu的Apache服务的详细解析&#xff0c;在这片博…

QPainter绘图和QChart图表和QCustomplot绘曲线图

一&#xff0c;QPainter绘图 Qt里的所有绘图&#xff0c;比如一个按钮和一个Label的显示&#xff0c;都有绘图系统来执行。绘图系统基于 QPainter、QPaintDevice和QPainEngine类。QPainter是可以直接用来操作绘图的类&#xff0c;而 QPaintDevice和QPainEngine都比QPainter更底…

TCP | TCP协议格式 | 三次握手

1.TCP协议 为什么需要 TCP 协议 &#xff1f;TCP 工作在哪一层&#xff1f; IP网络层是不可靠的&#xff0c;TCP工作在传输层&#xff0c;保证数据传输的可靠性。 TCP全称为 “传输控制协议&#xff08;Transmission Control Protocol”&#xff09;。 TCP 是面向连接的、可靠…

DBO优化高斯回归预测(matlab代码)

DBO-高斯回归预测matlab代码 蜣螂优化算法(Dung Beetle Optimizer, DBO)是一种新型的群智能优化算法&#xff0c;在2022年底提出&#xff0c;主要是受蜣螂的的滚球、跳舞、觅食、偷窃和繁殖行为的启发。 数据为Excel股票预测数据。 数据集划分为训练集、验证集、测试集,比例…

GESP图形化编程四级认证真题 2024年3月

GESP 图形化四级试卷 &#xff08;满分&#xff1a;100 分 考试时间&#xff1a;120 分钟&#xff09; 一、单选题&#xff08;共 10 题&#xff0c;每题 2 分&#xff0c;共 30 分&#xff09; 1、小杨的父母最近刚刚给他买了一块华为手表&#xff0c;他说手表…

PyTorch深度学习:遥感影像地物分类的高效工具

我国高分辨率对地观测系统重大专项已全面启动&#xff0c;高空间、高光谱、高时间分辨率和宽地面覆盖于一体的全球天空地一体化立体对地观测网逐步形成&#xff0c;将成为保障国家安全的基础性和战略性资源。未来10年全球每天获取的观测数据将超过10PB&#xff0c;遥感大数据时…

JMeter 环境安装及配置

&#x1f525; 交流讨论&#xff1a;欢迎加入我们一起学习&#xff01; &#x1f525; 资源分享&#xff1a;耗时200小时精选的「软件测试」资料包 &#x1f525; 教程推荐&#xff1a;火遍全网的《软件测试》教程 &#x1f4e2;欢迎点赞 &#x1f44d; 收藏 ⭐留言 &#x1…

图像分类从零开始(1)

尽我所能&#xff0c;总结留给后面的师弟们&#xff01; 1.目标 搭建一个完整的系统&#xff0c;包括图像数据集预处理&#xff0c;训练模型&#xff0c;分类器&#xff0c;优化器&#xff0c;以及结果数据处理。 2.理论 3.实例&#xff08;猫狗分类&#xff09; Gitee代码…

day-24 跳跃游戏 III

思路&#xff1a;dfs方法&#xff0c;从开始节点开始进行深度优先遍历&#xff0c;利用一个数组vis[]记录该位置是否被访问过&#xff0c;如果遍历到一个已经访问的位置&#xff0c;返回false 如果遍历到某位置的值为0&#xff0c;返回true code: class Solution {public boo…

Vulnhub - Raven2

希望和各位大佬一起学习&#xff0c;如果文章内容有错请多多指正&#xff0c;谢谢&#xff01; 个人博客链接&#xff1a;CH4SER的个人BLOG – Welcome To Ch4sers Blog Raven2 靶机下载地址&#xff1a;https://www.vulnhub.com/entry/raven-2,269/ 0x01 信息收集 Nmap扫描…

力扣算法题之好数对的数目

c语言中的小小白-CSDN博客c语言中的小小白关注算法,c,c语言,贪心算法,链表,mysql,动态规划,后端,线性回归,数据结构,排序算法领域.https://blog.csdn.net/bhbcdxb123?spm1001.2014.3001.5343 给大家分享一句我很喜欢我话&#xff1a; 知不足而奋进&#xff0c;望远山而前行&am…

性能测试的几个重要指标的说明!

在做性能测试过程中有一件很重要的事情需要去完成&#xff0c;那就是分析性能指标数据&#xff0c;可以这样说做性能测试的整个过程都跟指标数据息息相关&#xff0c;下面来说一下常见的一些性能指标数据&#xff1a; 1.吞吐量 2.并发数 3.思考时间 4.响应时间 5.点击数 …

3D模型库免费下载选择哪家比较靠谱?

在选择3D模型库进行免费下载时&#xff0c;靠谱性通常取决于模型的质量、数量、多样性、易用性&#xff0c;以及网站的信誉和安全性。以下是一些比较靠谱的3D模型库免费下载网站&#xff1a; ①建e网&#xff1a;建e网的3D模型库提供了多种分类方式&#xff0c;如风格、场景、物…

手撕LRU 最近最少使用缓存淘汰策略 + LinkedHashMap

LRU 最近最少使用缓存淘汰策略 1 LRU 算法就是一种缓存淘汰策略2 手撕LRU3 LinkedHashMap 常见面试题 1 LRU 算法就是一种缓存淘汰策略 计算机的缓存容量有限&#xff0c;如果缓存满了就要删除一些内容&#xff0c;给新内容腾位置。但问题是&#xff0c;删除哪些内容呢&#x…

权限提升-Windows权限提升篇溢出漏洞宝塔面板BypassCS插件化MSF模块化

知识点 1、Web到Win系统提权-权限差异原因 2、Web到Win系统提权-溢出漏洞&#xff08;MSF&CS&#xff09; 3、Web到Win系统提权-集成软件&#xff08;哥斯拉模块Bypass&#xff09; 章节点&#xff1a; 1、Web权限提升及转移 2、系统权限提升及转移 3、宿主权限提升及转移…

看完秒懂原来接口测试用例设计这么简单!

什么是接口 接口&#xff1a;服务端程序对外提供的一种统一的访问方式&#xff0c;通常采用 HTTP协议&#xff0c;通过 不同的url&#xff0c;不同的请求类型&#xff08;GET、POST&#xff09;&#xff0c; 不同的参数&#xff0c;来执行不同的业务逻辑。 客户端大多数的业务…

MySQL关联查询如何优化

好久不见&#xff0c;关于这篇文章&#xff0c;我也是想了很久&#xff0c;还是决定写一篇文章&#xff0c;有很多同学问过 mysql 相关的问题&#xff0c;其实关联查询如何优化&#xff0c;首先我们要知道关联查询的原理是什么&#xff1f; 左连接 left join SELECT 字段列表…

软件测试面试,你准备好了吗?

最近有机会做一些面试工作&#xff0c;主要负责面试软件测试人员招聘的技术面试。 之前一直是应聘者的角色&#xff0c;经历了不少次的面试之后&#xff0c;多少也积累一点面试的经验&#xff0c;现在发生了角色转变。初次的面试就碰到个工作年限比我长的&#xff0c;也没有时…