介绍
本文旨在针对JAVA的基本组成输出自己的粗浅理解。如有不当之处,欢迎各位指正。
上图是JAVA的基本组成。
在初学JAVA时,我们一般会在main方法中写一句打印hello world
的代码;这用到了什么呢?
答案是JVM
和类,JVM
为核心的Jre
保证了代码可以运行;类为main方法提供了容身之所,另外System.out.printf("hello world'')
;用到的是System类的方法。
那接着就开始高级一点了,
- 我们想写一些比较复杂的逻辑,那就需要流程控制;
- 我们想让代码健壮一些,意味着需要提前对异常进行预防,那就需要异常处理;
- 我们想让一个集合类里只存放自己想要的类型,防止取出来时类型转换失败,那就需要泛型;
- 我们想读取磁盘文件或者写入数据到磁盘文件,那就需要流;
- 我们想告诉编译器某个方法是否过期或者在某个方法是否是重写的,那就需要注解;
- 我们想限制外部对某个类属性的访问,就可以利用好权限关键字(封装);想复用某个类的方法和属性,就可以利用继承;想规范一组类的行为,就可以利用接口。
- 如果想快速完成一件事,意味着需要分工在同时间完成,那就需要多线程;
对于单机而言,我们的普通需求其实基本可以通过上面的几个功能来实现了。那么,是什么促进了围绕JAVA的一系列技术的出现呢?
我的理解是交互。
交互指的是JAVA代码与外部工具的交互或与另一个不在同一载体的JAVA代码的交互。具体一点的例子就是
外部工具:浏览器、数据库等
不在同一载体:微服务间的模块调用等
JAVA是强大的,但不是尽善尽美的。我们不可能啥都用JAVA写,JAVA擅长的领域在后端。至于前端,数据库之类的我们不适合,也没法写。因此,JAVA需要满足因为交互产生的一系列需求。
交互
先写到这,后面有灵感了再写,想到要扯一堆就犯困。。