java泛型不是计算运行时的数据类型
2019独角兽企业重金招聘Python工程师标准>>>
package com.ada.data.entity;import java.io.Serializable;import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.MappedSuperclass;@MappedSuperclass
public class NumEntity<NUM extends Number> implements Serializable {@Id@GeneratedValue(strategy = GenerationType.AUTO)private NUM id;public NUM getId() {return id;}public void setId(NUM id) {this.id = id;}@Overridepublic int hashCode() {final int prime = 31;int result = 1;result = prime * result + ((id == null) ? 0 : id.hashCode());return result;}@Overridepublic boolean equals(Object obj) {if (this == obj)return true;if (obj == null)return false;if (getClass() != obj.getClass())return false;NumEntity other = (NumEntity) obj;if (id == null) {if (other.id != null)return false;} else if (!id.equals(other.id))return false;return true;}}
package com.tongna.rest.apps;import com.ada.data.entity.NumEntity;public class A extends NumEntity<Long> {}
A a = new A();a.setId(1l);Class<?> ccc = a.getClass().getMethod("getId").getReturnType();System.out.println(ccc);System.out.println(a.getId().getClass());
java泛型不是计算运行时的数据类型。
所以在使用BeanUtils.copyProperties(source, result);的时候id不能拷贝。
转载于:https://my.oschina.net/cng1985/blog/653334
java泛型不是计算运行时的数据类型相关推荐
- [二]Java虚拟机 jvm内存结构 运行时数据内存 class文件与jvm内存结构的映射 jvm数据类型 虚拟机栈 方法区 堆 含义...
前言简介 class文件是源代码经过编译后的一种平台中立的格式 里面包含了虚拟机运行所需要的所有信息,相当于 JVM的机器语言 JVM全称是Java Virtual Machine ,既然是虚拟机, ...
- 聊聊高并发(四)Java对象的表示模型和运行时内存表示
在继续了解Java内存模型之前,最好先理解Java对象的内存表示.在网上搜了下Java对象内存表示,说得都不够系统和到位.之前看了<Hotspot实战>一书,对JVM如何表示对象这块说得挺 ...
- Java基础知识点__获取运行时类的完整结构
通过反射获取运行时类的完整结构 Field,method,Construuuctor,Superclass,Interface,Annotation 实现的全部接口 继承的父类 全部的构造器 全部的构 ...
- Java #JVM(HotSpot) 运行时数据区 #程序计数器(PC寄存器)#虚拟机栈(栈帧:局部变量表、操作数栈……)#堆……
目录 JVM中线程的说明 程序计数器(PC寄存器) 虚拟机栈 · 栈帧 ·· 局部变量表 ·· 操作数栈 ·· 动态链接 ·· 方法返回地址 ·· 本地方法栈 堆 · 查看堆的大小 · 堆的默认大小 ...
- 《深入理解Java虚拟机》笔记01 -- 运行时数据区
运行时数据区示意图 1. 程序计数器 占用一块较小的内存空间,它可以看作是当前线程所执行的字节码的行号指示器.主要用来记录线程执行到哪条语句了,分支.循环.跳转.异常处理.线程恢复等功能都需要依赖这个 ...
- Java虚拟机(四)——运行时数据区
运行时数据区 内部结构概述 内存概述 内存是非常重要的系统资源,是硬盘和CPU的中间仓库及桥梁,承载着操作系统和应用程序的实时运行.JVM内存布局规定了Java在运行过程中内存申请.分配.管理的策略. ...
- java -jar debug_java – 如何在运行时调试jar?
我是一个很奇怪的位置(从我的java-newbie的角度): >使用Eclipse我写了一个"java程序"(一些具有类的.java文件),其中基本上(批处理)读取一个文本* ...
- java帧结构_Java虚拟机运行时栈帧结构--《深入理解Java虚拟机》学习笔记及个人理解(二)...
Java虚拟机运行时栈帧结构(周志明书上P237页) 栈帧是什么? 栈帧是一种数据结构,用于虚拟机进行方法的调用和执行. 栈帧是虚拟机栈的栈元素,也就是入栈和出栈的一个单元. 2018.1.2更新(在 ...
- java 安卓权限_java – Android运行时权限 – 如何实现
Android Developer Documentation给出了在运行时请求权限的示例: // Here, thisActivity is the current activity if (Con ...
最新文章
- (初学必看)deep graph library(dgl)库的入门引导
- 引用可以是void类型吗?
- VTK修炼之道30:图像重采样_降采样和升采样技术
- huffman编码压缩算法
- 游戏人工智能开发之6种决策方法
- 一行代码开启 Winform 中的 ListView 和 DataGridView 双缓冲功能
- jsp用tags传递参数
- BZOJ1433[ZJOI2009]假期的宿舍——二分图最大匹配
- JAVA异常分类和处理
- 2019.02.12 bzoj3944: Sum(杜教筛)
- linux+脚本+pid,Linux启动脚本输出pid
- java下载不了_教大家电脑java安装不了怎么办
- matlab向量的模
- MSDOS(MBR)、GPT、BIOS、UEFI
- python绘制指数函数
- yolo极大抑制_Pytorch从0开始实现YOLO V3指南 part4——置信度阈值和非极大值抑制...
- Win系统 - Win10 进入 BIOS 系统(非启动快捷键)
- 华为的“少年天才”攀登者,出发向智能存储的“奥林帕斯山”
- SSL/TLS安全:Schannel中WinShock漏洞及解决办法
- VS Code No module named ‘torch‘终于解决