JAVA程序概述

任何程序语言其实只需要学习三个东西:
1、数据输入
2、数据处理
3、数据输出
JAVA是一个非常受争议的语言,问题多热度当然也高,使用TOP3的程序。
高级语言,说白了就是写给人看的,对于机器来说95%代码量是无效数据,现在硬件发展迅速,大家不在乎那点存储空间和处理速度了。可读性和可维护性反而更加重要,所以JAVA不会被淘汰,除非政治因素(中美贸易战,随着oracle的收购和收费,看到有些玩家再转go或python)。
简单回顾下JAVA基础,从认识JAVA可似开始go->

JAVA发展背后故事有兴趣去百度吧,总之是比较有趣,随着web的发展,死而复生,如火如荼。
记录几个特性:

简单性

简单是因为语言自身对底层做了比较多的封装,也隐藏了C比较让人难以理解的指针,使用起来不能再舒服了。

面向对象

万物皆对象,这个问题处理从流程到模块化的思想转换。
问题就是,一堆垃圾代码来描述对象,对于问题处理不再单刀直入,干净利落了。
好处就是,对象是万能的,像积木,可以组装,便于维护。

网络技能

网络技术的出现是进入新纪元的标志,第二世界的版图完全超越了现实世界,离开网络世界的商业模式走不远。
所以网络技能是目前IT技术的核心技术。

健壮性

指针隐藏了,各种校验机制健全了,程序自然越来越健壮。
应用程序是架设在OS上的,需要调用CUP等指令,操作内存等资源。这些东西,不需要我们手工操作,对于各种版本OS指令,内存空间操作的冲突基本都规避了。

安全性

架构决定安全

体系结构中立

JVM真心是个伟大的发明,一直玩JAVA没感觉到他的优势,自从接触了C++和Python才知道他的重要。
当你面对各种版本的OS引发的适配问题,难以解决时,你才知道JAVA帮你做了好多好多。
就像用纯JAVASCRIPT写前端动作层,面对用户各种奇葩浏览器的问题投诉时,你才知道jquery等前端框架的重要性。
专业的人做专业的事情,专业的模块解决专业的问题,你专注于业务逻辑,才是做好的生产模式。
缺陷:离底层越来越远,让我们变成了一头猪。
技术来自国外,他们随随便便可以发明个操作系统或者编程语言,GO和Linux就是这么来的,因为人家理解核心,我们都停留在别人提供的技术上应用。Σ( ° △ °|||)︴
对于华为的制裁,和华为的反抗,充分说明了问题,但是华为IT停留在JAVA8一下,虽然封装了自己的业务框架,但是没有自己的开发语言。

可移植性

还是因为JVM,从31位进入64位毫无违和感,各种数据类型都是指定的内存大小,在JVM内存空间中管理。
C可就不行了。所以这是JAVA流弊的一点,windows上能玩好,一样可以在Linux玩的转。

解释型

在这里插入图片描述
十几年前可能很痛苦,那个时代的硬件导致JAVA这种模式会很慢,那个时候内存CPU性能都很差。
写个JAVA代码然后编译成CLASS解释器字节码,发送指令给CPU会明显延时等待。
现在不同了,现在开发工具,可能会占用2G内存,20%CPU,但是速度非常快。

高性能

预处理,字节码到机器码,这些性能都是非常高的。虽然我们写的是java文件,但是发布的四编译后的class文件。虽然不能像汇编那样,更接近底层,但是目前解释器的性能已经非常高了。

多线程

新型语言当然更强,天生有网络编程能力,并发能力,云计算和面向AI的能力。
但是JAVA也会慢慢更加适配,更何况JAVA本身也具有多线程,只不过新型语言,多了更多模块适配AI OS的能力。
JAVA把多线程的实现交给了底层的操作系统或者线程库来完成。

动态性

这个东西是类加载器的 机制决定了,不仅可以玩内部类,本地类,还能加载外部资源,Internet远程资源。
总之,只要有对象加载到内存,就可以使用。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值