JavaSE语言概述
写在前沿的话:关于兴趣的培养:
首先,你需要去学懂某件事情,然后按照自己的准则去判断自己是否适合继续去学习它。而不是在学习的初始阶段,就用兴趣去作为自己学习与否的标准。
软件开发介绍
软件,即一系列按照特定顺序组织的计算机数据和指令的集合,可分为系统软件和应用软件。
人机交互方式:图像化界面(GUI),命令行方式(CLI)
Algorithms+Data Structures=Programs 算法+数据结构 = 程序
常用的DOS命令
- dir : 列出当前目录下的文件以及文件夹 diractory
- md : 创建目录
- make directory
- rd : 删除目录 remove directory
- cd : 进入指定目录
- cd… : 退回到上一级目录
- cd: 退回到根目录
- del : 删除文件
- exit : 退出 dos 命令行
常用快捷键
- ← →:移动光标
- ↑ ↓:调阅历史操作命令
- Delete和Backspace:删除字符
计算机编程语言介绍
计算机语言:人与计算机交流的方式
第一代语言:机器语言 (二进制代码形式)
第二代语言:汇编语言(助记符表示)
第三代语言:高级语言
- 面向过程编程
- 面向对象编程 (Java跨平台的纯面向对象的语言)
链接: TIOBE.
TIOBE是一个流行编程语言排行。每月更新,排名权重基于世界范围内工程师数量,课程数量和第三方供应商的数量
Java语言发展历史
(简写了 那么长我也记不住)
1991年 Green项目,开发语言最初命名为Oak (橡树)
2004年,发布里程碑式版本:JDK 1.5,为突出此版本的重要性,更名为JDK 5.0
2014年,发布JDK 8.0,是继JDK 5.0以来变化最大的版本
2017年,发布JDK 9.0,最大限度实现模块化
2018年3月,发布JDK 10.0,版本号也称为18.3
2018年9月,发布JDK 11.0,版本号也称为18.9
软件开发适宜用稳定性版本。
Java程序运行机制及运行过程
Java语言的特点
特点一:面向对象
- 两个基本概念:类,对象
- 三大特性:封装,继承,多态
特点二:健壮性
- 吸收了C/C++语言的优点,但去掉了其影响程序健壮性的部分(如指针、内存的申请与释放等),提供了一个相对安全的内存管理和访问机制
特点三:跨平台性
- 跨平台性:通过Java语言编写的应用程序在不同的系统平台上都可以运行。“Write once , Run Anywhere”
- 原理:只要在需要运行 java 应用程序的操作系统上,先安装一个Java虚拟机 (JVM Java Virtual Machine) 即可。由JVM来负责Java程序在该系统中的运行
Java两种核心机制
Java虚拟机 (Java Virtal Machine)
JVM需要花费其他的时间去学习,不在此处做详细介绍,有兴趣可以单独去学习。
- JVM是一个虚拟的计算机,具有指令集并使用不同的存储区域。负责执行指令,管理数据、内存、寄存器。
- 对于不同的平台,有不同的虚拟机。
- 只有某平台提供了对应的java虚拟机,java程序才可在此平台运行
- Java虚拟机机制屏蔽了底层运行平台的差别,实现了"一次编译,到处运行"
总结来说,Java程序通过JVM编译和运行,而JAM在Windows,Linux,Mac上都有适合的版本,所以可以实现"一次编译,到处运行"
垃圾收集机制 (Garbage Collection)
不再使用的内存空间应回收—— 垃圾回收
- 在C/C++等语言中,由程序员负责回收无用内存
- Java语言消除了程序员回收无用内存空间的责任:它提供一种系统级线程跟踪存储空 间的分配情况。并在JVM空闲时,检查并释放那些可被释放的存储空间
- 垃圾回收在Java程序运行过程中自动进行,程序员无法精确控制和干预
- Java程序还会出现内存泄漏和内存溢出问题吗?Yes! 递归调用时,无终止条件,会造成栈溢出。
JDK JRE JVM的关系
JDK(Java Development Kit Java开发工具包) 包含编译工具(javac.exe) 打包工具(jar.exe)。
JRE(Java Runtime Environment Java运行环境)
简单而言,使用JDK的开发工具完成的java程序,交给JRE去运行。
三者之间的关系:
- JDK = JRE + 开发工具集(例如Javac编译工具等)
- JRE = JVM + Java SE标准类库
命令行开发体验-HelloWorld
步骤
- 将Java代码编写到扩展名为 .java的文件中
- 通过 javac 命令对该 java文件进行编译
- 通过java命令对生成的class文件进行运行
public class HelloWorld {
public static void main(String[] args) {
System.out.println("hello World!");
}
}
小结第一个程序
- Java源文件以“java”为扩展名。源文件的基本组成部分是类(class),如 本例中的HelloWorld类
- Java应用程序的执行入口是main()方法。它有固定的书写格式: public static void main(String[] args) {…}
- Java语言严格区分大小写。
- Java方法由一条条语句构成,每个语句以" ; "结束。
- 大括号都是成对出现的,缺一不可。
- 一个源文件中最多只能有一个public类。其它类的个数不限,如果源文件包含一个public类,则文件名必须按该类名命名。
由于命令行过于麻烦,所以我选择使用 Eclipse ,后面再转 IDEA
学习编程最容易犯的错是语法错误。Java要求你必须按照语法规则编写代码。 如果你的程序违反了语法规则,例如:忘记了分号、大括号、引号,或者拼错了单词,java编译器都会报语法错误。尝试着去看懂编译器会报告的错误信息。
注释(Comment)
注释就是用于注解说明解释程序的文字。
Java中的注释类型:
单行注释
格式: //注释文字
多行注释
格式: /* 注释文字 */
注: 对于单行和多行注释,被注释的文字,不会被JVM(java虚拟机)解释执行。
多行注释里面不允许有多行注释嵌套。
文档注释
格式:/** @author 指定java程序的作者
@version 指定源文件的版本
*/
注释的好处:
- 提高了代码的阅读性;调试程序的重要方法。
- 注释是一个程序员必须要具有的良好编程习惯。
- 将自己的思想通过注释先整理出来,再用代码去体现
良好的编程风格
正确的注释和注释风格
- 使用文档注释来注释整个类或整个方法。
- 如果注释方法中的某一个步骤,使用单行或多行注释。
正确的缩进和空白
- 使用一次tab操作,实现缩进
- 运算符两边习惯性各加一个空格。比如:2 + 4 * 5。
块的风格
- Java API 源代码选择了行尾风格
参考文献
链接: B站尚硅谷宋红康Java.