学习文档(1)
Java基础概念与常识
Java语言的特点
- 简单易学(语法简单,上手容易);
- 面向对象(封装,继承,多态);
- 平台无关性( Java 虚拟机实现平台无关性);
- 支持多线程( C++ 语言没有内置的多线程机制,因此必须调用操作系统的多线程功能来进行多线程程序设计,而 Java 语言却提供了多线程支持);
- 可靠性(具备异常处理和自动内存管理机制);
- 安全性(Java 语言本身的设计就提供了多重安全防护机制如访问权限修饰符、限制程序直接访问操作系统资源);
- 高效性(通过 Just In Time 编译器等技术的优化,Java 语言的运行效率还是非常不错的);
- 支持网络编程并且很方便;
- 编译与解释并存;
JVM、JDK、JRE
JVM
Java 虚拟机(Java Virtual Machine, JVM)是运行 Java 字节码的虚拟机。JVM 有针对不同系统的特定实现(Windows,Linux,macOS),目的是使用相同的字节码,它们都会给出相同的结果。字节码和不同系统的 JVM 实现是 Java 语言“一次编译,随处可以运行”的关键所在。
JDK
JDK(Java Development Kit)是一个功能齐全的 Java 开发工具包,供开发者使用,用于创建和编译 Java 程序。它包含了 JRE(Java Runtime Environment),以及编译器 javac 和其他工具,如 javadoc(文档生成器)、jdb(调试器)、jconsole(监控工具)、javap(反编译工具)等。
JRE
JRE 是运行已编译 Java 程序所需的环境,主要包含以下两个部分:
- JVM : 也就是我们上面提到的 Java 虚拟机。
- Java 基础类库(Class Library):一组标准的类库,提供常用的功能和 API(如 I/O 操作、网络通信、数据结构等)。
简单来说,JRE 只包含运行 Java 程序所需的环境和类库,而 JDK 不仅包含 JRE,还包括用于开发和调试 Java 程序的工具。
为什么Java语言“编译与解释并存”
我们将高级编程语言按照程序的执行方式分为两种:
- 编译型:编译型语言会通过编译器将源代码一次性翻译成可被该平台执行的机器码。一般情况下编译语言的执行速度比较快,开发效率比较低。常见的编译性语言有C、C++、GO、Rust等等
- 解释型:解释型语言会通过监视器一句一句的将代码解释为机器代码后再执行。解释型语言开发效率比较快,执行速度比较慢。常见的解释性语言有Python、JavaScript、PHP等等
而 Java 语言既具有编译型语言的特征,也具有解释型语言的特征。因为 Java 程序要经过先编译,后解释两个步骤,由 Java 编写的程序需要先经过编译步骤,生成字节码(.class
文件),这种字节码必须由 Java 解释器来解释执行
标识符和关键字的区别
在我们编写程序的时候,需要大量地为程序、类、变量、方法等取名字,于是就有了 标识符 。简单来说, 标识符就是一个名字
有一些标识符,Java 语言已经赋予了其特殊的含义,只能用于特定的地方,这些特殊的标识符就是 关键字 。简单来说,关键字是被赋予特殊含义的标识符
Java关键字有哪些
分类 | 关键字 | ||||||||
访问控制 | private | protected | public | ||||||
类、方法和变量的修饰符 | abstract | class | extends | final | implement | interface | native | new | static |
synchronized | transient | volatile | enum | strictfp | |||||
程序控制 | break | continue | return | while | if | else | do | for | instanceof |
switch | case | default | assert | ||||||
错误处理 | try | catch | finally | throw | throws | ||||
包相关 | import | package | |||||||
基本类型 | short | int | long | float | double | byte | char | boolean | |
变量引用 | super | this | void | ||||||
保留字 | goto | const |
原文地址:https://blog.csdn.net/cuishujian_2003/article/details/142767809
免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!