※ 引述《qrtt1 (有些事,有时候。。。)》之铭言:
: ※ 引述《rdfs (曙光女神之宽恕)》之铭言:
: : 请问有人知道哪边有物件导向的练习题可以练吗 ?
: : 学了一些语法, 不过好像没什么练习可以做,
: : 不知哪边有题目可以买或是网络上有 ?
: 单纯概念练题的话,
: 用候捷早年放在网络上的 thinking in java 2/e 的 pdf
: 看完该章本文然后做它的习惯就行了。
: 章节集中在 6, 7, 8 章。
: 不过,不赶时间的话,还是有 4, 5 开始做吧。
: 目录:
: https://i.imgur.com/xf50Cv8.png
: https://i.imgur.com/QwY0EYw.png
我也想问类似的问题 结果被抢先了 所以我就借这标题问一下
就是我目前从事java开发的工作已经两年了
基本的语法大概都有印象 但是要具体描述自己到底哪里会 不会还是不太行
刚好我找到TonyQ大以前的文 提到做个检查表来检视:
知道J2EE、J2SE、J2ME这三个领域的对象的差异
知道if-else、switch是什么
if-else常用 但switch几乎不会用到 不熟
知道for、while是什么
都会用
知道 API Document的使用方法
需要的时候会查
知道String有哪些函式、怎么切割字串跟组合字串。
切割用split 组合用concat
知道main的用途与main的参数用法
main是jvm首先执行的方法 main的参数没用过
知道static method怎么设计
不会 只有用过math.random() integer.parseInt()这类方法
知道class跟instance method怎么设计
工作上还没设计过 只有自己练习coding设计简单的
知道Classpath是什么,能引用第三方的套件。(通常是jar档)
classpath就是java档被编译后形成的class档 所在的路径
在eclipse新增dynamic web project时 会询问你class档要放哪
套件的话 ojdbc spring hibernate struts 1 都用过
但都只会基本功能
知道什么是IDE,并了解IDE提供开发流程中哪些协助,扮演什么角色。
这个不太会讲
2.资料结构基础
知道什么是Array
只知道中文叫阵列 长度是固定的...
知道什么是List (ArrayList、LinkedList)
只会用get set size 知道arrayList默认长度是10
arrayList会随着元素数量动态增减长度 其他的不会解释...
知道什么是Map (HashMap、TreeMap的不同点?)
一样只会用基本的方法
知道如何浏览Map及其他Collection的浏览法(iterator())
只会forEach 另外知道forEach是语法蜜糖
编译器会把forEach转成iterator()的格式
3.算法基础
知道什么是算法
讲不出来Orz
有时间复杂度的概念
有空间复杂度的概念
知道什么叫递回 (实务上偶尔会有机会用到)
太久没用都忘光光QQ
对基本的算法有一定了解
基本排序法(buble、selection、insertion、quick、merge)
动态规划(Dynamic Programming)
以上都忘光光...
4.Java进阶应用
能用java.text.* 做日期的格式化、数字的格式化
能用java.io.* 做文字档的读档、存盘 (java.util.Scanner也行)
能用 java.lang.Math 做一些数学运算
这些都是要用到时才会去GOOGLE
知道什么是Jar档,并了解class是能够被反编译(de-compile)的。
一种java档的压缩档 若要在专案引入框架或其他工具
常常需要引入jar档 class是可以被反编译 但我几乎没做过o.o
知道什么是 JDBC ,能对数据库操作有基本了解。
一种让程式跟数据库得以连接起来的接口
各家数据库厂商实作了这个接口 并打包成jar档 只要再专案引入jar档
即可将专案连接到数据库
能熟悉使用IDE,减少多余开发时间在制造错误跟重复的行为上。
有时候同事会说我对工具不熟悉 甚至全选 复制的动作可以用鼠标
点两下全选再复制 而非用鼠标拖曳再复制都是同事教的
能了解在Object这个基底类别中,toString、equals、hashcode
这三个method扮演什么样的角色。
toString用来转型成字串 equals用来比较物件的值 其他的不会= =
1.Java高阶应用
会利用 java.net.* 处理网络上的沟通
(ex. Socket、ServerSocket,也可以用URL抓抓网页之类)
会利用 javax.swing.* 、 java.awt.* (或者SWT)做GUI的处理
没做过
了解什么是接口,并能利用接口撰写程式。
没有设计过接口 只有拿既有的程式来改
了解什么是 Design Pattern,并且能举出java api中
使用Pattern的实例。
我只知道java io用到装饰者模式
能以J2SE基础切入J2EE的 JSP 网页应用程式。(有兴趣可再深入J2EE
)
JSP会基本的语法 知道如何将后端传过来的值写在JSP档上
能以J2SE基础编写J2ME的应用程式(MIDP)
不会
有能力依需求编写一个以上的Thread,并考虑到Thread-safe的问题。
工作上没遇过多执行绪的状况 都忘了QQ
2.工具部份
能了解 Framework 是什么,并了解目前能见到的Framework的目标。
只有碰过Spring hibernate struts基本用法 不敢说会
也不敢说了解框架是什么
能了解 Ant 这个建立开发的自动化流程的工具
没用过