首页 > 其他分享 >十九,反射

十九,反射

时间:2023-12-28 15:15:37浏览次数:22  
标签:反射 void System println new 十九 Class out

// 断言模式 : 10 + 10 = 30
@Test
public void testAdd(){
   Assert.assertEquals(20, new JiSuanQi().add(10, 10));
}
   @Ignore // 忽略该函数
   @Test(timeout = 3000)// 单位 : 毫秒
   public void testRun(){
       // while (true) {
       //
       // }
       try {
           TimeUnit.MILLISECONDS.sleep(2990);
      } catch (InterruptedException e) {
           e.printStackTrace();
      }
  }
@BeforeClass// 所有函数执行前,执行一次
   public static void beforeClass(){
       System.out.println("@BeforeClass ");
  }
@Before// 在每一个函数执行之前执行一次
public void before(){
   System.out.println("@Before ");
}

@After// 在每一个函数执行之后执行一次
public void after(){
   System.out.println("@After ");
}

@AfterClass// 在所有函数执行之后执行一次
public static void afterClass(){
   System.out.println("@AfterClass ");
}
    // Class 就是内存中的字节码文件
   // 1.Object : getClass
   Class<?> c1 = new Test01().getClass();
   // 2.内置的静态属性 .class
   Class<?> c2 = Test01.class ;
   Class<Void> voidClass = void.class;
   Class<Integer> integerClass = int.class;
   // 3.动态加载 : Class : forName(String className)
   Class<?> c3 = Class.forName("com.msr.lesson02.Test01");
   System.out.println(c1 == c2);
   System.out.println(c1 == c3);
// 静态创建对象就是 使用 new 关键字创建 : 要求类必须存在.
       // 动态创建对象
       // Word word = new Word();
       // word.start();
       // Excel excel = new Excel() ;
       // excel.start();
       try {
           Class<?> aClass = Class.forName("com.msr.lesson04.Excel");
           WPS wps = (WPS) aClass.getConstructor().newInstance();
           wps.start();
      }


// 创建文件的内存对象
       Properties properties = new Properties();    
// 借助资源流加载文件
   ClassLoader classLoader = Test02.class.getClassLoader();// 获取类加载器
   InputStream inputStream = classLoader.getResourceAsStream("wps.properties");// 默认路径 是 项目的 src 目录下
   // 将硬盘文件和内存对象关联起来
   try {
       properties.load(inputStream);
       // 读取硬盘文件内容
       String value = properties.getProperty("className");
       String[] split = value.split(";");
       for (String className : split) {
           Class<?> clazz = Class.forName(className);
           WPS wps = (WPS) clazz.getConstructor().newInstance();
           wps.start();
      }

标签:反射,void,System,println,new,十九,Class,out
From: https://www.cnblogs.com/tonnpo/p/17932737.html

相关文章

  • 反射
    公共函数的调用Class<A>clazz=A.class;通过反射创建对象获取函数对象try{Methodmethod=clazz.getMethod("m1");//形参类型Objecto=clazz.newInstance();//JDK9中过时了调用空参函数Objectinvoke=method.invoke(o);//实参System.out.println("invo......
  • Java反射
    一、反射的概述JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性;这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反射机制。要想解剖一个类,必须先要获取到该类的字节码文件对象。而解......
  • 深入探讨Java反射:解析机制与应用场景
    当谈及Java编程语言的强大功能时,反射(Reflection)是一个不可忽视的特性。反射允许程序在运行时检查和操作其自身的结构,这为开发者提供了一种动态获取信息和执行操作的途径。在本篇博客中,我们将深入探讨Java反射的原理、用法以及一些实际场景中的应用。什么是反射?反射是Java的一种......
  • 十九、显示动画-位置改变
    ArkUI中,产生动画的方式是改变属性值且指定动画参数。动画参数包含了如动画的时长、变化规律(即曲线)等参数,当属性值发生变化后,按照动画参数,从原来的状态过渡到新的状态,即形成一个动画。AnimateParam对象说明名称类型描述durationnumber动画持续时间,单位为毫秒。默认值......
  • Java,反射创建对象的两种方式
    跟着孙哥学Spring,b站:https://www.bilibili.com/video/BV185411477k/?spm_id_from=333.337.search-card.all.click在Java中,我们可以使用反射来创建对象。这里有两种主要的方式:1.使用Class.forName().newInstance()方法这种方式是使用默认的无参数构造函数来创建对象。如果......
  • .NET中反射和动态表达式的分析和比较
    背景在.NET中,反射和动态表达式是两种常用的动态编程技术。它们都可以用来在运行时动态地创建和操作对象、调用方法、访问属性和字段等。但是,它们在性能方面有一些差异。反射:反射是.NET中的一种基础技术,可以用来获取程序集、类型、方法、属性、字段等的元数据,以及动态地创建对......
  • 如何让 Go 反射变快
    如何让Go反射变快小白debug 2023-12-2507:43 发表于上海 1人听过 以下文章来源于Golang技术分享 ,作者机器铃砍菜刀Golang技术分享.专注于Go语言知识分享最近读到一篇关于Go反射的文章,作者通过反射给结构体填充字段值的案例,充分利用Go的各种内在机理,逐......
  • Java登陆第二十九天——HttpServletRequest和HttpServletResponse
    HttpServletRequestTomcat会自动将客户端请求报文封装为HttpServletRequest对象。HttpServletRequest中请求行常用方法方法描述StringgetMethod()获取请求方法StringgetProtocol()获取请求协议及版本号StringgetRequestURI()获取请求的具体资源StringB......
  • Java登陆第二十九天——ServletConfig和ServletContext
    ServletConfigServletConfig是web.xml中,Servlet的初始化参数对象(每个Servlet都有一个ServletConfig对象)web.xml<?xmlversion="1.0"encoding="UTF-8"?><web-appxmlns="http://xmlns.jcp.org/xml/ns/javaee"xmlns:xsi="http://ww......
  • 三十九、配置 PE 与 CE 间部署 IS-IS 的 MPBGP MPLS VPN 实验
    1、实验拓扑图2、实验目的ce1与ce3为同一个公司,通过BGP网络实现互联;ce2与ce4为同一个公司,通过BGP网络实现互联。3、实验步骤3.1配置bgp网络3.1.1为BGP网络配置IGPisis200network-entity49.0001.0010.0100.1001.00//配置isis的网络实体名称area+system+netcost-stylewideis-leve......