一个非常好的问题。Java是一门完整的开发语言,使用场景非常广泛,Web开发、PC程序开发、嵌入式开发,等等。
一,UI界面开发不同1)Java Swing
现在Java开发基本上都是Web服务,提供REST接口给前端页面调用。其实Java有一个很好用的UI界面开发库。Swing是GUI(图形用户界面)开发工具包,包括容器JFrame、组件JBox, JPanel和布局BorderLayout等。
2)Android Activity
Android界面通过Activity实现,是用户操作入口,接收指令。Activity之间通过Intent进行通信,调用服务实现处理逻辑。
二,业务逻辑开发相同实现业务逻辑的代码,从开发语言来讲两者没有大的区别,面向对象编程、数据封装、类和实例,只是针对不同的业务场景做不同的事情。比如Java开发Web服务时常使用MySQL数据库、Redis缓存、Quartz定时任务,Android开发时则使用SQLite、本地文件缓存等方式。
三,其它模块Android四大组件有Activity,Service,Content Provider,Broadcast Receiver。以Android Service后台服务为例,可以理解成多了一层Android系统上的封装,实现部分还是类似甚至一样的,多线程、定时任务调度、数据共享,等等。
我是工作多年的Web应用架构师,欢迎关注我,了解更多IT专业知识。