Java,1995年 sun公司 詹姆斯.高斯林 计算机 高级编程语言 2009年被甲骨文Oracle公司收购
JavaSE(标准版):java技术核心和基础(直观桌面应用)
JavaEE(企业版):企业级应用开发
JavaME(小型版):移动设备应用(已经被安卓与苹果系统取代)
JDK (全称 Java Development Kit Java开发者工具包)
JDK8.0(LTS) 与JDK11.0(LTS) 为现有企业常用版本 (long-term support长期支持版本)
安转JDK需配置环境变量 告诉系统JDK安装在哪个位置 JAVA_HOME Path
不配置环境变量 只能JDK的bin目录下运行java命令
dos系统常用命令
JDK安装成功验证 win+r cmd 进入dos界面 java-version查看Java版本号
Java Downloads | Oraclehttps://www.oracle.com/java/technologies/downloads/
编写代码 生成.java文件
编译代码 通过编译工具java.c 生成字节码文件(尾缀.class)
运行代码 通过执行工具java.exe 运行
java 跨平台 一次编译,到处运行
java编程充分体现了 面向对象编程思想 通过JAVA基础提供好的类 以 及自己编好的一些类 即核心类库 便捷式的编写代码. 并通过windows JVM虚拟机 或 MacOS虚拟机 或Linux虚拟机 将javac编译后的字节码文件.class 翻译成 机器识别的源代码 进行跨平台运行. 整个过程核心类库+JVM称为JRE Java运行环境 .整个Java运行环境+javac/java 编译工具/运行工具 称为JDK Java开发者工具包
project(项目、工程)
module(模块)
package(包)
class(类)
单行注释 // 快捷键ctrl+/
多行注释/* */ 快捷键ctrl+shift+/
文档注释/* **/
注意事项:字符 ' A ' 单引号内 必须有字符 而且必须是一个
数据类型 变量名 = 值(字面量)
int age =18;
变量要先声明后使用
类中方法外的成员变量有默认初始值 但方法内的成员变量没有初始值 用之前还需赋值 否则会报错
变量作用域 定义开始 最近一个}结束 例如 for循环的{ } 内
而生命周期 随方法的入栈弹栈 而生亡
48个关键字 const ,goto 2个保留字 true、false、null 3个特殊直接量
5.1自己定义的名字 类名,方法名,变量名等
5.2基本组成:数字 字母 下划线_ 美元符号$
注意:不能以数字开头 不能以关键字开头 区分大小写 (例:Do 理论上可行 但不建议这么命名)
中文也被认为是字母,可以用来命名
5.3命名规范
大小驼峰命名法 (区分:首字母大写就是大驼峰 首字母小写就是小驼峰)
大驼峰: 类名 .........
小驼峰 变量名 方法名 ........
1 十进制转二进制方法: 除二取余法
数据储存基本单位:字节 Byte 简称B
数据储存最小单位:比特 bit 简称b
1B=8b 8个二进制为一组 最高位为符号位表示+-
字符的储存------ASCII编码表 转成二进制储存在计算机内
'0'-------48 'A'-------65 'a'---------97
基本数据类型 4类8种
引用数据类型 String 数组 集合 等
小 转 大
1.文字描述
大 转 小
强转可能造成数据丢失
浮点型强转整形 丢掉小数部分,保留整数部分返还
2.例子
int a = 15;
int b =10;
float c = (float)a/b;
中a强转成float15.0 ,然后15.0/10 为float与int表达式最高类型int 决定的 float 类型 为1.5
注意a/=b 底层代码书写为 a=(a的类型)(a/b) 可理解为强转优先级 优先于 乱七八糟的运算符
3.编程可应用场景
3.1
有和sum 与人数 n 求平均数 avg 但 sum 为int类型 avg为double类型
sum/n 整数除以整数 为整数 小数部分舍去 数据有损失
可写为 avg=sum*1.0/n 即将sum乘以double 1.0 结果与强转为double 无异
3.2
char 类型直接比较 可以直接比较,但比较符号两侧必须都是字符
char a a>='a'&&a<='z' 中 遍历 即可得到a到z的所有字母
3.3
自动转换在idea中不会报错,因为自动转了
int x( ){ char ch='a'; return ch; } 方法x 形参无 返回值int return 回去的char类型数字会自动转型为int
1.算数运算符
+-*/% 加减乘除取余
注意+两侧有字符串时,+作为连接符使用
2.自增自减运算符
++ --
注意a++与++a在运算中的区别
3.赋值运算符
= 先看=右边
注意=与==区别 = 为赋值 ==为等于判断 false还是true
4.扩展赋值运算符
5.关系运算符
6.逻辑运算符
7.三元运算符
条件表达式?值1:值2;
表达式的值 true 返回值1 false 返回值2
8.运算符优先级
总结:
赋值运算优先级最低 = += -= *= /= %= &=
三元运算符 优先级倒数第二
逻辑运算符& ^ | && || 优先级仅此以上