• 关于泛型的知识


    1泛型
    继承:
    任何类型的父类都是object object是一切类型的基类 子类继承父类的所有东西(里氏替换原则)


    执行方式:
    构造函数每个类都有一个默认的构造函数,一个类可以有多个构造函数,每个类在执行构造函数时(如果继承了父类)都会先执行父类构造函数再执行自身函数,这样子类就可以拥有父类的属性和方法了。
    应用场景如:写个通用的泛型方法,传入一个类作为类型。这样就可以使用这个类的方法属性以及继承的一些属性和方法。
    public static T Way<T>(T para) where T: People,new(){}

    对象.gettype()----->获取该对象是什么类型
    typeof()----typeof(int)指明里面是什么类型
    gettype和typeof就是分别针对对象和类型的


    声明------------泛型 <T>(T value)
    延迟声明
    声明static 可以直接类名.方法名无需用new就可以调用,一般公用的时候写成静态的,静态的成员信息(属性)会分配到内存的柞中(无论是int 类型 还是string类型)理论上是int 分配在内存的堆中 string 分配在内存的柞中。
    类.方法名.<int>(value)这里value要对应是int型

    泛型约束 where T: class,Interface,new()其中,的关系是并且的关系。是对泛型集合传入的对象的约束

    泛型优点:减少代码冗余, 相对用object类型而言不会有拆箱装箱(拆箱object--》int将引用类型转化为值类型 ,装箱----》将值类型转化成引用类型)
    值类型:栈从线程的堆栈中分配,不考虑垃圾回收机制,继承自System.ValueType,有两种形式:装箱和未装箱,不能作为基类,不能有虚方法,初始化时默认为0值,复制时“字段对字段”的拷贝。
    引用类型:从托管堆中分配,对象考虑垃圾回收机制,所有类都是引用,只有装箱形式,可以继承和派生,引用类型变量初始化时默认为null,复制时只拷贝内存地址。

  • 相关阅读:
    java实现冒泡排序
    使用telnet测试指定端口的连通性
    聊聊Java中的异常及处理
    Java工具类——数学相关的类
    谈谈javaSE中的==和equals的联系与区别
    如何在Vim中更改颜色和主题
    配置类为什么要添加@Configuration注解呢?
    你知道Spring是怎么解析配置类的吗?
    读源码,我们可以从第一行读起
    Spring杂谈 | Spring中的AutowireCandidateResolver
  • 原文地址:https://www.cnblogs.com/cxl6/p/5839219.html
Copyright © 2020-2023  润新知