一. java 概述
1.1 javase 概述
1.2 程序 program
- 
可以在计算机中执行的代码。 
- 
计算机可以识别的数据和指令的集合。 
1.3 计算机语言发展史
- 
机器语言:计算机可以直接识别的语言(二进制语言) - 
1+2 1010 0001 0010 
- 
优点:计算机可以直接识别,执行的效率高。 
- 
缺点:可读性差,编写门槛很高。 
 
- 
- 
汇编语言: - 
1+2 ADD 0001 0010 
- 
ADD 需要转换为 机器语言 1010. 过程称为汇编。 
 
- 
- 
高级语言: - 
1+2 转换为机器语言: - 
转换方式: - 
使用一个工具:编译器:编译为机器语言。 
- 
使用一个解释工具:解释器:类似于翻译。 
 
- 
 
- 
- 
优点:可读性好,编写门槛低。 
- 
缺点:计算机不能直接识别,需要一个编译或者解释的过程,效率低。 
- 
c、c++、c#、java。 
 
- 
1.4 java 语言发展史
- 
jdk1.2 - 
j2se--java 2 standard edtion (java 2 标准版) 针对客户端开发。针对桌面程序开发的。 
- 
j2me--java 2 mirco edtion (java 2 微型版)手持设备开发 
- 
j2ee--java 2 enterprise edtion (java 2 企业版) 服务器开发。 
 
- 
- 
jdk1.5 - 
j2se--javase 
- 
j2me--javame 
- 
j2ee--javaee 
 
- 
- 
jdk 8.0 和 jdk1.8 
1.5 java 语言的三个版本
- 
j2se--java 2 standard edtion (java 2 标准版) 针对客户端开发。针对桌面程序开发的。 
- 
j2me--java 2 mirco edtion (java 2 微型版)手持设备开发 
- 
j2ee--java 2 enterprise edtion (java 2 企业版) 服务器开发。 
1.6 java 语言的特点
- 
强类型语言(任何数据必须都具有java可以识别的类型) 
- 
基于模板(图纸)的纯粹的面向对象的 
- 
可以实现跨平台(可以在多个平台执行)。 
1.7 java程序的执行机制
- 
先编写java的源代码。(计算机不能识别) 
- 
使用jdk 提供的编译工具 javac.exe 将源代码编译为 字节码文件。(计算机不能识别) 
- 
使用 jdk 提供的 解释器 将 字节码 解释给 计算机执行。 
- 
java 程序先编译、后解释执行。 
1.8 java 和 c 的跨平台原理比较
- 
java的跨平台是通过不同的平台下安装不同的jvm实现的。(知道) 
- 
c 需要多次编译,多次执行。(了解) 
1.9 java的环境搭建和介绍
- 
jdk:java development kit java开发工具包。 - 
java的编译器就被包含在jdk 中。 
- 
jvm 也被包含在jdk 中。 
- 
不同的平台需要安装不同的jdk。 
 
- 
- 
jre:java runtime environment。 java 运行环境。 - 
主要就是jvm。 
- 
解释器 java.exe 作为 jvm的主要成员。 
 
- 
- 
jvm:java virtual machine java 虚拟机。 - 
使用软件实现的一个计算机。 
- 
就有自己的指令集。class 文件中的所有的指令都被包含在jvm的指令集中。 
 
- 
- 
目录介绍: - 
bin:binary 二进制。 - 
javac.exe 编译工具 
- 
java.exe 解释工具。 
 
- 
- 
jre: - 
jdk 包含的一个单独的运行环境 
 
- 
 
- 
1.10 cmd 介绍和使用
- 
cmd:command 命令。 
- 
打开cmd 窗口:window键+R -->输入 cmd 回车即可。 
- 
cmd.exe 介绍: - 
是 microsoft 公司最早的一个操作系统。DOS操作系统 
- 
DOS 操作系统 (disk operation system)磁盘操作系统。所有的对计算机的操作都是通过指令(Command)来完成的。 
- 
cmd.exe 就是使用软件实现的dos 操作系统。 
 
- 
- 
常用的指令: - 
dir:directory 目录。 - 
显示当前目录下的所有的内容。 
 
- 
- 
cls:clear screen - 
清屏的 
 
- 
- 
切换盘符: - 
盘符名: 回车 即可 - 
c: 回车。 
 
- 
 
- 
- 
cd:(change directory)切换目录 - 
cd 目录名称 回车 
 
- 
- 
tab 键具有自动补齐的功能。 
- 
. 代表了当前目录 
- 
.. 代表了 当前目录的上一级目录。 
- 
cd \ 回到当前盘符的根目录。 
- 
exit 退出cmd 窗口。 
- 
start 开启一个新窗口 
 
- 
- 
环境变量 - 
我的电脑--右键属性-高级系统设置--高级--环境变量--将jdk的bin目录添加到path的末尾即可。 
- 
配置环境变量的目的:为了可以更方便的使用java开发工具。 
 
- 
1.11 第一个java程序--HelloWorld.java
- 
class HelloWorld{
 //程序的入口,main方法。
 public static void main(String[] args){
 //将小括号中的内容打印到标准输出设备:控制台cmd窗口。
 System.out.println("Hello World!");
 }
 }
- 
编写.java 源代码。如上面的内容,使用记事本即可。 
- 
使用 javac HelloWorld.java 将源代码 编译为字节码 class文件。 
- 
使用 java HelloWorld 将字节码解释执行。 
1.12 .class文件介绍
- 
与本地平台无关的字节码文件,和 jvm 有关系。 
1.13 java的基本编码规范介绍
- 
注释 comments - 
作用:帮助我们阅读理解代码的。 
- 
注释不会参与代码的编译。只保留在源代码中。 
- 
注释的分类: - 
单行注释。//后面的内容都是注释的内容。 
- 
多行注释。/** 注释的内容 **/ 
 
- 
- 
class Hello{
 public static void main(String[] args){
 //这是代码注释。
 System.out.println("hello");
 System.out.println("hello");//这是短注释
 
 /*System.out.println("hello");
 System.out.println("hello");
 System.out.println("hello");
 System.out.println("hello");
 System.out.println("hello");*/
 
 System.out./*我是一个捣乱的注释*/println("hello");
 }
 
 }
 
- 
- 
缩进 - 
通过锁紧表达代码的包含的关系。 
 
- 
- 
标识符 - 
注意代码的命名 
 
- 
1.14 进制介绍
- 
冯.诺依曼核心理论 - 
使用二进制 - 
计算机底层都是使用二进制表示和存储数据的。 
 
- 
- 
存储程序执行 - 
程序必须先加载到内存中才能执行。 
 
- 
- 
计算机由:运算器,控制器,存储设备、输入输出设备构成。 
 
- 
- 
进制介绍 - 
二进制 - 
二进制的数字由2个不同的符号构成。[0-1] ,逢二进一。 
 
- 
- 
八进制 - 
八进制的数字由8个不同的符号构成。[0-7] ,逢八进一。 
 
- 
- 
十进制: - 
十进制的数字由10个不同的符号构成。[0-9] ,逢十进一。 
 
- 
- 
十六进制 - 
十六进制的数字由16个不同的符号构成。[0-9] [a-f] [A-F] 6个符号代表 [10-15] ,逢十六进一。 
 
- 
- 
二进制 八进制 十进制 十六进制
 0 0 0 0
 1 1 1 1
 10 2 2 2
 11 3 3 3
 100 4 4 4
 101 5 5 5
 110 6 6 6
 111 7 7 7
 1000 10 8 8
 1001 11 9 9
 1010 12 10 a
 1011 13 11 b
 1100 14 12 c
 1101 15 13 d
 1110 16 14 e
 1111 17 15 f
- 
如何在java程序中表示不同的进制。 - 
class Radix{
 public static void main(String[] args){
 //使用四种进制来表示十进制的10。
 //二进制 0b
 System.out.println(0b1010);//10
 //八进制 0
 System.out.println(012);//10
 //十进制
 System.out.println(10);//10
 //十六进制 0x
 System.out.println(0x2a);//42
 }
 }
 
- 
- 
进制之间的转换: - 
任意进制转到十进制。 - 
n进制的一个数 abc 。 
- 
a*n^2 + b*n^1 + c
 
- 
- 
十进制转换为二进制: - 
除以二取余法。逆序排序。 
- 
除以八取余法。逆序排序。 
- 
除以十六取余法。逆序排序。 
 
- 
- 
二进制和八进制的转换 ??自学 
- 
二进制和十六进制的转换??自学 
 
- 
- 
字节 - 
把计算机中的一个二进制位 称为 1bit,它是计算机中最小的存储单元。只能表示2个不同的状态:0 和 1. 
- 
n位 bits 可以表示 2^n 个不同的状态。 
- 
8个bits 称为1byte(字节)计算机中都是使用字节为单位处理处理。 
 
- 
 
- 
- 
码制介绍 - 
机器码:数据保存在硬件上的编码格式。 
- 
原码:10:0000 1010 -10: 1000 1010 - 
规则:最高位为符号位,0代表正数,1代表负数。剩余的位表示数值的大小。 
- 
问题: - 
存在 +0 和 -0 之分 00000000 10000000 
- 
如果考虑符号位的运算的规则,那么对于cpu的设计增加难度。 
 
- 
 
- 
- 
反码: - 
规则:正数的反码和原码一直。如果是负数,符号位不变,其他的位1变0 0变1. 
- 
-10:原码:1000 1010--- 反码:1111 0101 
 
- 
- 
补码 - 
规则:正数的补码和原码一致。三码合一。 负数,原码求反码然后再+1. 
- 
-10:原码:1000 1010--- 反码:1111 0101 --补码:1111 0110。 
- 
-1:原码:1000 0001---反码:1111 1110 补码:1111 1111 
- 
-0:1000 0000 1111 1111 1 0000 0000 
 
- 
 
- 
1.15 计算机存储单位介绍
- 
1byte 1个字节。 
- 
1KB==1024bytes 
- 
1024KB == 1MB 
- 
1024MB== 1GB 
- 
1024GB== 1TB 
1.16 计算机存储设备介绍
- 
硬盘:hard disk。 - 
读写(IO)速度慢、价格比较低、断电数据不丢失。 
 
- 
- 
内存:RAM:random access memory - 
读写速度比较快,价格比较高,断电数据丢失。 
 
- 
- 
cpu的寄存器: - 
读写速度非常快,价格非常高,断电数据丢失。 
 
- 
1.17 总结
- 
java三个版本。 - 
j2se 
- 
j2me 
- 
j2ee 
 
- 
- 
java的跨平台原理。 - 
jvm 
 
- 
- 
java的程序的运行的进制 - 
编写源代码 
- 
编译 -- 编译期, 编译器会对源代码进行语法检查和代码的基本优化,生成class。 
- 
运行 -- 运行期, 使用解释器对代码逐行解释给本地平台执行。 
 
- 
- 
jdk:开发环境: 
- 
jre:运行环境 
- 
jvm:java虚拟机 
- 
如何配置开发环境 - 
安装jdk 
- 
配置path 
 
- 
- 
cmd的简单实用 
- 
入口方法的语法。 - 
public static void main(String[] args){} 
 
- 
- 
java的注释 - 
// 
- 
/**/ 
 
- 
- 
进制 - 
进制的转换 
 
- 
- 
位、字节... - 
bit--比特位 
- 
8bits 一个字节。 byte。 
 
- 
1.18 思维导图
 
                    
                
 
                
            
         浙公网安备 33010602011771号
浙公网安备 33010602011771号