• 2025-03-18包装类&简单认识泛型
    一.包装类在Java中,由于基本类型不是继承自Object,为了在泛型代码中可以支持基本类型,Java给每个基本类型都对应了一个包装类型。1.1基本数据类型和对应的包装类注意:只有int和char类型的比较特殊。1.2装箱此时这个为自动装箱 这个为显示装箱1.3拆箱这个为自动拆箱
  • 2025-03-17集合体系结构
    目录:·单列集合Collection(接口)--List(添加的元素是有序,可重复,有索引)(接口)1.ArrayList(实现类)2.LinkedList(实现类)3.Vector(实现类)·双列集合Map(接口)--Set(添加的元素是无序,不重复,无索引)(接口)1.HashSet(无序,不重复,无索引)(实现类)-------LinkedHashSet(有序,不重复,无索引)(实现类
  • 2025-03-16【数据结构】包装类&泛型,看完此篇你将有一个新的认知!!!
    目录1.包装类1.1基本数据类型和对应的包装类1.2装箱和拆箱2.什么是泛型3.引出泛型3.1语法4.泛型类的使用5.裸类型(RawType)(了解)小结6.泛型如何编译的6.1擦除机制6.2为什么不能实例化泛型类型数组7.泛型的上界—extends7.1语法7.2示例7.3复杂
  • 2025-03-15C#整体知识点快速回顾
    目录一、C#基础语法知识入门1.输入输出操作2.变量类型与常量2.1基础类型2.2常量3.转义字符4.类型转换4.1隐式转换规则4.2显式转换API5.运算符运算符分类与优先级6.流程控制6.1条件分支6.2循环6.3控制关键字7.异常处理二、C#基础语法知识基础1.枚举、数组、
  • 2025-03-15Java泛型极简入门:从疑惑到掌握
    一、先看问题:为什么要用泛型?1.1没有泛型的痛苦体验//创建一个可以放任何东西的盒子classBox{privateObjectcontent;publicvoidput(Objectitem){this.content=item;}publicObjectget(){returncontent;
  • 2025-03-14协变逆变
    协变逆变协变:因为父类可以装子类,所以子类变成父类是协变比如string变成object逆变:父类可以装子类,但子类不能装父类,所以父类变成子类是逆变比如object变成string协变和逆变是用来修饰泛型的协变:out逆变:in用于在泛型中修饰泛型字母,只有泛型接口和泛型委托中才能
  • 2025-03-13### C++:现代编程的基石
    ####引言C++自1985年由BjarneStroustrup创建以来,已成为最广泛使用的编程语言之一。其强大的功能和高性能使其在系统编程、游戏开发、金融科技等领域占据重要地位。本文将探讨C++的核心特性、应用场景及其在现代编程中的重要性。####1.**C++的核心特性**#####1.1**面
  • 2025-03-12深入理解 `ParameterizedTypeReference`:解决 Java 泛型擦除问题
    在Java中,由于类型擦除的存在,我们在使用RestTemplate获取带有泛型的HTTP响应时,可能会遇到泛型信息丢失的问题。而ParameterizedTypeReference<T>正是用来解决这个问题的。本文将深入解析ParameterizedTypeReference的作用、原理,并结合RestTemplate举例说明如
  • 2025-03-10C# 泛型中的协变、抗变和裂变:概念与应用
     在C#中,泛型是一种强大的工具,它允许我们编写类型安全且灵活的代码。泛型类型参数不仅可以增强代码的可重用性,还允许我们指定类型的约束和行为。然而,当涉及到泛型类型参数的继承关系时,C#引入了协变(Covariance)、**抗变(Contravariance)和裂变(Invariant)**这三个重要概念,用来控制泛
  • 2025-03-08C#零基础入门篇(11.泛型的基本概念)
    在C#中,泛型是一种强大的编程特性,它允许开发者在定义类、接口、方法等时使用类型参数,从而实现代码的复用性和类型安全性。以下是关于C#泛型的详细讲解:###1.**泛型的基本概念**泛型允许开发者在编写代码时延迟指定具体的数据类型,而是在使用时再指定。这样可以提高代码的复用
  • 2025-03-07C#语言 集合(Collection) 语句 用法运用详解
    C#中的集合(Collection)是一组用于存储和操作一组对象的框架。集合提供了一种灵活且高效的方式来管理和操作数据。C#提供了多种集合类型,每种类型都有其特定的用途和特性。下面是对C#集合的详细用法和运用的讲解:一、集合的基本概念集合的定义:集合是一组对象的容器,可以用于存储、访
  • 2025-03-05深入解析 C# 中的泛型:概念、用法与最佳实践
    C#中的泛型(Generics)是一种强大的编程特性,允许开发者在不预先指定具体数据类型的情况下编写代码。通过泛型,C#能够让我们编写更灵活、可重用、类型安全且性能优良的代码。泛型广泛应用于类、方法、接口、委托、集合等多个方面。本文将详细介绍C#中泛型的基本概念、常见用
  • 2025-03-03Java——泛型
    在Java中,泛型支持的类型主要包括以下几种:1.泛型类(GenericClass)泛型类是在类定义时指定类型参数的类。类型参数可以是任意标识符,通常使用单个大写字母(如T、E、K、V等)。示例:泛型类classBox<T>{privateTvalue;publicBox(Tvalue){this.va
  • 2025-02-28Go语言学习笔记(五)
    文章目录十八、go操作MySQL、RedisMySQLRedis十九、泛型泛型函数泛型类型泛型约束泛型特化泛型接口二十、workspaces核心概念示例二十一、模糊测试十八、go操作MySQL、RedisMySQLpackagemainimport( "database/sql" "errors" "fmt" _"github.com/go-sql
  • 2025-02-23泛型,有点难度
    本文主要讲解泛型类型的解析,泛型算是必须要掌握的一块硬核知识,在很多地方都会用到,这块如果理解了,在阅读其他框架源码的时候会让你更容易一些,看完本文之后大家对泛型也有一个新的认识。关于泛型的解析上面,我们需要先了解一些类和接口,这些比较关键,这些都位于java.lang.reflect包中,
  • 2025-02-22【JAVA基础】泛型
    前言    在学习泛型前,我们得明白为什么要学习这个!!!,在JAVASE5.0前,ArrayList类只维护一个Object数组,使得在后面获取元素时,需要我们自己将Object对象强制类型转换 。这时候就很容易引起ClassCastException异常。因此在JAVASE5.0引进了泛型,可以在编译时检查非法数据
  • 2025-02-20泛型
    应用场景:1、处理多种数据类型,2、当函数、接口或类在多个地方使用该数据类型时分类:(1)泛型接口:interfaceIdentities<V,M>{value:V,message:M}(2)泛型函数:functionFn<V,M>(value:V,message:M):V{console.log(mes
  • 2025-02-19java 泛型
    泛型所有对象底层都是Object,不能对数据进行约束;向上向下转型,太过频繁,影响效率;泛型是给编译器的,又称参数化类型;可以在类声明时通过一个标识表示类中某个【属性,方法返回值,参数】的类型;泛型是编译阶段确定,所以不能修饰静态成员;当在声明的时候,没有传入类型的时候,默认是O
  • 2025-02-19泛型
    什么是泛型就是把类当作数据类型的参数,指定当前的容器持有什么类型的对象在类名后面添加一个<T>说明他是一个泛型类,可以直接使用这个T去进行传参和接收,  当我们实例化这个对象的时候就可以在类名后面加上<数据类型(这里要写包装类的名字)>指定类型,后面的<>可以不写类型,当获取
  • 2025-02-18关于类和方法的泛型参数的疑问
    关于类和方法的泛型参数的疑问Q1:为什么静态属性和方法不能使用泛型A1:在Java中,静态属性和方法不能直接使用泛型的原因与Java泛型的实现机制密切相关。以下是详细的解释:1.泛型的本质:类型擦除Java的泛型是通过类型擦除(TypeErasure)实现的。这意味着,在编译阶段,泛型会被替
  • 2025-02-18C#泛型类继承特性的限制
    C#泛型类继承特性的限制泛型类声明不能直接或间接使用System.Attribute作为基类。AgenericclassdeclarationshallnotuseSystem.Attributeasadirectorindirectbaseclass.直接继承System.Attribute类//CompilerErrorCS0698://Agenerictypecannotd
  • 2025-02-15泛型T keyof
    //extendsfunctionA<T>(a:T,b:T){//returna+b//此时提示报错,因为不是任何类型都可以接受+,所以此时加号不安全}//通过泛型extends数字类型,number能够接收+,所以不会报错functionB<Textendsnumber>(a:T,b:T){returna+b}//interface泛型添加extendsinter
  • 2025-02-15泛型T
    //泛型:动态类型//用泛型整合下面2个函数为一个函数functionA(a:number,b:number):number[]{return[a,b]}functionB(a:string,b:string):string[]{return[a,b]}//T是自定义的,只是常用T,用其他代替也行,使用泛型去代替未确定的类型functionC<T>(a:T,b:T):Ar
  • 2025-02-11关于集合的框架概述
    目录Java集合框架详解一、集合框架概述1.为什么需要集合?2.集合框架的体系结构二、Collection接口三、List接口1. ArrayList2. LinkedList3. Vector四、Set接口1. HashSet2. LinkedHashSet3. TreeSet五、泛型1.泛型集合2.自定义泛型类六、增强的for
  • 2025-02-11Java 泛型全面解析
    Java泛型全面解析泛型(Generics)是Java5引入的一项重要特性,它允许在定义类、接口和方法时使用类型参数,从而提高代码的复用性和类型安全性。泛型的主要目的是在编译时提供类型检查,并减少类型转换的需要。1.泛型的定义泛型的核心思想是参数化类型,即在定义类、接口或方