学习进度
第一週的练习小考与检讨
课后练习与习题检讨
继承、多型与介面
继承(extends)原则与使用方法
父类别、子类别
存取修饰词(protected、default)
多型原则与使用方法
@Override、super
非存取修饰词(abstract)
介面(implements)
课后练习
封装-人员管理系统、卡牌游戏
继承-动物(猫、狗等)、形状(圆形、长方形等)
介面-学生排序、骰子游戏
**小考题目-扑克牌洗牌
课外补充
设计原则
心得感想
本週课程从封装进入到继承&多型,在名词解释如修饰词,以及使用方式满容易理解的,但在概念上完全更加抽象与难以理解,尤其在加入介面后,原本的封装性都需要重新思考,一直很难理解为什么要使用介面,勤奋点多打点CODE就能完成的事,甚至一时间何时可以用继承何时可以用介面都完全搞混,虽然透过练习勉强知道怎么使用,但概念上完全不行啊!!听到下週小考就是针对多型跟介面就知道这週假日注定报销了,另外这週的练习量大概是上週的一倍,透过大量练习越来越熟悉在打CODE的同时脑海中有个IDE同步思考自己的逻辑步骤,已经渐渐的可以不用边打边DEBUG,而且在完成CODE的同时真的满满的成就感,也越来越喜欢写CODE,每次专注都好像进入精神时光屋,一眨眼就过好几个小时,跟以前上班就是打发时间等下班的生活完全天壤之别,加上很喜欢跟班上同学的互动,很喜欢彼此互相照应,还可以聊天打屁的感觉,完全不会有冲刺班那种高压的气氛(可能只是一开始?),在这完全是一个温馨学习写程式的地方,也让我越来越期待结业后的自己会变得怎样!
下週目标
更加熟悉继承、多型与介面的应用
理解多型与介面之间的逻辑
课后练习题目
题目太多,就不一一贴上
//请撰写一个程式 功能如下: //有一个类别 Animal 类别中至少有 name(String) weight(float) //有一个类别Dog继承至Animal //有一个类别Cat继承至Animal //有一个类别Mouse继承至Animal//请撰写一个类别为 AnimalArray 并实现以下功能 //可以新增一个动物(于尾端) //可以插入一个动物(于指定位置) //可以删除一个动物(指定位置) //可以依照动物的姓名排序动物(String compare) //可以依照动物的体重排序动物 //可以按当前array中的顺序印出所有动物 //可以依照指定姓名查找动物(只会有一个) //可以依照指定字母开头找出相同字母开头姓名的动物(会有多个) //可以依照体重的大小(min~max)筛选动物 //可以依照动物的种类筛选动物
//1.撰写一个程式实现以下功能(使用介面完成)//A.请撰写一个类别DiceGame//i.创建DiceGame时可以指定要使用的骰子数量、获胜的规则、进行回合数//ii.骰子数量必须为 3~6//iii.进行回合数必须大于0且为奇数//iv.获胜规则有 点数大者胜、点数小者胜、相同点数多者胜//B.请撰写一个主程式依照以下流程执行//i.让使用者指定骰子数量(3~6)//ii.让使用者选择获胜规则(1~3)//iii.让使用者选择进行回合数//iv.进行游戏并显示最终胜利者//v.重新回到B-i步骤//备注: //1.骰子数量、获胜规则、进行回合数皆必须为DiceGame的属性//2.玩家数量永远为2,请写死于DiceGame中