初始JAVA必备知识

来源:互联网 发布:sql sa登陆 18456 编辑:程序博客网 时间:2024/05/17 09:05
  1. 初始JAVA
    Java是一种广泛使用的计算机编程语言,拥有跨平台、面向对象、泛型编程的特性,广泛应用于企业级Web应用开发和移动应用开发。
    任职于太阳微系统的詹姆斯·高斯林等人于1990年代初开发Java语言的雏形,最初被命名为Oak,目标设置在家用电器等小型系统的程序语言,应用在电视机、电话、闹钟、烤面包机等家用电器的控制和通信。由于这些智能化家电的市场需求没有预期的高,Sun公司放弃了该项计划。随着1990年代互联网的发展,Sun公司看见Oak在互联网上应用的前景,于是改造了Oak,于1995年5月以Java的名称正式发布。Java伴随着互联网的迅猛发展而发展,逐渐成为重要的网络编程语言。
    Java编程语言的风格十分接近C++语言。继承了C++语言面向对象技术的核心,Java舍弃了C++语言中容易引起错误的指针,改以引用取代,同时移除原C++与原来运算符重载,也移除多重继承特性,改用接口取代,增加垃圾回收器功能。在Java SE 1.5版本中引入了泛型编程、类型安全的枚举、不定长参数和自动装/拆箱特性。太阳微系统对Java语言的解释是:“Java编程语言是个简单、面向对象、分布式、解释性、健壮、安全与系统无关、可移植、高性能、多线程和动态的语言”
    移动操作系统 Android 大部分的代码采用Java 编程语言编程(2017谷歌IO大会上将KotLin设为Android一级开发语言)——摘录自维基百科
    由此JAVA有以下特点:
     1、简单易用
      2、面向对象
      3、跨平台,可移植
      4、多线程
      5、健壮性
      6、安全性
      7、动态
      8、分布式
      9、高性能
      10、结构独立
    2.Java近况
    在流行几年之后,Java在浏览器中的地位被逐步侵蚀。它在简单交互性动画方面的用途已经完全被Adobe公司的Flash排挤,2005年Java倾向只被用于雅虎游戏那样的更为复杂的应用程序。Java同时遭受到来自微软的反对,他们决定在新版本的Internet Explorer和Windows中不再附带Java平台。
    与此相反。在万维网的服务器端和手持设备上,Java变得更加流行。很多网站在后端使用JSP和其他的Java技术。
    在桌面系统上,独立的Java程序还是相对少见,这是因为Java平台的运行开销较大,而许多人的电脑上没有安装Java,由于网络带宽在以前较小,下载Java曾经是个耗时的事情。但是随着计算机计算能力、网络带宽在10年中获取了很大的进步,同时虚拟机和编译器的质量得到了提高,许多应用程序得到了广泛的使用,包括:
    开源软件:
    NetBeans和Eclipse等软件开发工具
    Android操作系统
    JEdit
    Azureus BitTorrent客户端。
    JNode操作系统
    Apache软件基金会的Ant、Derby、Hadoop、Jakarta、POI和Tomcat
    JBoss和GlassFish应用服务器
    商业软件:
    EIOffice(永中Office)
    Minecraft
    纯Java 3D游戏合金战士Chrome
    IBM Websphere、ColdFusion和WebLogic
    IntelliJ IDEA
    3.Java平台的两个主要组件:
    Java虚拟机(Java Virual Machine,简称JVM);
    Java应用程序编程接口(Java Aplication Programming Interface,简称JavaAPI);
    Java平台按应用领域分为三个版本:

      JavaSE(Java Standard Edition),即Java标准版,主要用于桌面应用开发;(同时作为JavaEE的基础)

      JavaEE(Java Enterprise Edition),即Java企业版,重点定位于企业级别的服务器端分布式软件系统(同时这也是JAVA在市场上占比最高的一个版本);

      JavaME(Java Micro Edition),即Java微型版,主要应用于嵌入式设备的应用开发;(属于JavaSE的一个子集,但有其特殊的类库支持)

      JavaAPI中是一些已经完成的软件组件,其提供了Java编程语言的核心功能,其提供涵盖了数据库、多媒体、网络、电话、加密、AWT/Swing、脚本、Web服务、XML、编译器、JMX等领域的支持;
    4.开发基础必备知识:
    1)计算机所能识别的只有0101组成的二进制文件,而通过编写二进制代码来开发应用对程序员来说太过痛苦了,因此后面出现了例如汇编语言这样的符号语言,但也因为太贴近与计算机,学习成本大,代码晦涩难懂,随后在市场需求下出现了所谓的高级语言,例如我们熟知的C/C++,Java,Python,Ruby…,这些高级语言的诞生大大降低了开发的成本,降低了学习的成本,但随之而来的就是高级语言源代码——>二进制机器代码之间的转化。
    2)为解决这一问题,JAVA虚拟机(JVM)体现了强大功能:

    首先JAVA语言编写的是以.java结尾的源文件.java源文件通过javac命令编译后生成.class的字节码文件Java字节码(类文件*.class)通过类加载器(Class Loader)为程序的执行加载所有需要的全部类。类加载的过程是,先加载加载启动类库,在加载扩展类库,最后加载自定义类库。避免了一些非法代码的执行,提高了代码执行的安全性。通过字节码校验器对加载的字节码进行校验,测试代码段格式,并进行语句和语法的规则检查;确保代码符合JVM规范并且不破坏系统的完整性。通过字节码校验的代码被送到即时编译器JIT(Just in time complier)翻译成机器代码,每段代码执行前先将其编译为本地机器码;本地机器码执行结果在操作系统上显示不同的操作系统上的虚拟机负责将相同的字节码转变成本地的机器码,Java程序运行在虚拟机上,隔离具体的操作系统和硬件平台,从而实现Java程序的跨平台性同时由于JVM的存在,初学时我们只需要关系前面两个步骤,而在在集成开发环境中如eclipse,myeclipse,idea,中我们甚至无需关系程序的编译过程,但是这对于学习JAVA来说是弊大于利,建议初学者们在初时学习java时不要使用IDE,在记事本开发就足矣。
原创粉丝点击