1.基础常识
软件:即一系列按照特定顺序组织的计算机数据和指令的集合。分为:系统软件 和 应用软件
系统软件:windows , mac os , linux ,unix,android,ios,…
应用软件:word ,ppt,画图板,…
人机交互方式: 图形化界面 vs 命令行方式
应用程序 = 算法 + 数据结构
常用DOS命令:
目录 : 就是文件夹, 作用是管理若干文件, 若干子目录.
C:\Users\pauli>_ 当前目录 : 也称为工作目录. \用于标识 父子关系.
dir => directory, 作用是列出当前目录中的所有内容, 包括子文件和子目录
cd => change directory, 作用是改变当前工作目录.
md => make directory, 作用是在当前目录下创建子目录
md aa bb cc 11 22, 后面的称为命令行参数(parameter, argument), 作用是给命令传递数据
切换盘符 :
目标盘符: , 比如 d:
. 目录代表当前目录
…目录代表的是当前目录的父目录.
cd \ 直接切换到根目录
cd MyWork\javaSE\day01
MyWork\javaSE\day01
称为路径
// 注释
路径(path) : 一条路, 路的终点是某个文件或目录.
.\MyWork\javaSE\day01
这样的路径称为相对路径, 相对于当前目录而言
绝对路径 : 以根目录为开始的路径
从上面的目录直接回到根目录, 不能用 cd , cd d:\
cd …/…/…/…
cd /
命令 : 让OS做一些事情
1) 内部命令 : OS内置的命令
2) 外部命令 : 硬盘上的可执行文件, 必须让OS知道这个文件在哪里.
外部命令强烈地依赖系统变量path
2.计算机语言的发展迭代史
第一代:机器语言
第二代:汇编语言
第三代:高级语言
面向过程:C,Pascal、Fortran
第四代, Java. .Net, 面向VM.
面向对象:Java,JS,Python,Scala,…
3.Java语言版本迭代概述
1991年 Green项目,开发语言最初命名为Oak (橡树)
1994年,开发组意识到Oak 非常适合于互联网
1996年,发布JDK 1.0,约8.3万个网页应用Java技术来制作
1997年,发布JDK 1.1,JavaOne会议召开,创当时全球同类会议规模之最
1998年,发布JDK 1.2,同年发布企业平台J2EE
1999年,Java分成J2SE、J2EE和J2ME,JSP/Servlet技术诞生
2004年,发布里程碑式版本:JDK 1.5,为突出此版本的重要性,更名为JDK 5.0
2005年,J2SE -> JavaSE,J2EE -> JavaEE,J2ME -> JavaME
2009年,Oracle公司收购SUN,交易价格74亿美元
2011年,发布JDK 7.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
4.Java语言应用的领域:
Java Web开发:后台开发
大数据开发:
Android应用程序开发:客户端开发
5.Java语言的特点
面向对象性:
两个要素:类、对象
三个特征:封装、继承、多态
健壮性:① 去除了C语言中的指针 ②自动的垃圾回收机制 -->仍然会出现内存溢出、内存泄漏
跨平台型:write once,run anywhere:一次编译,到处运行
功劳归功于:JVM
java 语言的主要特性
- 简单 : 相对于c++
- 面向对象 : 关注的是具有功能的对象
- 分布式 : 基于网络多主机协作
- 健壮 : 强类型, 异常处理, GC自动收集, 指针(pointer)的安全化->引用(reference)
- 安全 : 所有的.class都必须经过ClassLoader的检查
- 跨平台 : JVM有不同平台的版本.
- 性能好 : java是编译型语言
- 多线程 : 最大化利用CPU, 多任务, 高吞吐量.
第一个程序
步骤 :
- 写源文件, 使用文本编辑器
在D:/Mywork/javase/day01目录下新建文本文件. 起名Hello.java
右击这个文件用NotePad++打开编辑
- 编译源文件, 生成可执行的.class文件
启动命令行控制台, win+r=>cmd
切换工作目录到 d:/mywork/javase/day01
执行编译命令 : javac Hello.java
通过dir命令, 确认生成的.class文件
- 执行程序, 需要JVM
仍然还是在刚才的命令行中, 执行java Hello
源文件编码 : 必须是ANSI
菜单 : 格式 => 转为ANS
java程序的结构
一个源文件中
类1 {
方法1 {
语句1;
语句2;
}
方法2 {
语句1;
语句2;
}
}
类2 {}
类3{}
任何对于源程序的修改一定要先保存文件, 再重新编译.
主类 : 包含有主方法的类就是主类
公共类 : 被public修饰的类, 公共类必须和源文件名一致
非公共类 : 随便
发生了什么???
java World
-
java JVM自动创建出来
-
再根据后面的类名(主类), 加载主类.class文件, 再找到主类中的入口方法, 执行入口方法
-
方法执行结束后, JVM销毁
程序小结
- Java源文件以“java”为扩展名。源文件的基本组成部分是类(class),如本类中的HelloWorld类。
- 一个源文件中最多只能有一个public类。其它类的个数不限,如果源文件包含一个public类,则文件名必须按该类名命名。
- Java应用程序的执行入口是main()方法。它有固定的书写格式:public static void main(String[] args) {…}
- Java语言严格区分大小写。
- Java方法由一条条语句构成,每个语句以“;”结束。
- 大括号都是成对出现的,缺一不可。
NotePad++快捷键
shift + tab 把选中的内容整体左移
tab 整体右移, 或者加入一个缩进
ctrl + s 保存
ctrl + c 复制
ctrl + v 粘贴
ctrl + x 剪切
ctrl + a 全选
ctrl + d 快速复制当前行
ctrl + l 快速删除当前行
标识符 : 用于标识某个东西的名字
命名规则 : 必须遵守
- 组成 : 52个字母, 0~9, _和 , ( ‘ ‘ 和 , (`_`和 ,(‘‘和不要使用)
- 数字不可以开头, 比如9A就是错误的名字, A9是正确的名字
- 大小写敏感
- 不可以直接使用关键字和保留字, 但是可以包含关键字 class2
- 长度:65535字节
- 不能包含空格
命名规范 : 最好遵守
- 包名 : 全部小写. com.abc.test
- 类名 : 首字母大写, 后面的单词首字母也大写, 其他都小写. MyClassName
- 方法名变量名 : 首字母小写, 后面的单词首字母也大写. myVariableName
- 常量名 : 全部大写, 单词之间用_隔开. MY_CONST_NAME
注意点:
在起名字时,为了提高阅读性,要尽量意义,“见名知意”。