初识Java
JAVA发展简史
Java 中jdk从1.0版本开始发展,目前已经更新到了jdk11,从jdk1.7开始也称为jdk7.0,jdk8.0....
Java技术体系平台
Java SE(Java Standard Edition)标准版
支持面向桌面级应用(如Windows下的应用程序,类似QQ、百度网盘)的Java平台,提供了完整的Java核心API,此版本之前也称为J2SE
Java EE(Java Enterprise Edition)企业版
是为开发企业环境下的应用程序提供的一套解决方案。该技术体系包括的技术如:Servlet、Jsp等,主要针对于Web应用程序开发。版本以前也称为J2EE
Java ME(Java Micro Edition)小型版
支持Java程序运行在移动端上的平台,对Java ApI有所精简,并加入了针对移动端的 支持,此版本以前也称为J2ME
Java Card
支持一些Java小程序(Applets)运行在小内存设备(如智能卡)上的平台
Java语言的特点
-
面向对象性
- 两个基本概念:类、对象
- 三大特性:封装、继承、多态
-
健壮性
吸收了C/C++语言的优点,但去掉了影响程序健壮性的部分(如指针、内存的申请与释放等),提供了一个相对安全的内存管理和访问机制
-
跨平台性
通过Java语言编写的应用程序在不同的系统平台上都可以运行,即“Write once, Run Anywhere”
原理:实际上是由Java虚拟机JVM(Java Virtual Machine)来负责Java程序在系统中的运行,只要在需要运行Java应用程序的操作系统上安装JVM就可以实现Java程序的跨平台应用
Java两种核心机制
-
Java虚拟机JVM(Java Virtal Machine)
JVM是一个虚拟的计算机,具有指令集并使用不同的存储区域。负责执行指令,管理数据、内存、寄存器。
对于不同的平台,有不同的虚拟机,只有在平台上安装了JVM虚拟机,Java程序才可以在该平台上运行。
Java虚拟机机制屏蔽了底层运行平台的差别,实现了“一次编译,到处运行”
-
垃圾收集机制(Garbage Collection)
不再使用的内存空间自动回收,在JVM空闲时,检查并释放那些可被释放的存储空间
注意:即使有垃圾回收机制,Java程序依然存在内存泄漏和内存溢出的问题
JDK&JRE
-
JDK(Java Development Kit) Java开发工具包
JDK包含了Java的开发工具,也包括JRE
-
JRE(Java Runtime Environment)Java运行环境
JRE包括Java虚拟机JVM和Java程序所需的核心类库
-
JDK、JRE、JVM关系
JDK = JRE + 开发工具(如javac.exe编译工具,jar.exe打包工具等)
JRE = JVM + JavaSE标准类库
注释(comment)
用于解释说明程序中代码含义的文字,Java中的注释类型:
✏ 单行注释
//注释文字
✏ 多行注释
/*
多行注释1
多行注释2
......
*/
注意:
∝ 对于单行和多行注释,被注释的文字不会被JVM解释执行
∝ 多行注释里面不允许有多行注释嵌套
✏ 文档注释(java特有)
/**
@author 指定java程序的作者
@version 指定源文件的版本
...
*/
注释内容可以被JDK提供的工具javadoc所解析,生成一套以网页文件形式体现的说明文档
良好的编程风格
-
正确的注释和注释风格
- 使用文档注释来注释整个类或整个方法
- 如果注释方法中的某一个步骤,使用单行或多行注释
-
正确的缩进和空白
- 使用一次tab操作,实现缩进
- 运算符两边习惯性各加一个空格。比如:2 + 4 * 5
-
块的风格
------------------------------------------- 行尾风格: public class HelloWorld{ public static void main(String[] args){ System.out.println("Hello World!") } } ------------------------------------------- 次行风格: public class HelloWorld { public static void main(String[] args) { System.out.println("Hello World!") } } ------------------------------------------
➥ Java三大基本特征:封装性、继承性、多态性
➥ Java五大成员:属性、方法、构造器、代码块、内部类
本博客与CSDN博客༺ཌ༈君☠纤༈ད༻同步发布