Java基本功练习三(方法的抽象、逐步求精)

       首先啰嗦两句,在其他语言中方法称为过程(无返回值)或函数(有返回值)。Java中main方法是由Java虚拟机调用的,其方法头永远都是public static void main(String[]args)。另外,理解相关概念:方法头、方法体、修饰符、方法名、方法签名、参数列表、形式参数。

       方法的抽象和逐步求精:方法抽象是指将方法的使用和它的实现分离。逐步求精就是分治的思想,将大问题分解成子问题,子问题有分解为更小、更容易处理的问题。讲文字太过理论枯燥,下面以一道编程题目展开阐述。

       示例:假设编写一个程序,显示给定的年月和日历。程序提示用户输入年份和月份,然后显示该月的整个日历,运行效果如右图所示:

       你会立即开始编写代码吗?一个好的程序员应该学会程序设计前期的自顶向下的思维培养,应该先用方法抽象把细节与设计分离,只有在最后才实现这些细节。

       如上例子,可以先拆分为两个子问题:读入用户输入打印该年、月的日历。分解之后首先考虑的问题是还能分解成更小更简单的问题吗,而不是考虑用什么方法来读入和打印整个日历。可以画一个结构图来帮助思考。

       打印给定月份的日历问题可以分解成两个子问题:打印日历的标题(由年月、虚线、每周七天的星期名称)和日历的主体(第一天是周几、该月有几天、如何控制天数循环显示)。

       再继续往下分解,怎样知道某月第一天是周几呢?1)可以用最经典的泽勒一致性公式去求解(该方法在Java基本功练习二中介绍了,可以去参看);2)还有种办法

  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值