Class类相关
Class类是java.lang包中的类,该类的实例可以帮助程序创建其他类的实例或者取得其他类的对象的内部信息
使用class类获得一个类相关的class类(注意得到的是class类,不是相关的类) 比如类名 classFuck类
有类方法(静态方法)public static Class forName(String classFuck)throw ClassNotFoundException
然后我们用Class对象调用以下方法(classFuck必须有一个无参构造函数
public Object newInstance() throws InstantiationException,IllegalAccessException
我们就可以拥有了一个classFuck类的实体
try{
Class cs=Class.forName("A");//这里用string的形式
A a=(A)cs.newInstance();//这里用回一个(A)
System.out.println(a.f());
}
catch(Exception a){
System.out.println(a.getMessage());
}
如果我们有了一个实例了,我们可以用getClass()的方法,返回一个和对象相关class 实例
这个class有以下方法可以了解到classfuck类的信息
String getName()
Constructor[] getConstructors()//返回类的所有构造方法
Field[] getDeclaredFields()//返回类的全部成员变量
Method[] getDeclareMethods()//返回类的全部方法
import java.util.regex.*;
import java.lang.reflect.*;
import java.util.Scanner;
public class test{
public static void main(String args[]){
A a=new A();
Class b=a.getClass();
System.out.println(b.getName());
Constructor[] c=b.getDeclaredConstructors();
Field[] d=b.getDeclaredFields();
Method[] e=b.getDeclaredMethods();
for(int i=0;i<c.length;i++){
System.out.println(c[i].toString());
}
for(int i=0;i<d.length;i++){
System.out.println(d[i].toString());
}
for(int i=0;i<e.length;i++){
System.out.println(e[i].toString());
}
}
} class A{
int a=2,b=3;
int f(){
return a*b;
}
void ff(){
System.out.println("fuck");
}
A(int a,int b){
this.a=a;
this.b=b;
}
A(){}
}
Class类相关的更多相关文章
- C#异常类相关总结
C#异常类相关总结 C#异常类相关总结 C#异常类一.基类ExceptionC#异常类二.常见的异常类1.SystemException类:该类是System命名空间中所有其他异常类的基类.(建议:公 ...
- Python学习笔记008_类_对象_继承_组合_类相关的BIF
# 对象 = 属性 + 方法>>> # Python中的类名约定以大写字母开始>>> # tt = Turtle() 这就是创建类实例的方法,其它语言用new ,它 ...
- 多线程(二)~Thread类相关的API介绍
一.线程安全问题: 当我们使用多个线程操作统一方法内的局部变量的时候,每个局部变量在当前线程里都有自己的副本,这种情况是不会出现线程安全问题的.当我们两个线程同时操作全局变量的时候,有可能 ...
- C#图解教程学习笔记——类相关的概念
一.一些基本概念1. 字段:隶属于类的变量,即类的成员变量.2. 方法:隶属于类的函数,即类的成员函数.3. 实例成员:类的每个实例拥有自己的各个类成员的副本,这些成员称为实例成员. 改变一个实例字段 ...
- Python 基础之面向对象之类中的方法和与类相关的魔术属性以及反射
一.类中的方法 普通方法: 没有参数,只能类调用绑定方法: (1)绑定到对象(自动传递对象参数) (2)绑定到类(自动传递参数)静态方法: 无论是类还是对象,都能调用的方法#例:class Dog() ...
- 第15.10节 PyQt(Python+Qt)入门学习:Qt Designer可视化设计界面组件与QWidget类相关的组件属性详解
PyQt学习有阵子了,对章节的骨架基本考虑好了,准备本节就写组件的属性的,结果一是日常工作繁忙,经常晚上还要加班,二是Qt的组件属性很多,只能逐一学习.研究和整理,花的时间有点长,不过终于将可视化设计 ...
- PyQt(Python+Qt)入门:Designer组件属性编辑界面中QWidget类相关属性详解
本文适用人员:本文比较长,适合不理解Qt Designer部件属性的人员阅读或资料查找. 声明: 1.如果有人认为本文是简单的复制粘贴+翻译而成,敬请读本文最后的后记: 2.本文为老猿Python学习 ...
- 与类相关基本概念----Beginning Visual C#
span.kw { color: #007020; font-weight: bold; } code > span.dt { color: #902000; } code > span. ...
- c#之process类相关整理
一.根据进程名获取进程的用户名? 需要添加对 System.Management.dll 的引用 using System.Diagnostics; using System.Manageme ...
随机推荐
- codevs 1217 借教室
传送门 1217 借教室 2012年NOIP全国联赛提高组 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 钻石 Diamond 题解 题目描述 Descripti ...
- Jedis 一
//连接Jedis public Jedis getJedis(){ Jedis jedis = new Jedis("192.168.1.12",6379); //权限认证 // ...
- Java获取ip地址的几种方法
以下内容介绍下java获取ip地址的几种思路. 1.直接利用java.net.InetAddress类获取,不过这种方法只在windows环境下有效,在linux环境下只能获取localhost地址( ...
- 转:PHP 使用ZipArchive压缩文件并下载
原文来自于:http://courages.us/archives/176 网站上需要提供一些打印数据给用户下载,这些文件每次都需要重新生成,因为随时都会有新的数据产生.网络上关于PHP的压缩功能实现 ...
- 转:Google论文之一----Bigtable学习翻译
文章来自于:http://www.cnblogs.com/geekma/archive/2013/05/30/3108391.html Bigtable研究 摘要 Bigtable是一个用于管理结构型 ...
- 网站优化指南之数据库缓存、CDN与云存储
1 数据库缓存. 常见的做法是用内存做cache,把数据库里的内容提前取出读到内存里,用户再请求时,就不直接读数据库,而是读内存里的数据,从而缓解了数据库的压力. 过去比较常用的缓存软件是memcac ...
- 倒水问题-->经典面试题目
题目详细: 有两个容器,容积分别为A升和B升,有无限多的水,现在需要C升水.我们还有一个足够大的水缸,足够容纳C升水.起初它是空的,我们只能往水缸里倒入水,而不能倒出.可以进行的操作是:把一个容器灌满 ...
- DC-DC芯片 同步和異步方式有什么區別
同步方式是集成了High side和Low side MOSFET,組成同步整流模式,可實現高效率,價格相對貴.異步方式只有High side MOSFET;配合外部使用傳統的續流二極管,組成非同步整 ...
- Qt 中如何捕获窗口停用和激活的消息
最近一直在用Qt做一个简单的俄罗斯方块的游戏,由于要实现一个暂停游戏的功能,就是当鼠标移出正在运行的游戏,点击电脑桌面上的其他位置时,这个时候游戏暂停.在这里把实现过程简单的记录一下,作为一个学习笔记 ...
- BitmapFactory.decodeResource(res, id); 第一个参数跟第二个参数有什么关系?
BitmapFactory.decodeResource(res, id); res= getResources();activity的方法 id = R.drawable.x