-Java | 知乎問答精選

 

NEW

Android 系統無法被分支 (fork) 嗎,AOSP 和 GMS 是何關係?

【布丁的回答(61票)】: 問題中第二篇文章的原文來自 Ars Technica: Neither Microsoft, Nokia, nor anyone else should fork Android. It』s unforkable. 這篇文章底下有一位 Google 工程師的評論,完整地回答了這個問題: http://arstechnica.com/information-technology/2014/02/neither-microsoft-nokia-nor-anyone-else-should-fork-android-its-unforkable/?comments=1&post=26199423 ...

NEW

大家怎麼看陳浩的這篇博客:Android將允許純C/C++開發應用?

鏈接:http://coolshell.cn/articles/3549.html 他在裡面問為什麼Android要選用Java。對於嵌入式開發,CPU和內存都很寶貴,居然還使用Java。且認為Android體驗不好Java是需要負責的 【李楠的回答(6票)】: 基本概念錯誤。 「主流智能手機」 的 「應用」 開發,不是「嵌入式開發」。 【歐寧的回答(6票)】: 這是2011年1月24日的文章,時至今日,智能機的硬件配置已經今非昔比,雖然和PC相比性能仍...



Android 為什麼不直接支持 java 軟件?

裝上虛擬機對 java 支持也不好?Android 系統都有用 java 來編寫的,反而對 java 這麼不友好。 【劉一丁的回答(6票)】: 相信這個問題問的是JavaME。 首先,使用javame是需要授權的,這個對於Android這樣的免費開源操作系統是無法接受的。 其次,android上的jvm是Google自己實現的dalvik,同hotspot等vm顯然不兼容。 再次,android上的java來自apache harmony,並沒有實現所有jre環境 最後,現在已經和oracl...



GitHub、Stack Overflow 還有微軟論壇上的默認頭像有什麼含義嗎?

【方自在的回答(25票)】: 這種頭像被稱作 Identicon, Don Park在2007年1月18日首次想出了這個創意。 一般來說在這些網站上面如果你沒有指定自己的頭像,網站會使用 Gavatar 或者使用 Identicon (Gavatar也有相關服務) 作為默認頭像。 Identicon 是 Hash 值的可視化表示,常見的生成方法是根據 IP 地址或 email 地址生成。 服務器通過 Identicon 可以以頭像的形式來分辨用戶,這種方法同時能夠保護用戶的隱...



軟件技術組的 FSAEr 要學習的軟件都有些什麼,分別是用來幹什麼的?

【JamesSun的回答(2票)】: 謝邀。 之前兩位把主要的CAD和CAE軟件都說得差不多了,我來補充點別的零碎的東西吧。 首先是作為電車狗的基本素養,做電路仿真的話multism少不了吧。有些地方繼電器動作比較複雜、邏輯比較凌亂的,可以在裡邊搭出來仔細觀察。另外可以監測各處的最大電流,防止線徑選擇不合適。感覺電路仿真領域也沒別的太多好推薦了。 畫電路板的Altium Design也是基本上沒有替代品的。似乎很多...



在 Google 搜索 Let it snow 的效果是怎麼實現的?

搜索頁面 http://www.google.com.hk/search?sourceid=chrome&ie=UTF-8&q=let+it+snow 【薛天祿的回答(42票)】: 雪花是一個個 ? ? ? 符號,通過 JavaScript 不段地改變其父級元素的位置,從而控制它們隨機擺動、落下。雪花的大小、顏色由隨機生成的,在一定範圍內的 font-size 和 color 屬性來控制。? 雪花的數目應該是固定的(200 個),也就是說,當雪花掉到地上後,會從天空上重新飄下來。 結冰...



瀏覽 GitHub 項目的目錄結構時,點擊一個目錄或文件鏈接是如何做到局部刷新,URL 同時被更新,這是什麼原理?

如: https://github.com/rails/rails/tree/master/activerecord 但是IE上沒有這種效果,是整頁刷新的。 【濤吳的回答(16票)】: 通過調用 history.pushState 方法。 詳見:?https://developer.mozilla.org/en/DOM/Manipulating_the_browser_history 標籤:-濤吳 -用戶體驗 -JavaScript -HTML5 -圖形界面



Twitter 使用的是什麼 JVM?

【RednaxelaFX的回答(48票)】: 撈起老帖。原本問題是3年前提出的,現在所能瞭解的信息比當時又更多一些。 Twitter用的是自己定制過的OpenJDK。具體到樓主的問題,「Twitter使用的是什麼JVM」,答案是Twitter自己定制過的OpenJDK HotSpot VM。 定制的內容主要集中在instrumentation、diagnostics(診斷)、serviceability(可維護性)方面。Twitter基於OpenJDK 7里新增的 JEP 167: Event-Based JVM Tracing ...



為什麼 Java 只有值傳遞,但 C# 既有值傳遞,又有引用傳遞,這種語言設計有哪些好處?

【知乎用戶的回答(120票)】: 先強調這個問題前半句是真命題的。說問題邏輯有問題,說一切都是值傳遞,都是沒理解什麼叫引用傳遞和值傳遞。 雖然這個問題根本就沒有在問「Java是不是值傳遞」,但是看完其它答案發現,如果不先解釋清楚到底什麼是值傳遞,什麼是引用傳遞,後面的好處也無從談起。只關心好處的請拉到最後。 第一種誤解是:Java是引用傳遞。(這麼理解的人,大體會解釋說Java的形參是對象的引用...



JavaScript 裡 new 出來的對象 怎麼銷毀它?

【RednaxelaFX的回答(18票)】: JavaScript的規範(ECMA-262 ECMAScript)沒規定JavaScript引擎要如何實現對JavaScript對象的內存管理。實際實現中幾乎所有JavaScript引擎都使用基於跟蹤(trace)的GC來實現自動內存管理。 編寫JavaScript程序時只要管new出對象,JavaScript引擎在底下會通過分析對像圖的可到達性來判斷對象的存活,進而釋放掉已無活引用的對象。 所以要讓JavaScript引擎有機會釋放掉某個對...