3-10编程作业

来源:3-10 自由编程

千_夜

2020-05-16 23:40:27

地址类Address
--------------------------------------------------------
package com.imooc.test;

public class Address {
	private int addreId;
	private String addreName;
	private String detailedAddress;
	private int addreTelephone;
	
	public Address() {
		super();
	}

	public Address(int addreId, String addreName, String detailedAddress, int addreTelephone) {
		super();
		this.addreId = addreId;
		this.addreName = addreName;
		this.detailedAddress = detailedAddress;
		this.addreTelephone = addreTelephone;
	}

	public int getAddreId() {
		return addreId;
	}

	public void setAddreId(int addreId) {
		this.addreId = addreId;
	}

	public String getAddreName() {
		return addreName;
	}

	public void setAddreName(String addreName) {
		this.addreName = addreName;
	}

	public String getDetailedAddress() {
		return detailedAddress;
	}

	public void setDetailedAddress(String detailedAddress) {
		this.detailedAddress = detailedAddress;
	}

	public int getAddreTelephone() {
		return addreTelephone;
	}

	public void setAddreTelephone(int addreTelephone) {
		this.addreTelephone = addreTelephone;
	}

	@Override
	public String toString() {
		return "Addres [addreId=" + addreId + ", addreName=" + addreName + ", detailedAddress=" + detailedAddress
				+ ", addreTelephone=" + addreTelephone + "]";
	}
	
	public void display() {
		System.out.println("这是一个地址");
	}
	
	private void info() {
		System.out.println("我是私有方法");
	}
	private void equalsAddress(String name) {
		if(this.getAddreName().equals(name)) {
			System.out.println("相等");
		}else {
			System.out.println("不相等");
		}
	}
	
}
测试类AddressTest
--------------------------------------------------------
package com.imooc.test;

import java.lang.reflect.Field;
import java.lang.reflect.Method;

import org.junit.Test;

public class AddressTest {
	@Test
	/**
	 * 通过Method调用display()方法
	 */
	public void test1() throws Exception {
		Class c1 = Class.forName("com.imooc.test.Address");
		Address add = (Address)c1.newInstance();
		Method m1 = c1.getMethod("display");
		m1.invoke(add);
	}
	
	@Test
	/**
	 * 通过Method调用info()方法
	 */
	public void test2() throws Exception {
		Class c1 = Class.forName("com.imooc.test.Address");
		Address add = (Address)c1.newInstance();
		Method m1 = c1.getDeclaredMethod("info");
		m1.setAccessible(true);
		m1.invoke(add, null);
	}
	
	@Test
	/**
	 * 通过Method调用equalsAddress()方法
	 */
	public void test3() throws Exception {
		Class c1 = Class.forName("com.imooc.test.Address");
		Address add = (Address)c1.newInstance();
		Method m1 = c1.getDeclaredMethod("equalsAddress", String.class);
		m1.setAccessible(true);
		Field f1 = c1.getDeclaredField("addreName");
		f1.setAccessible(true);
		//给addressName属性赋值
		f1.set(add, "小明");		
		m1.invoke(add, "小明");  //输出相等
		m1.invoke(add, "小红");  //输出不相等
		
	}
}


写回答

1回答

好帮手慕小脸

2020-05-17

同学的代码写的不错哦,继续加油哦!!

符合作业要求。

如果我的回答解决了你的问题,请采纳,祝学习愉快.


0

0 学习 · 8016 问题

查看课程

相似问题

作业 3-10

回答 1

3-7编程作业

回答 1

3-7 自由编程

回答 1