WEB开发网
开发学院手机开发Android 开发 Android 中利用反射技术实现加减乘除 阅读

Android 中利用反射技术实现加减乘除

 2010-08-17 11:00:00 来源:WEB开发网   
核心提示:android:layout_width="wrap_content" android:layout_height="wrap_content">< /LinearLayout>< /LinearLayout>下面就是一些对反射技术的操作代码了,由于

android:layout_width="wrap_content" android:layout_height="wrap_content">

< /LinearLayout>

< /LinearLayout>

下面就是一些对反射技术的操作代码了,由于本篇是反射机制的入门篇,在此只是通过一个小DEMO 讲解反射的常用的几个方法,这里的流程如下:

获取相应的类对象名称

Class classType = Class.forName("com.terry.operationClass");

如果知道类名并且类名存在于我们工程中,即jar 文件中包含可以使用如下写法

Class classType = operationClass.class;

返回本类对象

Object invokeOperation = classType.newInstance();

根据类对象名称去查找对应的方法

Method addMethod = classType.getMethod("add", new Class[] {

int.class, int.class });

参数一:代码需要查找类名的方法,参数二:指定查找方法的参数类型

调用查找 到的方法执行此方法的处理

Object result = addMethod.invoke(invokeOperation, new Object[] {

new Integer(first), new Integer(second) });

通过调用查找到的方法即可实现方法体的功能。

Tip:反射比较耗费系统资源,建议不在不得以的情况下不要用,尤其是在移动设备上这种对资源要求十分苛刻的设备。

运行效果如下:

下面给出全部页面代码:

package com.terry;

import java.lang.reflect.InvocationTargetException;

import java.lang.reflect.Method;

import android.app.Activity;

import android.os.Bundle;

import android.view.View;

import android.view.View.OnClickListener;

import android.widget.Button;

import android.widget.EditText;

import android.widget.TextView;

public class OperationActivity extends Activity {

private EditText one, two;

private TextView result;

private Button add, cut, ride, Except, sum;

上一页  1 2 3 4 5 6  下一页

Tags:Android 利用 反射

编辑录入:coldstar [复制链接] [打 印]
赞助商链接