- 浏览: 262630 次
- 性别:
- 来自: 大连
文章分类
最新评论
-
saishangxue123:
文章写的清楚、明了,一气呵成,支持
什么是反射、反射能干什么、如何使用反射? -
allen3010:
1,2,3,4,5这六个数字。。。。。
用1、2、2、3、4、5这六个数字,用java写一个main函数,打印出所有不同的排列
对于面向接口编程的项目免不了要一反射相接触,动态得到实例: public interface a { public void sayHello(); } --------------------------- 第一种情况是当 aImpl实现类为默认的构造方法: 根据类名aImpl动态得到实例 Class c=Class.forName("aImpl"); a instance=(a)c.newInstance(); a.sayHello(); ------------ 第二种情况当 aImpl为带参数的构造方法时: Class o=Class.forName("aImpl");//aImpl为要实例化的例名,可以从配置文件当中获取 Constructor cous = null; cous=o.getConstructor(new Class[]{String.class});//构造器的参数类型 a ao=(a) cous.newInstance(new Object[]{"xxx"});//"xxx为传入的参数值 ao.sayHello(); 第三种就是构造器为私有的时候,我们通过方法获取实例getInstance()(自己定的) Class o=Class.forName("aImpl"); Method method=o.getMethod("getInstance",new Class[]{String.class}); //getInstance为返回为aImpl实例的方法名 a ao=(a) method.invoke(null,new Object[]{"xxx"});//注意了前面的参数为null,是有 //条件的,就是要求getInstance为static类型的,我想大家都会这样设计的 ao.sayHello(); 做连接池的话,一种方式就是使用动态代理类,当Connection调用close()方法时,我们可以利用方法拦截器,在调用close方法的时候把连接放到缓存里面去,供以后再次利用.. a ao=(a)Proxy.newProxyInstance(aImpl.class.getClassLoader(),aImpl.class.getInterfaces(), new InvocationHandler() { public Object invoke(Object proxy, Method method, Object[] args) throws Throwable { Object re=null; System.out.println("before--------"+method.getName()); //在这里我们添加自己的一些处理方法,如把连接放到缓存去撒! //re=method.invoke(new aImpl(),args); return re; } }); ao.sayHello(); 具体代码: package com.onoff.chijiunan; public interface Adonoffshowbanner { public void on(boolean blon); public void off(boolean bloff); } try { Class<?> c = Class.forName(Adonoff.classname);//Adonoff.classname 包名+类名 Adonoffshowbanner ads = (Adonoffshowbanner)c.newInstance(); ads.off(false); } catch (ClassNotFoundException e) { e.printStackTrace(); } catch (IllegalAccessException e) { e.printStackTrace(); } catch (InstantiationException e) { e.printStackTrace(); }
发表评论
-
java时间大小比较
2015-04-02 21:48 999摘自: http://blog.sina.com.cn/s/b ... -
StringBuffer的常用方法
2015-03-30 16:06 992摘自:http://blog.csdn.net/deaful/ ... -
什么是反射、反射能干什么、如何使用反射?
2013-08-16 00:03 4887//来源互联网 一、什 ... -
Class.forName···关于Class. 的应用介绍
2013-08-15 23:36 1189//摘自互联网 Class.forName(xxx.xx ... -
java泛型map的用法(转2)
2013-07-25 23:04 92311.声明一个map: Map map = ne ... -
java泛型map的用法(转)
2013-07-25 22:56 3149http://www.apkbus.com/blog-2079 ... -
关于日期 Date Calendar
2013-07-23 22:46 1160import java.security.Timestam ... -
正则表达式 例子
2013-07-22 23:00 849import java.util.regex.Matche ... -
Iterator的使用方法
2013-07-18 21:45 0import java.util.*; publ ... -
泛型的写法种种
2013-07-18 21:41 1057public class Generics<T> ... -
ArrayList ,LinkedList, TreeSet的使用方法
2013-07-18 21:35 2350import java.util.*; public ... -
Stack的使用方法
2013-07-18 21:26 1398import java.util.Stack; ... -
Hashtable的使用方法介绍
2013-07-18 21:24 23161**************************** ... -
老式枚举的使用方法
2013-07-18 21:23 974import java.util.Enumeration; ... -
java中Map的各种排序介绍
2013-07-14 13:24 1751//本篇来源于互联网 HashMap: 最常用的Ma ... -
java配置文件用法
2013-04-14 22:43 1331package cn.com.mfsoft.config; ... -
spring的beanFactory和factoryBean
2013-04-05 16:10 2160spring的beanFactory和factoryBe ... -
Spring配置文件总结
2013-04-05 16:05 908Spring配置文件总结(转) 2010-06-07 23: ... -
Spring 的微内核与FactoryBean扩展机制
2013-04-05 15:49 1639Spring 的微内核与FactoryBean扩展机制 ... -
简单工程模式 工厂模式 抽象工厂模式
2013-04-05 14:50 1951http://www.cnblogs.com/poisso ...
相关推荐
在本“Java反射经典实例”中,我们将深入探讨这个主题,了解如何利用反射来访问和修改私有属性以及调用私有方法。 1. **反射的概念与用途** - 反射机制是在运行时分析类的能力,它允许我们获取类的信息(如类名、...
### Java 利用反射获取内部类静态成员变量的值操作 #### 一、引言 在Java编程中,反射是一个非常强大的工具,它允许程序在运行时检查类、接口、字段和方法的信息,并且能够创建和操作对象。本文将详细介绍如何使用...
2. ORM框架:如Hibernate、MyBatis等,利用反射将数据库中的数据映射为Java对象,反之亦然。 3. Spring框架:Spring的依赖注入(DI)和组件扫描功能,部分基于反射实现。 4. 测试工具:JUnit等测试框架使用反射来...
在提供的"java反射实例代码"中,应该包含了如何使用上述方法的实际示例,这些示例有助于加深对Java反射机制的理解。通过阅读和运行这些代码,开发者可以更直观地学习如何在程序运行时动态地操作类、方法和字段,从而...
代码主要实现了Java反射应用实例, 包含利用反射方法创建对象(使用默认构造函数和自定义构造函数),访问对应对象的方法(包括带参数的和不带参数的),访问对应对象的域(Field). 从这里可以看到代码的详细解说:...
Java反射机制是Java编程语言中的一个强大特性,它允许程序在运行时检查和操作类、接口、对象等的内部结构。通过反射,开发者可以动态地获取类的信息并调用其方法,创建对象,访问私有成员,甚至改变类的行为。在深入...
### 反射实例—JAVA反射机制 #### 一、反射概念及原理 反射在计算机科学领域,特别是程序设计中,是指程序有能力访问、检测和修改其自身的结构和行为。这一概念最早由Smith于1982年提出,并迅速应用于各种编程语言...
通过本示例,我们不仅理解了Java反射的基本概念和用途,还学会了如何利用反射动态加载并操作实例类。反射提供了一种灵活的方式来处理类和对象,尤其是在编写框架和插件系统时,能够根据运行时的条件动态地加载和执行...
以下是对"java 反射实例,大量注释,简单易懂"这个主题的详细解释: 1. **反射基础**: - Java反射API主要由`java.lang.reflect`包提供,包括`Class`,`Constructor`,`Method`和`Field`等类。 - `Class`类代表...
在本文中,我们将深入探讨如何使用Java反射来获取并执行某个特定的方法。 首先,我们需要了解Java反射的基本概念。`java.lang.Class`类是反射的核心,它代表了Java中的每一个类。我们可以通过以下方式获取到一个...
Java反射是Java编程语言中的一个强大特性,它允许在运行时检查类、接口、字段和方法的信息,并且能够在运行时动态地创建对象和调用方法。这个特性使得Java具有了高度的灵活性,常用于框架开发、插件系统、元编程等...
下面我们将深入探讨如何利用Java反射API实现这些功能。 首先,要使用反射API,我们需要导入`java.lang.reflect`包中的几个关键类:`Class`、`Constructor`、`Method`和`Field`。这些类分别代表类对象、构造器对象、...
Java反射是Java编程语言中的一个重要特性,它允许程序在运行时动态地获取类的信息并操作类的对象。在Java中,反射机制提供了强大的能力,包括在运行时检查类的结构、创建对象实例、调用方法以及访问和修改字段值。...
Java反射机制是Java编程语言中的一个强大特性,它允许运行中的Java程序对自身进行检查并且可以直接操作程序的内部属性。这个特性使得Java具有了高度的灵活性和动态性,尤其是在处理元数据、创建对象、调用私有方法...
在标题“Java反射应用实例”中,我们关注的是如何在实际项目中利用反射来实现特定的功能。这篇博客文章(可以通过链接访问)可能会探讨以下几个方面: 1. **什么是反射**:首先,我们需要理解反射的基本概念。反射...
本文将深入探讨如何通过反射获取`Context`的实例,并展示如何利用反射实现一个集成`Toast`的工具类。这在某些场景下非常有用,比如当我们需要在没有直接访问`Context`的情况下显示`Toast`消息。 首先,让我们了解`...
在标题“Java反射实例”中,我们聚焦于如何在实际编程中应用这一特性。通过反射,我们可以动态地获取类的信息,如类名、方法名、字段名,甚至可以在运行时创建和调用对象。这对于实现元编程、插件系统、序列化、单元...
以下是对"Java反射实例"的详细解释: 1. **获取Class对象** 要使用反射,首先需要获取到对应的`Class`对象。这可以通过以下三种方式实现: - 使用`Class.forName()`方法,传入类的全名(包括包名)。 - 对象的`...
在"java反射大讲堂 实例源码下载"中,我们将会探讨如何利用Java反射机制来实现对类的深入理解和动态操控。 首先,我们要了解什么是类的继承关系。在面向对象编程中,继承是类之间的一种层次结构,一个类可以继承另...