进击的软件工程师之路-软件战斗营 第一周

学习进度

  1. 二维阵列与记忆体位置复习

  2. 物件导向

    • 物件导向的三大特性(封装、继承、多型)
    • 封装性的特色与使用
    • 物件的类别、方法、属性、建构子与this.
    • 存取修饰词(public、private)
    • 物件的初始化
    • 间接存取(getter & setter)的使用
    • 非存取修饰词(static、final)
  3. 补充

    • 真值表原理与使用方法
    • 自动随机输入的写法
  4. 课後练习

    • 长方形的宽、高、周长&面积
    • 学生管理系统
    • 书与书柜
    • 图书馆

心得感想

  期待已久的战斗营终於开课了,前一天甚至兴奋的失眠,但没想到第一天的课程就来了一个震撼教育,让原本对程序充满自信的我,在前三天学习物件导向就让我晕头转向,常常把类别属性方法搞混,也不知道建构子该放什麽参数,或是该怎麽呼叫函式,呼叫的到底是位置还是方法,或是该类别该放什麽方法,以及一堆大小写的区分,我到底是new空间还是阵列,但好险老师放慢步调让我们充分练习,也谢谢所有为我细心解答的同学,让我慢慢消化各名词间的差异与使用原则,终於能理解每个物件彼此该做什麽事情,虽说还需要多加练习才能更上手这礼拜教的内容,但终於能渐渐清楚知道自己在写什麽。

下周目标

  1. 物件导向使用顺畅
  2. 缩短写练习题的时程

课後练习题目

//学生管理系统
// 撰写一个类别 Student
//     Student有四个属性 座号(int) 班级(String) 姓名(String) 成绩(int)
//     Student 的方法请自行添加
// 主程序有一个 Student的阵列
//      可以让使用者选择功能
//      1. 新增一个学生(空间不够请使用doubleArr)
//      2. 印出指定"座号"的学生成绩
//      3. 依照成绩由大到小排序学生
//      4. 依照座号由小到大排序学生
//      5. 更改指定"座号"的学生成绩
//      6. 结束程序    
//书与书柜
// 撰写一个类别 Date
//     Date 包含属性 年(int) 月(int) 日(int)
//     Date 需要有设定年/月/日的方法
//     Date 的建构子一定要有 年 月 日 三种资料
// 撰写一个类别 书(Book)
//     Book 包含属性 书名(String) 出版日期(Date) 作者(String)
//     Book 的方法请自行视情况添加
// 撰写一个类别 书柜(BookShelf) 
//     BookShelf 包含属性 书(Book[]) 书总数(int)
//     BookShelf 包含方法 void add(书名, 出版日, 作者)
//                       Book getByName(书名)
//                       其余方法请视情况添加
//撰写一主程序有以下功能
//     1.让使用者新增一本书(输入 书名 作者 年月日)
//     2.查询指定作者撰写的所有书籍的详细资料
//     3.查询指定书名的详细资料
//     4.查询指定出版日的所有书籍的详细资料
//     5.查询开始日期~结束日期间的所有书籍
//     6.结束程序    
//图书馆
// 新增一功能为修改书的内容
//     选择後让使用者选择查询方式(书名)
//     查询到书籍後让使用者选择要修改的内容(书名/作者/出版日)
//     修改并写回书柜中
// 新增一类别为图书馆
//     图书馆拥有属性 书柜(BookShelf[]) 书柜总数(int)
//     将书柜的类别改写 新增一属性 书柜编号(int) 书柜分类(String)
//                       新增一指定大小上限(存书量上限)
//     图书馆拥有方法 新增书柜(书柜分类, 存书量上限)
//                       通过编号寻找书柜
//                       印出指定分类的所有书籍(分类为书柜分类)
//                       新增一本书(书名, 出版日, 作者, 书柜分类) -> 此函式需要自行查询拥有该分类的书柜添加书籍
//                       当书柜已满 找相同分类的其他空书柜, 若书柜全满 则回传书柜全满
// 主程序需撰写以下功能
//     1.新增书柜
//     2.新增书籍
//     3.查询指定分类的所有书籍
//     4.修改书籍(透过书柜编号&书名)
//     5.印出所有书籍    

<<:  进击的软件工程师之路-前言

>>:  实用且有效的CISSP考试秘诀!

Day27:Azure小白如何使用Azure Kubernetes Service部署Container应用程序

在昨天我们谈完如何使用Azure Container Registry异地复写建立多份Contain...

[Day 10] 实作 Ktor Graceful Shutdown

各种 Graceful Shutdown 的作法 一个稳定的服务必须要考虑当停止服务时,已经接受的 ...

[ JS个人笔记 ] 传值传址&深浅层拷贝—DAY5

传值(call by value)vs传址(call by reference) 基本型别(Numb...

#番外-让你的CSS好读起来!CSS命名方法论笔记

你有以下困扰吗? 常常不知道要怎麽命名Class吗?(还一直去 Google 英文字的是你ㄇ ?) ...

【没钱买ps,PyQt自己写】Day 17 / Project 制作标注 roi 工具, 开始导入 OpenCV 作为绘图引擎, 在图上画点并显示座标

看完这篇文章你会得到的成果图 前言 这一篇我们会继续拿现有的 day 16 成品来改, 我们在 da...