Homework20191120

作业

1 已知一个类,定义如下:

 

public class DemoClass {

public void run() {

System.out.println("welcome to ujiuye!");

}

}

(1) 写一个Properties格式的配置文件,配置类的完整名称。

(2) 写一个程序,读取这个Properties配置文件,

获得类的完整名称并加载这个类,

用反射的方式运行run方法。

import java.io.FileInputStream;

import java.io.InputStream;

import java.lang.reflect.Method;

import java.util.Properties;

 

/*1 已知一个类,定义如下:

 

public class DemoClass {

public void run() {

System.out.println("welcome to ujiuye!");

}

}

(1) 写一个Properties格式的配置文件,配置类的完整名称。

(2) 写一个程序,读取这个Properties配置文件,

获得类的完整名称并加载这个类,

用反射的方式运行run方法。*/

public class Homework01 {

 

public static void main(String[] args) throws Exception {

Properties p = new Properties();//新建Properties对象

InputStream is = new FileInputStream("config.properties");

//配置文件内容:ClassName=com.xiongluoluo.homework.DemoClass

//新建输入流,关联config.properties文件

p.load(is);

//将输入流加载进Properties对象中

String classWholeName = (String)p.get("ClassName");

/*通过Properties对象(继承HashTable,可以使用方法getProperty(key)通过键取值,

也可以用map集合中的get(key)通过键取值),取得类的完整名称*/

Class c = Class.forName(classWholeName);

//通过Class.forName("完整类名")取得该类的字节码对象.

Method m = c.getMethod("run");

//通过getMethod("方法名",参数(没有可不写))获得run方法

m.invoke(c.newInstance());//直接调用就行

}

 

}

2、编译一个简单的计算器类(完成整数的加、减、乘、除计算的方法),使用Junit编程测试类并测试成功

import org.junit.Test;

/*2、编译一个简单的计算器类(完成整数的加、减、乘、除计算的方法),使用Junit编程测试类并测试成功*/

public class Calc {

//加法

public int Add(int a,int b) {

return a+b;

}

@Test

public void testAdd() {

System.out.println(Add(3,4));

}

 

 

//减法

public int Sub(int a,int b) {

return a-b;

}

@Test

public void testSub() {

System.out.println(Sub(5,6));

}

 

 

//乘法

public int Mul(int a,int b) {

return a*b;

}

@Test

public void testMul() {

System.out.println(Mul(5,6));

}

 

 

//除法

public int Div(int a,int b) throws Exception {

if(b==0) {

throw new Exception("憨批,除数能为0?????");

}else {

return a/b;

}

}

@Test

public void testDiv() throws Exception {

System.out.println(Div(5,6));

}

}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值