通讯录的设计采用了分层+接口+面向对象+文件操作+方法实现
分三层实现,共使用了四个包,实现业务数据访问和界面的分离
    contactaccess包实现对文件的访问
        包括数据访问工厂类,返回一个新的数据访问层对象
        数据访问类,实现对文件的读写,来完成对文件中的数据的相关操作
        数据访问接口,定义相关方法,以供业务层调用实现多态
    contactbusiness包实现数据访问层并向上层提供相关接口
        包括业务层工厂类,返回一个新的业务层对象
        业务类,实现数据访问层接口,并实现相关方法,以及向上层提供访问接口。
        业务接口,定义相关方法,以供顶层ui层访问
    ui包实现界面并实现业务层的相关接口
        只包括一个UI类,实现对业务层相关功能的调用,以及用户输入数据的传递
    enity包只包括一个实体类,用于创建联系人对象类,并提供各个成员变量的getter和setter方法以供调用
该项目还包括一个主类Start,实现程序的运行,以及一个txt文件用于存储联系人相关数据
本项目设计思路就是这样,业务逻辑的分离和数据的持久化保存以及面向对象、面向接口编程,来最终实现通讯录的增删查询、文件备份,退出等相关功能。

ContactCollections Design Report的更多相关文章

  1. chatsRoom Design Report

    基于TCP实现聊天室 主要使用四个类 ChatClient类     使用BufferedReader 得到输入流,使用OutputStream得到输出流     实现读取服务器广播的消息和发送消息到 ...

  2. 如何将FastReportOnlineDesign 灵活的应用到C/S B/S 程序当中?

    一.好久没有写博客了,主要是停在这里太久了,有些事情让自己尽量不在去想,忘记不了一段难以忘怀的记忆,就让这一段美好的记忆沉没在无锡的太湖中吧!不在去想了.难以忘怀..... 二.废话不多说了,不如正题 ...

  3. FastReport.Net

    using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; usin ...

  4. FastReport打印table

    经过验证是对的. table第一行添加标题,也就是拖过来的文本label,第二行开始绑定数据源的字段. 先设计报表的静态部分,再用代码注册数据源,然后设计,添加注册的数据源,绑定字段. var rep ...

  5. RTL Compiler之synthesis steps

    1 synthesis steps 1) Search Paths rc:/> set_attribute lib_search_path path / rc:/> set_attribu ...

  6. Winform中使用FastReport的DesignReport时怎样给通过代码Table添加数据

    场景 FastReport安装包下载.安装.去除使用限制以及工具箱中添加控件: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/10 ...

  7. Winform中使用FastReport实现简单的自定义PDF导出

    场景 FastReport安装包下载.安装.去除使用限制以及工具箱中添加控件: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/10 ...

  8. 一周死磕fastreport ----ASP.NET (三)

    做了一周,然而说着很快  首先拖一个WebReport 点击design report 设置模板 引入dll using引用 设置好就打印就可以了 未来几天, 然后都在设置样式 ....如何就一周过去 ...

  9. birt报表报错, There is no report design object available.org.eclipse.birt.report.exception.ViewerExcepti

    报错信息例如以下: - There is no report design object available. org.eclipse.birt.report.exception.ViewerExce ...

随机推荐

  1. SSH无密码登陆

    http://blog.chinaunix.net/uid-26284395-id-2949145.html

  2. 【面试】关于get和post两种方法的不同。

    最近在面试题和笔试题中经常会看到这道题,所以打算系统的整理一下. 一般标准的答案是这样的. GET在浏览器回退时是无害的,而POST会再次提交请求(浏览器应该告知用户数据会被重新提交). GET产生的 ...

  3. NET core 添加了新的nuget包,部署出现Could not load file or assembly

    这个坑,今天整了一天,我添加了Microsoft.AspNetCore.Mvc.Versioning包,结果发布到服务器,我复制了dll过去出现了一直找不到加载不成功的问题 Startup.Confi ...

  4. Libp2p 简介

    这是一个翻译的系列文章,原文参考:Introduction :: libp2p Documentation 欢迎来阅读libp2p相关文档,不论你是刚开始学习如何用libp2p来搭建P2P系统, 还是 ...

  5. 密码学系列之:明文攻击和Bletchley Park

    目录 简介 crib和明文攻击 布莱奇利公园(Bletchley Park) 简介 明文攻击就是指已经知道了部分明文和它对应的加密后的字段,从而可以推测出使用的加密手段或者密码本.明文攻击这个故事还要 ...

  6. 2020 AC Saber夏季赛 游记

    看着 \(\text{Acwing}\) 成长的我,还是写一下游记吧(?). 刚刚中考完,手速本来就老年,更慢,算法每次写完都要调,而且还查不出错.. Day 1 初赛.紧张,因为中考四五个月没打了, ...

  7. 海量数据架构下如何保证Mycat的高可用?

    写在前面 在<冰河,能讲讲Mycat如何实现MySQL的读写分离吗?>一文中,我们实现了使用Mycat实现MySQL的读写分离.然而,此时的Mycat只有一个节点,如果Mycat节点宕机了 ...

  8. 【Tomcat 源码系列】Tomcat 整体结构

    一,前言 在开始看源码细节之前,首先要想好要看的问题.想好问题之后,我们该如何寻找要看的代码呢? 其实,这就好像去爬山的时候,突然想去上厕所,如果有一副地图,那么我们可以很快就找到厕所的位置.带着问题 ...

  9. 系统类 字符串String类

    java编程语言中的字符串. 在java中,String类是不可变的,对String类的任何改变,都是返回一个新的String类对象. String 对象是 System.Char 对象的有序集合,用 ...

  10. XSS攻击与防止

    1.XSS又称CSS, cross sitescript, 跨站脚本攻击,是web程序中常见的漏洞 XSS属于被动式且用于客户端的攻击方式 XSS攻击类似于SQL注入攻击,攻击之前,我们先找到一个存在 ...