Java基础(一)

182 阅读3分钟

本文已参与「新人创作礼」活动,一起开启掘金创作之路。

1、Java概述

1.1、Java特点

  1. 简单易学、有丰富的类库。
  2. 面向对象(Java最重要的特性,让程序耦合度更低,内聚性更高)-- 封装、继承、多态。
  3. 平台无关性(Java虚拟机JVM是跨平台的根本)。
  4. 可靠安全。
  5. 支持多线程。

1.2、JVM

JVM是Java的虚拟机,是运行Java字节码的虚拟机,JVM根据不同系统的特定实现,目的是使用相同的字节码,它们都会给出相同的结果。 一次编译,随处可运行。

1、什么叫字节码?

在Java中,虚拟机JVM可以理解的代码叫做字节码(即扩展名为.class的文件)它不面向任何特定的处理器,只面向虚拟机。

2、采用的字节码的好处?

Java通过字节码的方式,可以在一定的程度上解决了传统解释型语言执行效率低的问题,但同时又保留了解释型语言可移植的特点。

3、程序从源码到运行分为3步

编写、编译、运行

.java文件(源代码)-> JDK中的javac编译 -> .class文件(JVM可理解的Java字节)-> JVM -> 机器可执行的二进制机器码

1.3、JDK和JRE

1、JDK

JDK(Java Development Kit) 成为Java的开发包或者Java开发工具。它是一个功能齐全的Java SDK。它拥有JRE所拥有的一切,还有编译器(javac)、工具(javadoc 和 java调试器(jdb) )、Java运行环境(Java Runtime Environment),它能够创建和编译程序。

2、JRE

JRE是Java运行时的环境,它是运行已编译Java程序所需要的所有内容的集合,包括Java虚拟机(JVM),Java类库,Java命令和其他的一些基础构件,但是不能创建新的程序。

3、区别总结

JRE是一个运行环境,JDK是一个开发环境,因此写Java程序的时候需要JDK,而运行Java程序的时候就需要JRE,而JDK里面包含了JRE,因此只要安装了JDK,就可以编辑Java程序,也可以正常运行Java程序。如果只运行普通的Java程序,则无需安装JDK,只需要安装JRE即可。

有时,我们不需要在计算机上进行Java开发,仍然需要安装JDK,例如:如果使用JSP部署Web应用程序,那么从技术上来讲,只需要再应用程序服务器中运行Java程序,那为什么要JDK?因为应用程序服务器会将JSP转换为Java servlet,并且需要使用JDK来编译servlet。

1.4、Java和C++的区别?

  1. 都是面向对象的语言,都支持封装、继承和多态。
  2. Java不提供指针来直接访问内存,程序内存更加安全。
  3. Java的类是单继承的,C++支持多重继承,虽然Java的类不可以多继承,但是接口可以多继承。
  4. Java有自动内存管理机制,不需要程序员手动释放无用的内存。
  5. 在C语言中,字符串和字符数组最后都会有一个额外的字符'\0'来表示结束,但是,Java语言中没有结束符这个概念。

1.5、import java和javax有什么区别?

一开始JavaAPI所需要的包是java开头的包,javax当时只是扩展API包来使用,然而随着时间的推移,javax逐渐地扩展为Java API的组成部分,但是将扩展从javax包移到java包确实麻烦,会破坏现有的代码,最后将javax包成为标准API的一部分。实际上java和javax没有区别。