美文网首页
# [Java学习]1.Java基础【学习笔记】

# [Java学习]1.Java基础【学习笔记】

作者: 01f271d45f32 | 来源:发表于2018-09-18 13:51 被阅读0次

    [Java学习]1.Java基础【学习笔记】

    书籍 《Java核心技术》、《Java核心技术精讲》




    2018-09-18

    1.Java基础

    • 三个分支
    • Java SE:Java语言核心的类。如数据库连接、接口定义、数据结构、输入/输出、网络编程等。
    • Java EE:包含Java SE ,还包含用于企业级应用开发的类,比如EJB、Servlet、JSP、XML、事务控制是现在Java应用的主要方向。
    • Java ME:用于嵌入式开发.
    • Java 3个分支的关系


    • J2EE这样的称呼已经在2005年后抛弃了,而是Java EE
    • Java EE是目前Java应用的主要方向
    • Java SE是整个技术架构的核心


    • Java的重点一直放在嵌入式开发上,到了Android时代,真正实现了Java的嵌入式开发设想。
    语言特性
    1. 简洁有效,省略了C++中难以理解、容易混淆的特性
    2. 可移植性
    3. 面向对象
    4. 解释型
    5. 适合分布式计算:编写Socket通用程序简单,十分适用于CGI脚本开发,JSP、Servlet等手段来构建更丰富的网页。
    6. 拥有较好的性能:(1)源程序编写完成后,先使用伪编译器进行伪编译,将其转换为中间码(字节码)(2)提供了准实时(JIT)编译器,需要更快运行速度时,可以将字节码转换成机器码,然后缓冲下来,速度就会更快。
    7. 健壮、防患于未然:伪编译时,做了早期潜在问题的检查,并且在运行时又做了一些响应的检查
    8. 具有多线程处理能力:多线程处理性能超群,在Java语言中进行多线程处理很简单。
    9. 具有较高的安全性
    10. 是一种动态语言:体现在两方面:(1)可以简单、直观地查询运行时的信息(2)可以将新代码加入到一个正在运行的程序中去。
    11. 中性结构:Java编译器生成的是一种中性的对象文件格式。,伪编译后生成的字节码与计算机体系统无关。

    代码处理过程


    JVM基本原理

    • .java源文件——编译器伪编译成.class文件——JVM虚拟机上运行


    • 因此实际运行程序的不是计算机,而是JVM,这种方式显然不如直接在操作系统上运行要来得快。
    • JVM相当于“翻译”,不同的机器有不同的JVM,可以“翻译”成不同的语言
    • 联想11个特性中的 可移植性、结构中性、具有较高安全性、具有较好性能的4个特性
    JRE与JDK
    • JRE,Java Runtime Environment,包括Java虚拟机、Java核心类库和支持文件,不包括开发工具(编译器、调试器和其他工具)。
      -JDK,JRE+编译器、调试器和其他工具


    Hello World程序

    • 文件后缀必须是*.java(源文件)

    • Java

    • JRE和JDK版本需要一致,否则会出现运行错误

    Hello World程序

    • Java区分大小写,是小写main而不是Main
      类的定义
    • 类是Java中的基本组成元素
    • 所有的Java程序一定要被类所管理
    • 类的定义有两种:
      -public class:类名必须与文件名保持一致,否则程序将无法编译
    • class:类名可以与文件名称不一致但是生成的是class定义的名称
    • 在一个.java程序中可以同时存在多个class的定义,编译之后会分为不同的.class文件
      -类的命名规范:每一个单词首字母大写。

    主方法:

    • 程序的起点,所有的程序代码都有此顺序执行,在Java中主方法有固定格式:
      public static void main(String args[]){}
    • 主方法所在的类为主类

    Path

    • Windows系统不区分大小写,设置Path和PATH没有区别,但是Linux系统是区分大小写的
    • Path路径是操作系统查找操作指令的路径依赖
    • 用户变量和环境变量*的区别:用户变量只针对当前用户,环境变量针对整个系统。系统变量排在环境变量之前,Path路径的先执行。

    CLASSPATH

    • 想要解决在不同路径下访问指定目录类的问题,可以通过配置CLASSPATH来解决。
    • JVM运行时需要通过CLASSPATH加载所需要的类,默认情况下CLASSPATH指向当前目录。


    • 是用来定义类的路径的。作用:使用“java Java类名”时候,搜索Java类的路径。
    • CLASSPATH中的". "是指当前路径
    • 只有早期版本的JDK,才需要设置CLASSPATH路径(1.4以前),之后的就不需要了,但是自行设置也可以。一旦设置了CLASSPATH,就会按该环境变量指定的路径来搜索Java类
    • 可以用 -classpath来指定临时路径

    垃圾回收机制

    • Java:自动回收,垃圾回收(GC)。JRE提供一个后台线程来进行检测和控制。
    • JVM的超级线程会自动释放该内存去。
    • 垃圾回收能自动释放内存空间,减轻编程的负担。这使得Java虚拟机具有两个显著的优点:
    • 垃圾回收机制可以很好地提高编程效率。
    • 垃圾回收机制保护程序的完整性,垃圾回收是Java语言安全性策略的一个重要部分。
    • 垃圾回收要做的两件事:1.发现无用的对象;2.回收被无用对象占用的内存空间,使该空间可被程序再次使用。
    • 但是不可避免的造成了一定的系统负担


    本章小结

    相关文章

      网友评论

          本文标题:# [Java学习]1.Java基础【学习笔记】

          本文链接:https://www.haomeiwen.com/subject/zcyynftx.html