一個非常好的問題。Java是一門完整的開發語言,使用場景非常廣泛,Web開發、PC程序開發、嵌入式開發,等等。
一,UI界面開發不同
現在Java開發基本上都是Web服務,提供REST接口給前端頁面調用。其實Java有一個很好用的UI界面開發庫。Swing是GUI(圖形用戶界面)開發工具包,包括容器JFrame、組件JBox,JPanel和布局BorderLayout等。
Android界面通過Activity實現,是用戶操作入口,接收指令。Activity之間通過Intent進行通信,調用服務實現處理邏輯。
二,業務邏輯開發相同
實現業務邏輯的代碼,從開發語言來講兩者沒有大的區別,面向對象編程、數據封裝、類和實例,只是針對不同的業務場景做不同的事情。比如Java開發Web服務時常使用MySQL數據庫、Redis緩存、Quartz定時任務,Android開發時則使用SQLite、本地文件緩存等方式。
三,其它模塊
Android四大組件有Activity,Service,ContentProvider,BroadcastReceiver。以AndroidService后臺服務為例,可以理解成多了一層Android系統上的封裝,實現部分還是類似甚至一樣的,多線程、定時任務調度、數據共享,等等。
我是工作多年的Web應用架構師,我,了解更多IT專業知識。