学java 2周了,现在学面向对象,求一些面向对象编程的练习,好加深理解! 

解决方案 »

  1.   

    随便找本书都有习题啊,比如thinking in java的就可以
      

  2.   

    你看看下面这两题如何?半年前我自己出的,本想给老紫竹群里的朋友一些练习题,但到现在为止我没发现有谁把做好后的东西传给我,哎。
    题一一、背景:控制台应用程序的菜单处理,菜单会有子菜单项,可能会有多级。菜单项可能会随时更新和添加,需要能很方便地通过配置文件进行维护。一、需求:A. 首页菜单如下:购物系统
    --------------------------------------
    1. 客户信息管理
    2. 购物结算
    3. 真情回馈
    4. 注销
    5. 退出
    --------------------------------------
    请选择(1~5): 
    输入 1 时呈现:购物系统 -- 客户信息管理
    --------------------------------------
    1. 显示所有客户信息
    2. 添加客户信息
    3. 修改客户信息
    4. 查询客户信息
    5. 返回上层
    --------------------------------------
    请选择(1~5): 
    输入 2 时执行“购物结算”逻辑,假定只是输出“do 购物结算”,执行完成后显示首页菜单。
    输入 3、4 时执行各模块逻辑,逻辑也是假定输出字符串,执行完成后显示首页菜单。
    输入 5 时退出系统,终止程序。B. 二级页面,客户信息管理输入 1~4 执行各模块逻辑,假定输出字符串,执行完成后显示“客户信息管理”菜单。
    输入 5 时则返回上层菜单,即返回首页菜单。C. 其他要求C.1 首页菜单及二级菜单的菜单项是不定的,可能会随时进行增、删,需要做到动态配置。
    C.2 各菜单项可能有多级子菜单,也是会随时进行增、删,需要做到动态配置。
    C.3 各菜单项所执行的功能应是单独的,互不影响,即撤换掉一个时不影响其他功能的使用。
    C.4 在菜单停顿输入必须检查所输入的值,假定是“请选择(1~5)”,如果输入 6 的话则重显“请选择(1~5)”以便于能继续输入
    题二-----------------------------------------------------------------------
    A. 背景
    -----------------------------------------------------------------------A.1  为了方便生成非数字的流水号,现在需要制作一个流水号生成器,每调用一
         次可以获得流水号的下一个流水,并且能根据不同的要求进行变化。
    -----------------------------------------------------------------------
    B. 需求
    -----------------------------------------------------------------------B.1  要求根据不同的场景生成流水号B.2  流水号有多种表现形式,比如:M000001、M200903140001、20090314000001
         等等之类的,流水号可能是从 1 开始的,但也可能根据设定时间段从 1 开
         始     B.2.1  比如:M000001 的话,M 这个字符是固定的,而后面的数字是每调
                用一次流水号生成员都能获得下一个值     B.2.2  比如:20090314000001 的话,20090314 可能是当前的日期,也可
                能是当前的分钟或者说是小时,这样的话每一天或者每一小时或者
                是每一分钟的开始均从 1 开始     B.2.3  比如:M20090314000001 的话,M 是固定的,后面的与 B.2.2 一致     B.2.4  情况可能是多种多样的,具体的流水号产生逻辑今后可能还会增加,
                而且可以进行任意组合使用B.3  流水号不同号码的长度是固定的,数字位数不足时前面添 0 补足位数B.4  流水号可以放置于内存当中,但是为了停机后再次启动流水后也能延续下去,
         就可能需要进行持久化处理,持久化暂时设置为文件和数据库,但是今后可
         能会增加其他的持久化方式,比如 LDAP,FTP,SOCKET 等等。
    -----------------------------------------------------------------------
    C. 要求
    -----------------------------------------------------------------------C.1  采用面向对象方式进行程序设计C.2  应做到设计合理,扩展方便,运行正确,需要考虑并发请求流水号的问题C.3  代码格式标准,注释合理C.4  提交代码时需要提供打包后的 jar 文件、所有源代码、Ant 或 Maven 构建脚
         本、有类图的话需要提供类图
      

  3.   

    你才学了2周了,不着急的,你找本简单的,薄书看下。。其实,面向对象嘛
    就我看来就是new出来的。我给你推荐的是尚学堂教学视频,不错,我正在看!