-Java | 知乎問答精選

 



在 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引擎有機會釋放掉某個對...



Flash在蘋果、微軟、火狐的圍剿下生存期還有幾年?有沒有完善的替代方案?

蘋果的iPhone、iPad不支持Flash 即將發佈的Metro版IE10將不支持Flash Firefox 14將默認不播放Flash 在此情況下Flash的生存期還有幾年?是否需要從現在著手對基於Flash的功能準備替代方案,例如廣告、視頻、遊戲、複製剪貼板等? 【Rio的回答(10票)】: 五年之內 Flash 必亡。部分替代方案已經有了: 廣告:JavaScript + CSS 動畫 + Canvas 實在不行還有 GIF 視頻:HTML5 <video> 標籤 + MP4 遊戲:Ja...



Android會令Java鹹魚翻身嗎?

java 在企業級開發和互聯網初期風光一時,但若干更適合web2.0開發, ROR風格輕量級腳本語言淹沒了java社區的身影。可是近兩年,andorid一路高歌猛進,Android應用程序基本上都是用java語言開發,這是否能改變java社區的生態,讓java愛好者鹹魚翻身呢? 【志一的回答(8票)】: java目前就是使用最廣泛的語言,不存在翻身問題。 【Sparkle的回答(0票)】: 現在Java是oracle的,還想去告google的android侵權,何...



JavaScript 語句後應該加分號麼?

【賀師俊的回答(164票)】: 【2014年1月更新】 當初鑒於本答案過長而可能導致部分「分號黨」無法catch到我的主要論點,原本打算重新修訂本答案。但是因時間精力因素未予重寫,且從本答案的支持來看,為分號正本清源的目的已經達到,所以不再修訂本答案。這裡僅總結下「分號黨」推崇的「總是寫分號」風格的最主要缺陷: 1. 人總是有可能忘記寫分號。ASI導致無法區分是無意中忘記還是有意不寫(代碼折行)。 2...



為什麼蘋果官網的首頁引用了很多的 JavaScript 文件?對用戶的訪問速度有影響嗎?

一共有 8 個。 【覃超的回答(19票)】: (我可能之前沒理解錯問題:樓主是強調引用還是強調太多? 如果引用,那麼的確我覺得把用到的js壓縮和合併起來,就像gmail, gmap 或者 http://fb.com的首頁那樣。這幾乎是任何一個專業網站都會做的事情。) 1.現在用戶瀏覽器的渲染越來越快,特別是JS的engine速度也得到了成倍地增長,所以那些JS我覺得對於桌面的瀏覽器來說不是很大的負擔:(實際上,現在chrome的能...



小公司的一個發展機會和一個大公司更高薪水的 offer,該怎麼選擇?

工作半年,java web程序員.有兩個選擇擺在面前1小公司培養往項目組長方向發展2大公司的更高薪水.怎麼選擇? 【溫悅的回答(19票)】: 無論如何分析,從什麼「發展機會」、「公司實力」、「薪酬福利」等各個方面通通都分析一遍,繞了一大圈,最後我認為還是只有這麼一個結論最靠譜:哪兒給錢多往哪兒去。 個人意見而已,有人問過我,我也自己思考過,這個問題很複雜,但如果你不想太傷腦筋的話,那麼,對於國...