zoukankan      html  css  js  c++  java
  • Java面向对象(中)课后习题编程题

    教材JAVA面向对象程序设计(第二版) 袁绍欣 第五章

    一、题目

    设计Src和Dis两个类,Src中有一个被封装的属性,类型类 int ,每当通过特定方法更改Src对象中的这个属性后,Dis对象都能得到通知,并向Src发消息获得此属性值。

    二、解答

    根据题意创建两个类
    Src类:

    
    public class Src {
    	int num;//被封装属性
    	Dis dis;
    
    	int getNum() {
    		return num;
    	}
    
    	void setNum(Dis d) {
    		dis = d;
    	}
    
    	Src(int n) {
    		if (n >= 0) {
    			num = n;
    		}
    	}
    
    	void changeNum(int n) {
    		if (n >= 0) {
    			num = n;
    			dis.print();//通知Dis对象
    			System.out.println("Modified successfully!");
    		} else {
    			System.out.println("Modification failed!");
    		}
    	}//修改num属性值
    
    	public static void main(String[] args) {
    		Src src = new Src(0);
    		Dis dis = new Dis(src);
    		src.setNum(dis);
    		for (int i = -2; i <= 5; i++) {
    			src.changeNum(i);
    		}//修改测试
    	}
    
    }
    
    

    Dis类:

    
    class Dis {
    	Src src;
    
    	Dis(Src s) {
    		src = s;
    	}
    
    	void print() {
    		System.out.println("Num值已修改为" + src.getNum());//发消息获得属性值
    	}
    
    }
    
    

    运行结果

    Modification failed!
    Modification failed!
    Num值已修改为0
    Modified successfully!
    Num值已修改为1
    Modified successfully!
    Num值已修改为2
    Modified successfully!
    Num值已修改为3
    Modified successfully!
    Num值已修改为4
    Modified successfully!
    Num值已修改为5
    Modified successfully!
    

    测试运行成功

  • 相关阅读:
    Flex4 启动失败: 正在等待 Adobe Flash Player 连接调试器
    软件的黑盒和白盒分析方法
    PAIP.国内软件公司的现状及解决.txt
    软件逆向分析方法小结
    应用程序中主键ID生成与UUID
    JDK1.4下载 JRE1.4下载
    壳与软件保护
    数据恢复软件
    跨语言调用模块.TXT
    论文格式
  • 原文地址:https://www.cnblogs.com/myzhibei/p/12890563.html
Copyright © 2011-2022 走看看