Re: [問題] compile後出現的note

看板java作者 (wctang)時間19年前 (2006/07/17 18:12), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串25/30 (看更多)
※ 引述《adrianshum@kkcity.com.tw ( )》之銘言: : ※ 引述《wctang.bbs@ptt.cc (wctang)》之銘言: : > http://wctang.info/blog/2005-04-19_Programming : > Calendar 和 DateFormat 在 jdk1.1 就出現了,所以這個問題也 lag 很久了,如果 : > Date 是沒用的,那留了這麼久也很奇怪。以我的想法,Date 的出現是名正言順,java : > 畢竟不是 C ,用 long 來表示時間反而覺得奇怪,而且在 api 設計上也會出現問題 : > (ex serialize) ,但有時的確用 long 來表示是好的,像是在 jni 的 api 設計上, : > 用 long 來表示時間就會方便許多。 : 我這裡看到感覺有點怪怪的. : 所謂 jni 的 api 指的是...? : 一般來說, 用 jni, 大概你不會直接把 java 的 api : 就直接拿來用. 通常會是自己再把 java 寫的東西再 : 包一層 native 的 "interface" 來提供 api. : 這個 wrapper 以 long 來代表 date 是沒有問題 (wrapper : 就該以包的 language 的慣例來做). 但 java 本身 : 該也仍然以 Date 來代表 date/time. : 前者 (wrapper) 我不覺得該叫 jni 的 api, 那只是 native : 的 api 而已, 後者也不該用 long 代表時間. : Alien 我會把 jni 提出來可能是因為之前的經驗讓我想例子的時候就先想到這個例子。 曾經看過在 jni 介面中也用到一堆 java 物件,使得 c 的那端必需處理一堆從 java 來的物件,會這麼做的原因我想應該是原本 java 已經設計的很複雜的物件 體系,並不是很容易將原本的傳遞的 java 物件都轉化為 c 的基本類型,所以會 用到 jni 中比較少被用到的功能。或許這個例子舉得不好吧 :) 其實 java 中的 wrapper class 有好多,像 Integer, Boolean, Byte ,那除了在 使用其中的 utility function 外,大家覺得還有什麼情況會用到這些 class 呢? (例如,在什麼情況下會用這些 class 做為參數而不是用 primitive type 呢?) -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 219.87.154.10
文章代碼(AID): #14ks9-lU (java)
討論串 (同標題文章)
文章代碼(AID): #14ks9-lU (java)