本帖最后由 xiekai_sjz 于 2018-9-7 14:18 编辑
同学们,我们今天进入java基础的第一天学习,今天主要为大家讲解下java语言的概述,常量和变量。
以下是今天的学习目标:
- 能够计算二进制和十进制数之间的互转
- 能够使用常见的DOS命令
- 理解Java语言的跨平台实现原理
- 理解JDK和JRE的组成和作用
- 能够配置环境变量JAVA_HOME
- 能够编写HelloWorld程序编译并执行
- 理解标识符的含义
- 能够定义出所有类型的常量
- 理解Java中的基本数据类型分类
- 能够定义8种基本数据类型的变量
以下是今天的详细笔记:
Java语言介绍Java语言概述和发展史
Java最初属于SUN公司, 后被Oracle(甲骨文)收购
Java之父: 詹姆斯-高斯林
Java的应用场景:网站开发
发展历史:
Java 1.0: 1995年
Java 1.1: 1997年
Java 1.2: 1998年
Java 1.3: 2000年
Java 1.4: 2002年
Java 5: 2004年 增加了很多新特性, 推动了Java的发展
Java 6: 2006年
Java 7: 2009年 Oracle收购Sun, 并于2011发布Java 7
Java 8: 2014年 目前使用最多的版本
Java 9: 2017年9月 从这个版本开始, 每半年更新一个版本
Java 10: 2018年3月
Java分3个平台:
JavaSE: Java Standart Edition, Java标准版本.
Java语言的核心, 开发桌面程序. 但是!! JavaSE开发桌面非常落后已经被淘汰
JavaME: Java Micro Edition, Java微型版本.
嵌入式设备开发. 手机, 机顶盒. JavaME基本也被淘汰
JavaEE: Java Enterprice Edition, Java企业版本.
网站, web应用程序, 手机APP后台服务端程序
计算机的进制转换
十进制: 逢十进一, 0-9组成
二进制: 逢二进一, 0和1组成
十进制 转 二进制:
规则: 除以2取余数直到商为0, 将余数倒序排列
示例: 十进制数字12, 反复除2, 获取余数, 直到商为0
2 |_12_ 余 0 ^
2 |__6_ 余 0 | 所有余数从下往上, 得二进制值: 1100
2 |__3_ 余 1 |
2 |__1_ 余 1 |
0
二进制 转 十进制:
规则: 8421码
... 256 128 64 32 16 8 4 2 1
1 1 0 0 相乘
-------------------------------------
8 +4 +0 +0 = 12
计算机存储单元
bit: 位 (比特) 缩写是小写的字母b。由0和1组成
byte: 字节. 缩写是大写的字母B。1个字节由8个位组成 0000 0000。是计算机中的最小存储单位
计算机存储单位的换算规则:
1 B = 8 bit;
1 KB = 1024 B;
1 MB = 1024 KB;
1 GB = 1024 MB;
1 TB = 1024 GB;
1 PB = 1024 TB;
1 EB = 1024 PB;
1 ZB = 1024 EB;
命令提示符CMD
打开CMD命令提示符窗口的步骤:
1. Win + r键: 弹出`运行`窗口
2. 输入cmd, 回车
常用DOS命令
常用DOS命令:
切换盘符 盘符:
切换目录
cd 目录名 进入目录
cd 目录1\目录2\目录3\ 进入多级目录
cd .. 返回上一层目录
cd \ 返回当前盘符根路径
显示当前目录中的所有内容 dir
清空屏幕 cls
退出cmd窗口 exit或者鼠标关闭
自动补全路径 tab
切换历史命令 ↑↓箭头
Java语言的跨平台性
平台: 就是操作系统. 常见操作系统有Windows, Linux, Mac
跨平台: 指程序可以在多种操作系统中运行
Java实现跨平台的原理: Java程序依赖于JVM, 不同操作系统有不同版本的JVM.
Java是跨平台的语言, 可以实现"一次编译, 到处运行"(Compile once, run anywhere)
JVM是虚拟的计算机, 类似于翻译
Java程序
|
+--------------------+---------------------+
| | |
Windows版JVM Linux版JVM Mac版JVM
| | |
Windows Linux Mac
JDK, JRE, JVM
JVM: Java Virtual Machine, Java虚拟机. 可以在不同的操作系统上模拟出相同的Java运行环境
JRE: Java Runtime Environment, Java运行时环境。包含了JVM, 核心类库
JDK: Java Development Kit, Java开发工具包。包含了JRE, 开发工具
环境变量的配置
环境变量: 在电脑操作系统中, 有一个名为Path的变量, 其中保存的文件夹中的内容, 可以通过cmd命令行在任意目录下使用
配置环境变量的原因: 为了在任意目录下都能使用JDK的bin目录中的开发工具
配置环境变量的方法
关键步骤:
1. 创建名为JAVA_HOME的变量, 值为JDK目录的路径
2. 编辑名为Path的变量, 在值中添加 %JAVA_HOME%\bin;
3. 关闭已经打开的cmd, 重新打开cmd. 输入javac测试
HelloWorld入门案例
Java程序开发步骤:
1. 编写.java源代码文件: 文本编辑器
2. 使用编译器编译: javac命令
3. 使用解释器运行: java命令
流程:
.java源代码文件 > 通过编译器编译 > 生成.class字节码文件 > 通过解释器解释执行
HelloWorld.java程序的编写:
[Java] 纯文本查看 复制代码 public class HelloWorld {
public static void main(String[] args) {
System.out.println("hello world!");
}
}
HelloWorld常见问题
常见问题:
报错: 类xxx是公共的, 应在名为xxx.java的文件中声明
原因: 类名和文件名不一致
报错: 找不到符号
原因: String[]的字母S写成了小写s
报错: 在类XXX中找不到main方法, 请将main方法定义为...
原因: main方法名写错, 比如写成mian
报错: 需要';'
原因: 少写;分号
报错: 非法字符
原因: 出现了中文符号
Notepad++的配置和使用
Notepad++:
是一个稍微高级一点儿的代码编辑器, 具有代码自动补全, 代码高亮, 行号显示等特点
安装方式:
双击exe安装包安装, 各种下一步
配置:
设置 > 首选项 > 新建 > 默认语言选Java > 编码选ANSI
Java基础语法
注释
注释: 用于解释说明的文字.
注释是给程序员看的, 源代码编译后的字节码文件中是没有注释的
3种注释:
1. 单行注释: //单行注释
2. 多行注释: /*多行注释*/
3. 文档注释: /**文档注释*/
关键字
关键字: Java中定义的具有特殊含义的, 被保留的单词
关键字的特征
1. 字母全小写
2. 在一些高级代码编辑器中会有颜色高亮
标识符
标识符: 代码中我们自己定义的"名称"
标识符的作用: 给 "包", "类", "方法", "变量"起名字
命名组成规则: 硬性规定
1. 由大小写英文字母, 数字, $, _组成
2. 数字不能开头
3. 不能是关键字,
中文也可以但不建议使用
命名规范: 见名知意 软性规定
类名: 所有单词首字母大写, 其余字母小写.
如 HelloWorld, Test
方法名: 第一个单词字母全小写, 从第二个单词开始首字母大写, 其余字母小写.
如 eat(), getName()
变量名: 同方法名.
如 age, myDog
包名: 字母全小写, 多级包之间, 用英文句点.分隔
如 com.itheima.test
常量
常量: 程序运行期间, 固定不变的量
分类:
字符串常量: "hello world", "123", "abc123你好", "","a"
字符常量: 'a', '0', '你'. 注意: 单引号中只能有且只有1个字符, 不能空着或者写多个字符
整数常量: 0, 90, -87
浮点数常量: 0.0, 90.0, -87.233
布尔常量: true, false
空常量: null
常量的输出
[Java] 纯文本查看 复制代码 public class TestConst{
/*
字符串常量: "hello world", "123", "abc123你好", ""
字符常量: 'a', '0', '你'. 注意: 单引号中只能有且只有1个字符, 不能空着或者写多个字符
整数常量: 0, 90, -87
浮点数常量: 0.0, 90.0, -87.233
布尔常量: true, false
空常量: null
*/
public static void main(String[] args){
//字符串常量: "hello world", "123", "abc123你好", ""
System.out.println("hello world");
System.out.println("");
System.out.println("123");
//字符常量
System.out.println('a');
System.out.println('0');
//System.out.println('12'); // 单引号之间有且只能有一个字符,两个报错
//System.out.println(''); // 单引号之间有且只能有一个字符,没有报错
//整数常量
System.out.println(3);
System.out.println(-5);
//浮点数常量
System.out.println(12.2);
//布尔常量
System.out.println(true);
System.out.println(false);
//空常量 null ,空常量不能输出
}
}
变量
数据类型Java中的数据类型
|_ 基本数据类型. (4类8种)
| |_ 整数
| | |_ byte: 字节型
| | |_ short: 短整型
| | |_ int: 整型
| | |_ long: 长整型
| |_ 浮点数
| | |_ float: 单精度浮点型 3.33333
| | |_ double: 双精度浮点型 3.333333333333333333
| |_ 字符
| | |_ char: 字符型. 注意: 既能表示字符, 也能表示数值
| |_ 布尔
| |_ boolean: 布尔型
|_ 引用数据类型
|_ 数组: int[] 等
|_ 类: String 等
|_ 接口
|_ Lambda
注意事项:
String是一个类, 属于引用数据类型
浮点类型只是一个近似值
数据范围与占用字节数不一定相关, 如float占用4字节但却比占用8字节的long存储的数据范围大
Java代码中, 整数常量默认是`int`类型, 浮点数常量默认是`double`类型
long类型加大写L, float类型加大写F
变量的概念和定义格式变量: 程序运行期间, 值可以发生改变的量
变量其实是内存中的一块区域, 可以保存一个值. 值的变化范围通过数据类型来约束
定义变量的2种格式:
(1)// 先声明(创建/定义)一个变量, 然后再给变量赋值
数据类型 变量名; // 先声明/创建/定义
变量名 = 初始化值; // 再赋值
(2)// 声明一个变量并赋予初始化值
数据类型 变量名 = 初始化值;
变量的使用
[Java] 纯文本查看 复制代码 public class TestVariable{
public static void main(String[] args){
//格式一:先声明一个变量
//数据类型 变量名;
int num1 ;
//给变量进行赋值
//变量名 = 数据值;
num1 = 5;
System.out.println(num1);
//修改变量的值
num1 = 10;
System.out.println(num1);
//格式二 一步到位的方式
//数据类型 变量名 = 数据值;
int num2 = 20;
System.out.println(num2);
System.out.println("==============");
//byte 类型
byte num3 = 10;//数据值不可以超过变量的范围
System.out.println(num3);
short num4 = 500;
System.out.println(num4);
long num5 = 3000000000L;
System.out.println(num5);
float num6 = 0.5F;
System.out.println(num6);
double num7 = 0.66;
System.out.println(num7);
char ch = 'A';
System.out.println(ch);
ch = '中';
System.out.println(ch);
boolean flag = true;
System.out.println(flag);
boolean flag1 = flag;
System.out.println(flag1);
}
}
变量的注意事项
作用域: 从定义变量的一行开始, 一直到直接所属的大括号结束为止
注意事项:
1. 如果创建多个变量, 那么变量之间的名称不可以重复.
2. 对于float和long类型来说, 字母后缀F和L不要丢掉.
3. 如果使用byte或者short类型的变量, 那么右侧的数据值不能超过左侧类型的范围.
4. 没有进行赋值的变量, 不能直接使用. 变量一定要赋值之后, 才能使用.
5. 变量使用不能超过作用域的范围
6. 可以通过一个语句来创建多个变量, 但是一般情况不推荐这么写. int a, b, c = 10;
|
|