Java简单介绍及Java生态

  

核心思想:面向对象编程,继承,高兼容(代码移植性强),避免重复造轮子,开源。

  

Java的起源和发展细节就不介绍了,Java是高级开发语言,类似c++,语法和c++有很多类似之处,但是做了些优化,主要是在编码写程序上的优化,避免内存泄露,避免指针复杂错用等,Java中不可以直接操作指针,被隐藏。

  

Java程序从编写到运行

  

编写出正确的Java代码. Java文件,在B通过工具编译成类文件. class文件——比;C运行在系统中jvm的虚拟机加载类文件——比;D jvm读取类文件中主要的方法开始一个系统进程——比;E完成Java程序开始运行。

  

在D过程中有一个过程——比;jvm虚拟机加载类文件后,将. class翻译成机器码(类似系统底指令)因系统而异,同一个类文件,在窗口环境翻译出的机器码与Linux环境翻译出的机器码是不同的:代码移植性强的根本(jvm虚拟机)

  

Java中的成员:jvm虚拟机,jre, jdk

  

jvm虚拟机

  

Java代码的加载器,编译器,引擎负载加载(读取). class文件

  

上文中有提到虚拟机,将类文件翻译成系统能识别的机器码,因此Java jvm是程序的必要环节,也说明不同的系统,jvm虚拟机版本是不同的。

  

jvm虚拟机由C语言和汇编语言编写构成,是Java程序运行的根本,Java程序运行首先需要运行jvm。

  

网络解释:JVM (JavaVirtualMachine, Java虚拟机)是JRE的一部分。它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的.JVM有自己完善的硬件架构,如处理器,堆栈,寄存器等,还具有相应的指令系统. Java语言最重要的特点就是跨平台运行。使用JVM就是为了支持与操作系统无关,实现跨平台。

  

jre (Java运行时环境)

  

Java程序运行环境,其中包含了jvm虚拟机. Java程序需要运行时需要的环境,既jre。

  jdk (Java开发工具包)

  

Java语言的软件开发工具包(SDK) Java软件开发环境,程序员编写Java程序时需要的工具。与jre的区别包含jre,多了一些编译工具,比如将。java文件编译成. class文件

  

Java开发中常用的技术思想,框架,工具

  

技术思想

  

面向对象

  

Java中任何事物都可以看做对象,任何事物从对象角度出发,解决问题从对象角度出发。

  

继承   

Java中对象可以被继承,将可以使用被继承对象所有公共属性,公共方法。继承者为子类,被继承者为父类,在Java中一切对象的顶级超类是对象

  

多态   

多态是同一个行为具有多个不同表现形式或形态的能力。

  

多态就是同一个接口,使用不同的实例而执行不同操作。具体涉及到java中接口的知识。

  

多线程   

一个线程处理一个事物,多个线程在同事间内执行各自的事物,互不影响。

  

高并发   

在有限的硬件资源情况下,短时间内大量线程启动运行并处理事物。

  

长连接   

在与可通信端频繁通信交换数据时需要用到的技术,如数据库连接一般是长连接;特点:连接数较少,通讯频繁。想对的短连接:连接数多,同一连接短时间内连续通讯较少。

  nio

  

非阻塞io,解决网络数据传输阻塞问题,当两端通信有连接时,不一定马上接受数据,这样会引起线程等待发送数据造成的阻塞,nio提供缓冲区,有数据的时候通过通道将通信数据写入缓冲区,没有数据则先执行别的线程,避免阻塞。

  

框架   春天

  

SpringFrameWork,春天。核心是控制反转奥委会(控制反转也称依赖注入)和面向切面编程AOP(面向方面的编程)java中非常流行的技术框架与框架设计思想。秉承高内聚,低耦合的思想。没有侵略性,对所有别的技术框架能够很好的兼容。(避免重复造轮子的一种具体实现)

  springmvc

  

Spring MVC属于SpringFrameWork的后续产品,已经融合在Spring Web Flow里面.Spring框架提供了构建网络应用程序的全功能MVC模块(摘自百度).web框架,前端控制层访问框架。

  

mybatis   

轻量级持久层框架,持久层开发较高效框架,在迭×××发,网络项目中使用较多。

  

MyBatis本是apache的一个开源项目iBatis, 2010年这个项目由apache软件基金会迁移到了谷歌代码,并且改名为MyBatis .2013年11月迁移到Github.MyBatis是一款优秀的持久层框架,它支持定制化SQL,存储过程以及高级映射.MyBatis避免了几乎所有的JDBC代码和手动设置参数以及获取结果集.MyBatis可以使用简单的XML或注解来配置和映射原生信息,将接口和Java的pojo(普通普通的Java对象,普通的Java对象)映射成数据库中的记录。(摘自百度)

Java简单介绍及Java生态