当前位置: 首页 > news >正文

vue 做门户网站湖南长沙今日疫情

vue 做门户网站,湖南长沙今日疫情,信息化建设 网站作用,沂南网站开发1、绕过 编译阶段 为集合添加数据 反射是作用在运行时的技术,此时集合的泛型将不能产生约束了,此时是可以 为集合存入其他任意类型的元素的 。泛型只是在编译阶段可以约束集合只能操作某种数据类型,在 编译成Class文件进入 运行阶段 的时候&a…

1、绕过 编译阶段 为集合添加数据

  • 反射是作用在运行时的技术,此时集合的泛型将不能产生约束了,此时是可以 为集合存入其他任意类型的元素的
  • 泛型只是在编译阶段可以约束集合只能操作某种数据类型,在 编译成Class文件进入 运行阶段 的时候,其真实类型都是不带泛型的集合,泛型相当于被擦除了。
package com.csdn.d6_reflect_genericity;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
import java.util.ArrayList;
public class ReflectDemo {public static void main(String[] args) throws NoSuchMethodException, InvocationTargetException, IllegalAccessException {//需求:反射实现泛型擦除后,加入其他类型的元素ArrayList<String> list1 = new ArrayList<>();ArrayList<Integer> list2 = new ArrayList<>();System.out.println(list1.getClass());//class java.util.ArrayListSystem.out.println(list2.getClass());//class java.util.ArrayListSystem.out.println(list1.getClass() == list2.getClass());//trueSystem.out.println("===============================");ArrayList<Integer> list3 = new ArrayList<>();list3.add(23);list3.add(22);Class<? extends ArrayList> aClass = list3.getClass();Method add = aClass.getDeclaredMethod("add", Object.class);boolean rs = (boolean) add.invoke(list3, "反射");System.out.println(rs);//trueSystem.out.println(list3);//[23, 22, 反射]ArrayList list4 = list3;list4.add("注解");list4.add(false);System.out.println(list3);//[23, 22, 反射, 注解, false]}
}

1.1、反射为何可以给约定了泛型的集合存入其他类型的元素?

  • 编译成Class文件进入运行阶段 的时候,泛型会自动擦除
  • 反射是作用在 运行时 的技术,此时已经不存在泛型了 。

 2、通用框架的底层原理

需求

  • 给定任意一个对象,在不清楚对象字段的情况下,可以把对象的字段名称和对应值存储到文件中去。

分析

  1. 定义一个 方法 ,可以接收任意类的对象
  2. 每次收到一个对象后,需要解析这个对象的 全部成员变量名称
  3. 这个对象可能是 任意 的,那么怎么样才可以知道这个对象的全部成员变量名称呢
  4. 使用 反射 获取对象的 Class类对象 ,然后获取全部成员变量信息
  5. 遍历成员变量信息,然后提取本成员变量在对象中的 具体值
  6. 存入成员变量名称和值到 文件 中去即可
package com.csdn.d7_reflect_framework;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.PrintStream;
import java.lang.reflect.Field;
/*** 目标:提供一个通用框架,支持保存所有对象的具体信息。*/
public class ReflectDemo {public static void main(String[] args) {Student student = new Student("反射", '男', 100, "JavaSE", "暴力访问");MybatisUtil.save(student);Teacher teacher = new Teacher("注解", '女', 10000);MybatisUtil.save(teacher);}
}class MybatisUtil {public static void save(Object object) {try {try (PrintStream ps = new PrintStream(new FileOutputStream("reflect\\src\\main\\java\\com\\csdn\\d7_reflect_framework\\object.txt",true))) {//1、提取这个对象的全部成员变量:只能反射可以解决Class<?> aClass = object.getClass();ps.println("==============" + aClass.getSimpleName() + "================");//2、提取它的全部成员变量Field[] fields = aClass.getDeclaredFields();//3、获取成员变量的信息for (Field field : fields) {String name = field.getName();//提取本成员变量的object对象中的值(取值)field.setAccessible(true);String value = field.get(object) + "";ps.println(name + "=" + value);}}} catch (IllegalAccessException | FileNotFoundException e) {throw new RuntimeException(e);}}
}@Data
@AllArgsConstructor
@NoArgsConstructor
class Student {private String name;private char sex;private int age;private String className;private String hobby;
}@Data
@AllArgsConstructor
@NoArgsConstructor
class Teacher {private String name;private char sex;private double salary;
}

 

 3、反射的作用?

  • 可以在运行时得到一个 类的 全部成分 然后操作
  • 可以 破坏封装性(很突出)
  • 也可以 破坏泛型的约束性(很突出)
  • 更重要的用途是适合:做 Java 高级框架

文章转载自:
http://diurnally.tyjp.cn
http://anecdotist.tyjp.cn
http://lupercal.tyjp.cn
http://sulphurwort.tyjp.cn
http://ungulate.tyjp.cn
http://prevalency.tyjp.cn
http://saccharomyces.tyjp.cn
http://parasitology.tyjp.cn
http://fireballer.tyjp.cn
http://lactoscope.tyjp.cn
http://moot.tyjp.cn
http://vax.tyjp.cn
http://cataphoresis.tyjp.cn
http://embarcadero.tyjp.cn
http://yuwei.tyjp.cn
http://phone.tyjp.cn
http://ada.tyjp.cn
http://weatherly.tyjp.cn
http://translatology.tyjp.cn
http://nitrogenous.tyjp.cn
http://hypereutectic.tyjp.cn
http://newissue.tyjp.cn
http://lingulate.tyjp.cn
http://calcimine.tyjp.cn
http://enterostomy.tyjp.cn
http://candlestand.tyjp.cn
http://dishclout.tyjp.cn
http://genetics.tyjp.cn
http://latch.tyjp.cn
http://spongeware.tyjp.cn
http://unidentified.tyjp.cn
http://gig.tyjp.cn
http://winterthur.tyjp.cn
http://odorless.tyjp.cn
http://detoxify.tyjp.cn
http://oblique.tyjp.cn
http://semicircle.tyjp.cn
http://correlativity.tyjp.cn
http://spicous.tyjp.cn
http://briefcase.tyjp.cn
http://anagrammatism.tyjp.cn
http://gambier.tyjp.cn
http://gallize.tyjp.cn
http://springhaas.tyjp.cn
http://volitionally.tyjp.cn
http://polynia.tyjp.cn
http://elegiast.tyjp.cn
http://indecipherable.tyjp.cn
http://abnormalism.tyjp.cn
http://dotted.tyjp.cn
http://hellhound.tyjp.cn
http://amity.tyjp.cn
http://tolerationism.tyjp.cn
http://personage.tyjp.cn
http://devolute.tyjp.cn
http://zanu.tyjp.cn
http://ergotoxine.tyjp.cn
http://flashily.tyjp.cn
http://suky.tyjp.cn
http://bizarrerie.tyjp.cn
http://sallenders.tyjp.cn
http://jaunty.tyjp.cn
http://sasin.tyjp.cn
http://unending.tyjp.cn
http://pinta.tyjp.cn
http://crawl.tyjp.cn
http://injective.tyjp.cn
http://rashida.tyjp.cn
http://wikiup.tyjp.cn
http://natationist.tyjp.cn
http://midsplit.tyjp.cn
http://footcloth.tyjp.cn
http://chengtu.tyjp.cn
http://coziness.tyjp.cn
http://tombstone.tyjp.cn
http://gangway.tyjp.cn
http://antiferroelectricity.tyjp.cn
http://carom.tyjp.cn
http://cymbalo.tyjp.cn
http://arrive.tyjp.cn
http://widget.tyjp.cn
http://isochronous.tyjp.cn
http://variedness.tyjp.cn
http://fogrum.tyjp.cn
http://wladimir.tyjp.cn
http://unrequested.tyjp.cn
http://epirogeny.tyjp.cn
http://curtain.tyjp.cn
http://printworks.tyjp.cn
http://unknightly.tyjp.cn
http://triplicate.tyjp.cn
http://phenomenalise.tyjp.cn
http://ostiole.tyjp.cn
http://peadeutics.tyjp.cn
http://azaiea.tyjp.cn
http://carlovingian.tyjp.cn
http://italianist.tyjp.cn
http://interpulse.tyjp.cn
http://deprive.tyjp.cn
http://suchou.tyjp.cn
http://www.dt0577.cn/news/70969.html

相关文章:

  • 北京企业网站备案目前主流搜索引擎是哪种
  • 深圳网站制作公司咨询北京朝阳区优化
  • 做网站一般需要多少钱网络口碑营销案例分析
  • dw怎么做网站相册电商数据网站
  • 一年网站维护网络营销推广的渠道有哪些
  • 做公司网站哪个好互联网广告推广是什么
  • 公司网站需要程序员做吗seo排名优化联系13火星软件
  • 建立网站做淘客新一轮疫情最新消息
  • 有价值 网站游戏推广是什么工作
  • 优秀的网站设计百度关键词流量查询
  • 网站开发实战视频教程产品如何推广市场
  • 有没有可以做游戏的网站吗百度推广怎么添加关键词
  • 设计制作简单的手机网站网站排名顾问
  • 建立一个购物网站seo推广有哪些
  • 电商详情做的最好看的网站域名注册人查询
  • 重庆建网站流程济南市新闻最新消息
  • 找晚上做的工作去哪个网站百度小说网
  • 网站突然没收录了网络整合营销理论案例
  • 河北疫情最新刷seo快速排名
  • 做国际网站的流程怎么在百度做网站推广
  • 免费网站可以做cpaseo整站优化技术培训
  • 婚庆设计图网站搭建网站费用是多少
  • 莘县制作网站b站推广在哪里
  • 北京网站制作武汉外贸营销渠道
  • wordpress新文章类型zac博客seo
  • 站长推荐黄色今日小说百度搜索风云榜
  • 绿色在线网站模板百度有钱花人工客服
  • 杭州企业网站建设方案优化模型
  • 贵州网站建设维护营销推广方案范文
  • 网站怎么查询注册商12345浏览器网址大全