学习java的第一天
计算机之父 冯·诺依曼
从20世纪初,物理学和电子学科学家们就在争论制造可以进行数值计算的机器应该采用什么样的结构。人们被十进制这个人类习惯的计数方法所困扰。所以,那时以研制模拟计算机的呼声更为响亮和有力。20世纪30年代中期,美国科学家冯诺依曼大胆的提出,抛弃十进制,采用二进制作为数字计算机的数制基础。同时,他还说预先编制计算程序,然后由计算机来按照人们事前制定的计算顺序来执行数值计算工作。
冯诺依曼理论的要点是:数字计算机的数制采用二进制;计算机应该按照程序顺序执行。
人们把冯诺依曼的这个理论称为冯诺依曼体系结构。从ENIAC(ENIAC并不是冯诺依曼体系)到当前最先进的计算机都采用的是冯诺依曼体系结构。所以冯诺依曼是当之无愧的数字计算机之父。
根据冯诺依曼体系结构构成的计算机,必须具有如下功能:
把需要的程序和数据送至计算机中。
必须具有长期记忆程序、数据、中间结果及最终运算结果的能力。
能够完成各种算术、逻辑运算和数据传送等数据加工处理的能力。
能够根据需要控制程序走向,并能根据指令控制机器的各部件协调操作。
能够按照要求将处理结果输出给用户。
为了完成上述的功能,计算机必须具备五大基本组成部件,包括:
输入数据和程序的输入设备
记忆程序和数据的存储器
完成数据加工处理的运算器
控制程序执行的控制器
输出处理结果的输出设备
冯诺依曼的驾驶水平很烂,经常发生事故,有一次他撞坏了车头,在警局里解释道:“我正在路上正常驾驶,右方窗外的树正在以60英里每小时的速度从我车旁穿过,突然,一棵树站在了我的车前,咚!”
java的特性和优势
-
简单性
-
面向对象
-
可移植性
-
可性能性
-
高性能
-
分布式(分布式更多的一个概念,是为了解决单个物理服务器容量和性能瓶颈问题而采用的优化手段。该领域需要解决的问题极多,在不同的技术层面上,又包括:分布式文件系统、分布式缓存、分布式数据库、分布式计算等,一些名词如Hadoop、zookeeper、MQ等都跟分布式有关。从理念上讲,分布式的实现有两种形式:
水平扩展:当一台机器扛不住流量时,就通过添加机器的方式,将流量平分到所有服务器上,所有机器都可以提供相当的服务;
垂直拆分:前端有多种查询需求时,一台机器扛不住,可以将不同的需求分发到不同的机器上,比如A机器处理余票查询的请求,B机器处理支付的请求。)
-
动态性(Java 动态特性是其面向对象设计方法的扩展,允许程序动态地装入运行过程中所需的类)
-
多线程(所谓多线程是指一个进程在执行过程中可以产生多个更小的程序单元,这些更小的单元称为线程,这些线程可以同时存在,同时运行,一个进程可能包含多个同时执行的线程。)
-
安全性
-
健壮性
Java三大版本
-
JavaSe:标准版(桌面程序,控制台开发.......)
-
JavaMe:嵌入式开发(手机、家电......)
-
JavaEE:E企业级开发(web端,服务器开发......)
JDK、JRE、JVM
-
JDK: Java Development Kit(Java开发者工具)
-
JRE: Java runtime Environment(Java运行环境)
-
JVM:Java virtual machine(Java虚拟机)