目录
一、Typora--markdown编辑器
二、dos常用指令
-
操作系统
mac:苹果系统
windows:桌面系统
文件管理:
分磁盘管理,C:系统盘,D:···
绝对路径:D:\test\img\logo.png
Linux:类Unix的操作系统
文件管理:
以树形的目录结构管理。
绝对路径:/test/img/logo.png
分发版:
Readhat红帽-Centos
麒麟Linux
欧拉
统信UOS
-
体积大
-
桌面崩溃相当于操作系统崩溃
-
运行不稳定
-
单用户多任务
-
使用简单容易上手
-
开源免费(全世界的开发者都可以提交核心代码)
-
主要应用于服务器领域(作为服务器操作系统首选)
-
上手难度大(开始是以命令行作为操作入口)
-
体积小(嵌入式系统,服务器系统)
-
多用户多任务系统
-
-
相关的dos指令
盘符名称: //e:
dir //查看当前目录下的文件和文件夹
cd 路径 //切换路径
cls //清屏
mkdir //创建目录 说明: 当文件夹被创建后,会构建文件系统。
每个目录下都有两个特殊的dir:
. 当前目录
.. 上一级目录
在windows系统中以.开头的文件都是隐藏文件
windows系统中是以文件后缀决定文件类型。
.exe 可执行
.txt 记事本可编辑
ping 主机地址 //检查与对方主机是否连通
netstat -antop tcp //查看当前系统下基于tcp协议运行的进程
ipconfig /all //查看当前网络信息, centos7< ifconfig
三、Java语言简介
-
发展历史
1995由sun公司发布,后被甲骨文(oracle)收购,至今任然是服务器端优秀的编程语言。 应用特点及方向大数据的基础框架,开源,移动互联(Android)
-
版本变迁
1.2(Applet[java小程序,开发网页动态效果],swing[GUI桌面应用]) 1.5(Java5) Java7(主流版本) Java8(十个新特性) ...
-
java8是当前最后一个开源免费的jdk版本。java的向下兼容性做得比较好。
3、java的技术结构
JAVASE-----JAVA Standard Education (标准版) java基础 *
JAVAEE-----JAVA enterprise education (企业版) *
JAVAME-----JAVA mobile education (移动版) 嵌入式开发(手机app应用)
4、java的跨平台特性
java环境:
JDK: Java开发工具包
JRE:Java运行环境
JVM:Java虚拟机
包含关系: JDK>JRE>JVM
JVM: 实现了java的跨平台特性。(类加载,运行时的内存分配)
JRE: 在JVM基础上加入了核心类
JDK: 在JRE基础上加入了常用的工具。javadoc
四、Java的下载和安装
由于国外的服务下载比较慢,因此可以选择国内的镜像源: 阿里云,腾讯云,华为云
1、下载地址
官网: https://www.java.com/ 华为镜像地址:https://repo.huaweicloud.com/java
2、文件说明
jdk-8u151-linux-i586.rpm //linux上的rpm包管理,类似于windos的exe,msi
安装命令:rpm -ivh jdk-8u151-linux-i586.rpm
查询命令:rpm -qa|grep jdk-8 jdk-8u151-linux-i586.tar.gz
//linux上的压缩版,解压完成后,做一些基础配置就完成
解压: tar -zxvf jdk-8u151-linux-i586.tar.gz jdk-8u151-windows-x64.exe
3、安装
windows安装:
1-双击安装jdk
2-配置环境变量 JAVA_HOME=d:\java8 path=...;%JAVA_HOME%\bin
Linux安装:
1-解压jdk文件
2-配置环境变量 /etc/profile 文件
最后加上如下代码 JAVA_HOME=/java8 path=...:$JAVA_HOME/bin export JAVA_HOME path
测试: javac 编译器 java -version java 解析器
五、第一个Java程序HelloWorld
1、创建一个HelloWorld.java文件,并编写如下代码:
public class HelloWorld{
public static void main(String[] args){
System.out.println("hello world");
}
}
2、编译java文件
javac -d . HelloWorld.java
3、解析并运行java代码 java HelloWorld
注意:
1-每个java文件中只能有一个public修饰的类
2-被public修饰的类通常与文件名相同
3-类的完全限定名(package包的路径+类名称)
4-package包的命名规范,都应使用小写,并且使用“.”分隔
5-文档生成工具 javadoc -d . HelloWorld.java
六、Java保留字,关键字
在java中要求,标识符不能与保留字相同。
标识符:
分类 | 列表 |
---|---|
数据类型 | class interface byte short int long float double char boolean void enum |
类型值 | true false null |
流程控制 | if else switch case default while do for break continue return |
权限修饰符 | private protected public |
函数变量修饰符 | abstract final static synchronized |
类/接口关系修饰符 | extends implements |
实例修饰关键字 | new this super instanceof |
异常处理 | try catch finally throw throws |
包关键字 | package import |
其他关键字 | native strictfp transient volatile assert |
七、标识符命名规范
基础约定:
所有标识符都应该由大写字母,小写字母,数字,下划线以及$构成;不能以数字开头。
java的特殊约定:
定义类或者接口使用大驼峰命名法: 例如:用户名user name, UserName
定义类的成员属性或成员方法时使用小驼峰。
定义常量,所有字母都大写,多个单词组成中间使用下划线分隔: USER_NAME
八、注释
注释是用于程序员做代码备注使用,它不会被java的解析器执行。
在java中有三种注释:
// 单行注释
/* 多行注释 */
/** 文档注释 */
九、常量值
整型常量: 程序中使用的整数
小数常量: 程序中使用的小数
字符常量: 用单引号(‘’)引起来的单个字母,数字,特殊符号。’a’, ’$’
字符串常量: 使用双引号(””)引起的多个字符序列。”hello world”
布尔常量: true(真),false(假)。
空常量: null
十、进制
十进制:逢十进一,0-9构成
二进制:0/1构成,逢二进一, 0b开头的
十转二: 使用十进制数不断对2取余,直到商为0或1。然后将商和余倒置
二转十: 从低位开始,每一位乘以2的位次幂,然后求和
八进制: 用0开头,0-7构成,逢八进一
二转八:三变一
八转二:一变三
十六进制:由0-9 a-f 共十六个数字构成,逢十六进一,0x开头。
十六转二: 四变一
二转十六: 一变四
十一、变量
1、概念
变量就是用于存储数据的容器。通常变量的类型是由存储的值决定的。
弱类型语言: let i = 10; //数值型 i = "你好"; //字符串类型
强类型语言: int i = 10; i = "中国"; java是一门强类型语言,一旦定义了类型就不能修改。
2、变量的三要素
变量一定是先初始化再使用。
三要素: 数据类型 变量名 值
十二、数据类型
1、数据类型分类
引用类型 基础类型
2、具体类型
引用类型: class 类 interface 接口 array 数组
基础类型:8种
整数:
byte 字节 1byte
short 短整型 2byte
int 整型 4byte
long 长整型 8byte
浮点数:
float 单精度浮点数 4byte
double 双精度浮点数 8byte
其他类型:
char 字符型 无符号2byte
boolean 布尔类型 1byte
注意:jdk1.7后不再区分\r和\n的功能
ps:字符型char与整型int是兼容的
字符串在本质上是个数组
十三、数据类型转换
隐式转换: 在进行计算过程中根据需要自行做类型转换。 算术运算 赋值运算 小类型转大类型
显示转换(强制转换) 在要被转换的数据前显示设置类型的关键字。 案例:short nm = (short)(n1+n2);
注意:不兼容的数据类型之间不能做转换。
十四、运算符
1、算术运算符
+ - * / % ++ --
2、关系运算符
关系运算符参与的表达式,返回的结果为boolean类型 > >= < <= != ==
3、逻辑运算符
& | 逻辑与,两边都为true结果为true |
---|---|
| | 逻辑或,只要有一边为true结果为true |
&& | 短路与,只要前边为flase,后面就不再执行判断 |
|| | 短路或 |
! | 非,取反 |
^ | 逻辑异或,有且只有一边为true结果为true |
4、位运算符
& | 按位与:相同位上,同为1的结果为1 |
---|---|
| | 按位或:相同位上,只要有一个为1结果为1 |
^ | 按位异或:相同位上,有且只有一个为1结果为1 |
~ | 按位取反:所有二进制位(补码),包括符号位在内,0变1,1变0 |
>> | 位右移:所有二进制位右移(不包括符号位) |
<< | 位左移:所有二进制位左移(不包括符号位) |
>>> | 无符号右移:所有二进制位右移(包括符号位) |
ps:在计算机底层做数据交互时,使用的是二进制补码:
原码的反码+1=补码
正数的补码=原码本身
原码和反码的关系:除了符号位以外所有0变1,1变0
5、赋值运算符
= += -= ...
int a = 6; a+=6; //a=a+6
6、三元运算符(三目运算符)
表达式?值1:值2;
解释:如果表达式结果为true则返回值1,否则返回值2;