简介
java是一门面向对象语言,现如今主流开发在javaEE、大数据、Android三大方向
-
体系
- javaSE针对桌面开发应用,随着发展逐渐演变为javaEE的入门基础部分
- javaEE针对WEB应用层级开发,现在的主流开发趋向
- javaME针对移动端开发,已经基本舍弃。
-
性质
- 语法简单(在c语言的基础上进行改进)
- 面向对象(将各个事物抽象成类来定义实现)
- 可移植性(一次编译到处运行、 运行环境是用 ANSI C 实现 )、
- 健壮性(内置强类型、异常处理、垃圾回收)、
- 安全性(提供安全管理机制)、
- 解释性(编译成字节码在JVM中运行)
- 分布式(支持internet开发、RMI远程激活)
- 多线程(支持多线程的同时执行)
-
jdk的安装
- 在window的环境变量中新增JAVA_MOME、CLASSPATH并赋实际路径的值
- 在Path目录末尾追加相应的值
- 在cmd分别输入java、javac有相应信息显示则成功
变量名:JAVA_HOME 变量值:C:\Program Files (x86)\Java\jdk1.8.0_91 // 要根据自己的实际路径配置 变量名:CLASSPATH 变量值:.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar; //记得前面有个"." 变量名:Path 变量值:%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin; 注意: Windows10 中,Path 变量里是分条显示的,我们需要将 %JAVA_HOME%\bin; %JAVA_HOME%\jre\bin; 分开添加,否则无法识别
数据类型
-
数据类型大致分为两种数据类型:基本数据类型、引用数据类型
- 基本数据
- 整数型:byte(1个字节)、short(2个字节)、int(四个字节)、long(8个字节)
- 浮点型:float(4个字节)、double(8个字节)
- 字符型:char(一个字符、两个字节)只能表示单个字符
- 布尔型:boolean(作为true/false两种标记)
- 引用数据
- 类(class)字符串是一个class类型
- 接口(interface)
- 数组
- 基本数据
-
基本数据类型间的关系(默认整数为int型、浮点为double型)
-
自动类型转换根据数值表示的范围(从小到大)来进行自动转换。数值范围不是占据的内存空间
- byte—》short、char—》int—》long—》float—》double
- byte、short、char这三种类型之间的类型转换只能是int型
-
强制类型转换需要加()
一种情况丢失精度 float a = 23.6F; int b = (int) a; // b为23丢失0.6的精度 一种情况不会丢失精度 float c = 23F; int d = (int) c; // b为23不丢失精度 // 注意点自动类型转换 long f = 23; // 编译不会报错,因为long数值范围比int大 float g = 23.3; // 编译报错,因为double的数值范围比float大
-
每日小料
-
计算机中原码,反码,补码,计算机底层是补码操作(补码不需要关心符号问题,都是相加操作)
- 正数的三码一致
- 负数的三码规则
1 0 1 0 原码 1 1 0 1 反码: 原码第一位不变,其余位数取反 1 1 1 0 补码: 反码+1
-
二进制(0B10)、八进制(012)、十进制(12)、十六进制转换规则(0X12)
-
二进制与八进制
二进制中三位代表一位八进制数 二进制到八进制是将三位和为一位得出八进制 0 1 1 1 二进制 代表7 0 0 0 0 0 0 0 7 八进制 代表7 八进制到二进制是将一位拆分为三位得出二进展进制 0 0 0 0 0 0 0 7 八进制 代表7 0 1 1 1 二进制 代表7
-
二进制与十进制
二进制到十进制按位数取2的阶乘 1 0 1 0 二进制 代表10 0*2^0+1*2^1+0*2^2+1*2^3 = 0 + 2 + 0 + 8 = 10 十进制到二进制除2余数取反 10/2 5 0 5/2 2 1 2/2 1 0 1/2 0 1 即为1010
-
二进制与十六进制
二进制中四位代表一位十六进制数 二进制到十六进制是将四位和为一位得出十六进制 1 1 1 1 二进制 代表15 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 15 十六进制 代表15 十六进制到二进制是将一位拆分为四位得出二进展进制 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 15 十六进制 代表15 1 1 1 1 二进制 代表15
-