JAVA反射之Class类的练习
package zhang;
/**
* JAVA反射之CLass类的练习
*
* 在面向对象的语言里,万事万物皆对象,那么类是谁的对象呢?
* 类的类型是CLass
*
* */
class Test{
void print(){
System.out.println("Hello world!");
}
}//Test是一个类。
public class ClassDemo {
public static void main(String[] args) {
//创建Test对象的方式
Test test=new Test();//这样通过new 就创建除了Test的对象
//那么类也是一种对象,作为Test类,如何创建出对象为Test的对象呢?
/*
*
* Constructor. Only the Java Virtual Machine creates Class
* objects.
* private Class() {}
* Class类的构造方法是私有的,所以不能通过new来创建Class 对象。
* Class对象只能通过Java虚拟机创建
*/
/**
* 有三种方式
* */
/* 第一种:Class T1=Test.class 这种方式实际上是在告诉我们任何
* 一个类都存在一个隐含的静态成员class
*
* 通过已知类型来创建
*/
Class T1=Test.class;
/*
* 第二种
* 通过已知类型的对象来创建
* */
Class T2=test.getClass();
System.out.println(T2==T1);
/*
*
* 第三种
* */
Class T3=null;
try {
T3=Class.forName("zhang.Test");
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
System.out.println(T3==T2);
//也就是说:不管T1 or T2都代表Test类的类类型,一个类只可能是Class类的一个实例对象。
//我们可以通过T1 or T2 or T3来创建Test对象。
try {
Test test1=(Test) T1.newInstance();//这样就创建出Test的实例了
test1.print();
} catch (InstantiationException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IllegalAccessException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
package zhang;
/**
* JAVA反射之CLass类的练习
*
* 在面向对象的语言里,万事万物皆对象,那么类是谁的对象呢?
* 类的类型是CLass
*
* */
class Test{
void print(){
System.out.println("Hello world!");
}
}//Test是一个类。
public class ClassDemo {
public static void main(String[] args) {
//创建Test对象的方式
Test test=new Test();//这样通过new 就创建除了Test的对象
//那么类也是一种对象,作为Test类,如何创建出对象为Test的对象呢?
/*
*
* Constructor. Only the Java Virtual Machine creates Class
* objects.
* private Class() {}
* Class类的构造方法是私有的,所以不能通过new来创建Class 对象。
* Class对象只能通过Java虚拟机创建
*/
/**
* 有三种方式
* */
/* 第一种:Class T1=Test.class 这种方式实际上是在告诉我们任何
* 一个类都存在一个隐含的静态成员class
*
* 通过已知类型来创建
*/
Class T1=Test.class;
/*
* 第二种
* 通过已知类型的对象来创建
* */
Class T2=test.getClass();
System.out.println(T2==T1);
/*
*
* 第三种
* */
Class T3=null;
try {
T3=Class.forName("zhang.Test");
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
System.out.println(T3==T2);
//也就是说:不管T1 or T2都代表Test类的类类型,一个类只可能是Class类的一个实例对象。
//我们可以通过T1 or T2 or T3来创建Test对象。
try {
Test test1=(Test) T1.newInstance();//这样就创建出Test的实例了
test1.print();
} catch (InstantiationException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IllegalAccessException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
JAVA反射之Class类的练习的更多相关文章
- Java反射 - 1(得到类对象的几种方法,调用方法,得到包下的所有类)
通过反射获得对象的方法 准备工作: 有一个User类如下 package o1; /** * Created by yesiming on 16-11-19. */ public class User ...
- java反射 顺序输出类中的方法
java反射可以获取一个类中的所有方法,但是这些方法的输出顺序,并非代码的编写顺序. 我们可以通过自定义一个注解来实现顺序输出类中的方法. 首先,先写一个类,定义增删改查4个方法 public cla ...
- 【java】java反射初探 ——“当类也照起镜子”
反射的作用 开门见山地说说反射的作用 1.为我们提供了全面的分析类信息的能力 2.动态加载类 我理解的“反射”的意义 (仅个人理解) 我理解的java反射机制就是: 提供一套完善而强大的API ...
- 【java】java反射初探 ——“当类也学会照镜子”
反射的作用 开门见山地说说反射的作用 1.为我们提供了全面的分析类信息的能力 2.动态加载类 我理解的“反射”的意义 (仅个人理解哈) 我理解的java反射机制就是: 提供一套完善而强 ...
- Java反射初探 ——“当类也学会照镜子”
反射的作用 开门见山地说说反射的作用 1.为我们提供了全面的分析类信息的能力 2.动态加载类 我理解的“反射”的意义 (仅个人理解哈) 我理解的java反射机制就是: 提供一套完善而强大的 ...
- java反射之获取类的基本信息(一)
一.反射原理. Java 反射机制.通俗来讲呢,就是在运行状态中,我们可以根据“类的部分已经的信息”来还原“类的全部的信息”.这里“类的部分已经的信息”,可以是“类名”或“类的对象”等信息.“类的全部 ...
- java反射对实体类取值和赋值,可以写成通过实体类获取其他元素的数据,很方便哦~~~
项目中需要过滤前面表单页面中传过来的实体类的中的String类型变量的前后空格过滤,由于前几天看过一个其他技术博客的的java反射讲解,非常受益.于是,哈哈哈 public static <T& ...
- Java反射之Class类
接下来的几章,我们谈一谈java的反射机制. 反射就是从一个java类中映射出一个java类或是一个实例.通常在很多框架中都用到反射,比如常用的ssm框架,在配置文件中总是会写到类的全名,框架通过读取 ...
- java反射对实体类取值和赋值
public static void checkDesignerEdit(Object dtos) throws Exception { Class dtosClass = dtos.getClass ...
随机推荐
- logback打印日志时添加上下文
尝试上述特性, 配置如下: 效果:
- IT技术有感
今天看技术文章,spring相关的,某一个点以前每次看一直不理解, 可是不知道为什么隔了1年左右,中间什么都没做,现在却都懂了. 在看懂的那一刻,笼罩在我心上的躁动突然平静了许多,我的心这一年来前所未 ...
- wmv12下安装centos7
第一步:安装软件: vmw版本是12,并在vmw下安装centos为CentOS-7-x86_64-DVD-1708.iso: 第二步:修改vmw虚拟网络配置 1)配置VMnet8 修改ip等信息 点 ...
- POJ- 1094 Sorting It All Out---拓扑排序是否唯一的判断
题目链接: https://vjudge.net/problem/POJ-1094 题目大意: 该题题意明确,就是给定一组字母的大小关系判断他们是否能组成唯一的拓扑序列.是典型的拓扑排序,但输出格式上 ...
- poj1094-Sorting It All Out-拓扑排序
题意: 1).给你一些大写字母,共n个:大写字母间有m条关系: 2).举例:关系:A<B,意思就是A要排在B的前面(也就是说可能B排在A的前面 3).输出:有三种情况: 1.n个字母在前 i 条 ...
- 学习React系列(三)——Refs和Dom
一.适用于以下场景: 1.控制焦点,文本选择,或者媒体控制 2.触发必要的动画 3.整合第三方dom库 二.不要过度使用ref 如果想通过ref来改变state,那么换一种方式-变量提升可能会更好. ...
- 【swift,oc】ios开发中巧用自动布局设置自定义cell的高度
ios开发中,遇到自定义高度不定的cell的时候,我们通常的做法是抽取一个frame类,在frame类中预算好高度,再返回. 但是苹果出来自动布局之后...春天来了!!来看看怎么巧用自动布局设置自定义 ...
- 医疗器械c#上位机开发指引教程
此教程面向的读者:对医疗器械上位机编程有兴趣,或者急需了解医疗器械(尿常规.血液分析.生化.心电.B超等医疗下位仪器)的编程流程.编程细节的程序员. 1.得到仪器协议 当我们需要与医疗器械等下位机数据 ...
- 计蒜客NOIP模拟赛D2T3 数三角形
刚刚上高中的洁洁在学习组合数学的过程中遇到一道麻烦的题目,她希望你能帮助她解决.给定一张无向完全图 G,其中大部分边被染成蓝色,但也有一些边被染成红色或者绿色.现在,洁洁需要给这张图的多样性进行打分. ...
- 【BZOJ4196】【Noi2015】软件包管理器
原题传送门 题意: 给你一棵树,有2种操作: 1.使得某个点到根节点路径上的所有点权值赋为1. 2.使得某节点的子树中所有节点权值赋为0. 每次操作要求输出权值更改的节点个数. 解题思路: 显然是用树 ...