目录
一、建立体系
1.框架
层级 | |
项目 | |
子系统 | 仓储、物流、商品…… |
模块 | 商品搜索/发布/展示…… |
包 | 组件类包、实体类包、工具类包…… |
类 | Servlet组件类、Service组件类、Dao组件类 |
代码 | 变量、常量、方法、流程控制、异常处理、IO、反射、枚举、泛型…… |
2.构架
Nginx 负载平衡
二、Dos命令
开启:Windows+R,输入cmd
常用命令:
①进入目录:cd
回到根目录 cd/或cd\
切换到上一级 cd..
当前盘的其他目录:
绝对路径:从根目录开始定位 cd: c:/users/zhang
相对路径:从当前目录开始定位 ../../../zhang
②查看当前目录下有什么:dir
③新建目录:md(make directory)
在当前目录下新建hello文件夹
md hello
在当前目录下新建a、b、c三个文件夹
md a b c
在d盘KuGou下新建KuKu文件夹
md d:\KuGou\KuKu
④新建空文件:type nul
type nul > 文件名.扩展名
⑤追加内容到文件:echo
echo 内容 > 文件名.扩展名
⑥复制/移动文件:copy/move
copy 源文件 目标目录\新文件名.扩展名
move 源文件 目标目录
⑦删除文件:del
删除指定文件
del 文件名.扩展名
del 目标目录\文件名.扩展名
删除所有文件并询问
del *.*
删除所有文件不询问
del /Q *.*
⑧删除目录:rd
删除空目录
rd 目录名
删除目录下面的子目录和文件,带询问
rd /S 非空目录名
删除目录下面的子目录和文件,不带询问
rd /S/Q 非空目录名
⑨查看某个目录的下一级目录结构
tree 目录
tree /F 目录 显示每个文件夹中文件的名称
⑽清屏:cls
⑾退出:exit
⑿切换盘符
直接盘符
切换到D盘 d:
使用cd
从D盘切换到E盘 cd /D e:
三、配置环境变量
配置path 可以在任何目录运行Java命令
没配置path 只能在文件所在目录运行Java命令
注意:
PATH通常指向这个程序的bin目录
XXX_HOME通常指向bin目录的上一级
引用:%XXX_HOME%\文件夹名称
四、编写程序
注意:
严格区分大小写
不能使用中文符号,英文半角的标点符号
括号要成对出现
1.helloworld案例
public class HelloWorld {
public static void main(String[] args) {
System.out.println("HelloWorld");
}
}
在DOS命令行中,进入HelloWorld所在文件目录
输入
javac 源文件名.后缀名
javac HelloWorld.java
编译为JVM可以看懂的字节码文件
在原文件夹中生成
HelloWorld.class文件(字节码文件)
运行
运行工具java.exe
java 类名字
java HelloWorld
2.Java程序的结构与格式
结构
类{
方法{
语句;
}
}
3.Java程序的入口
main方法
public static void main(String[] args){
}
4.编写Java程序时应注意的问题
编码过程:字符转换为二进制的数值
解码过程:将二进制数值转换为字符
乱码:编码和解码过程中使用的字符集不一致。
1)字符编码问题
当cmd命令行窗口的字符编码与.java源文件的字符编码不一致
方案一:
在Notepad++等编辑器中,修改源文件的字符编码
方案二:
在使用javac命令式,可以指定源文件的字符编码
javac -encoding utf-8 Review01.java
五、名称一致问题
1.源文件名与类名
这个类为public,必须一致
这个类不是public,可以不一致
建议保持一致
2.一个源文件中含有类的数量
一个源文件可以含多个类,编译后会生成多个.class文件
一个源文件只能有一个public的类
3.main习惯上都在public类中,不强制要求
六、基础知识
1.注释
单行://
多行:/* */
文档注释:/** */
2.关键字
特点:小写字母
共50个
3.标识符
程序员自己命名的部分,即给类、变量、方法、包等命名的字符序列
规则:
只能使用26个英文字母大小写,0-9的数字,下划线_,美元符号&
不能使用Java关键字和特殊值
数字不开头
不包含空格
区分大小写
规范
① 见名知意
②类名、接口名:首字母大写
形式:XxxYyyZzz
例:HelloWorld
③变量、方法名等:从第二个单词开始首字母大写,其余字母小写
形式:xxxYyyZzz,
例如:age,name,bookName,main
④包名等:每一个单词都小写,单词之间使用.分割
形式:xxx.yyy.zzz
例:java.lang
⑤常量名等:每一个单词都大写,单词之间使用下划线_分割
形式:XXX_YYY_ZZZ
例:MAX_VALUE,PI
4.数据类型
分类
基本数据类型:整数、浮点数、字符、布尔
引用数据类型:类、数组、接口
基本数据类型
数据类型 | 关键字 | 内存占用(字节) | 取值范围 |
---|---|---|---|
整数 | byte | 1 | -2^7~2^7-1(-128~127) |
short | 2 | -2^15~2^15-1(-32768~32767) | |
int(默认) | 4 | -2^31~2^31-1 (-2147583648~2147483847) | |
long | 8 | -2^36~2^36-1 | |
浮点数 | float | 4 | 负数:-3.402823E38~-1.401298E-45 正数: |
double(默认) | 8 | 负数:-1.797693E308~-4.940656E-324 正数 | |
字符 | char | 2 | 0~65535 |
布尔 | boolean | 1 | true,false |
默认类型
整数为int,浮点数为double
常量整数值
赋值给byte,short,int,在他们范围内就可以
赋值给long,在int范围内,加不加L都会自动升级为long,超过int范围必须加L
小数常量值
无论多少,不加F就是double类型
5.常量
在执行程序过程中,其值不可以发生改变的量
分类
自定义常量:通过final关键字定义
字面值常量:
字面值常量 | 举例 |
---|---|
字符串常量 | “HelloWorld” |
整数常量 | 12,-23 |
浮点常量 | 12.34 |
字符常量 | ‘a’,‘0’,‘林’ |
布尔常量 | true,false |
空常量 | null |
public class ConstantDemo {
public static void main(String[] args) {
//字符串常量
System.out.println("HelloWorld");
//整数常量
System.out.println(12);
System.out.println(-23);
//小数常量
System.out.println(12.34);
//字符常量
System.out.println('a');
System.out.println('0');
System.out.println('沙');
//布尔常量
System.out.println(true);
System.out.println(false);
}
}
6.变量
在执行程序的过程中,其值可以发生改变的量
作用:用来储存数据,代表内存的一块存储区域,这块内存中的值是可以改变的
三要素
①数据类型
②变量名
③值
注意
①先声明后使用
②在使用之前必须初始化
③变量有作用域
④在同一个作用域中不能重名
变量声明、赋值、使用的语法
①声明
数据类型 变量名;
例:
int age;
String name;
double weight;
char gender;
boolean isMarry;
②赋值
变量名 = 值;
例
age = 18;
name = "格瑞"//字符串用""
weight = 60.8;
gender = '男'//单字符串用''
isMarry = true;
③使用
通过变量名直接引用
例
//输出变量的值
System.out.println(age);
System.out.println(name);
System.out.println(weight);
System.out.println(gender);
System.out.println(isMarry);
//计算
age = age + 1;//年龄增加1岁
7.练习,定义基本数据类型的变量和字符串变量并输出
char类型 使用' '
String类型 使用" "
float类型 赋值为常量小数,在小数后加F
float f = 5.5F;
long类型 赋值的常量超过int范围,数字后加L
long l = 12345678900L;
public class VariableDemo {
public static void main(String[] args){
// 定义字节型变量
byte b = 100;
System.out.println(b);
// 定义短整型变量
short s = 1000;
System.out.println(s);
// 定义整型变量
int i = 123456;
System.out.println(i);
// 定义长整型变量
long l = 12345678900L;
System.out.println(l);
// 定义单精度浮点型变量
float f = 5.5F;
System.out.println(f);
// 定义双精度浮点型变量
double d = 8.5;
System.out.println(d);
// 定义布尔型变量
boolean bool = false;
System.out.println(bool);
// 定义字符型变量
char c = 'A';
System.out.println(c);
// 定义字符串变量
String s = "HelloWorld";
System.out.println(s);
}
}
七、两种常见的输出语句
1.换行输出语句
System.out.println(输出内容);
2.直接输出语句
System.out.print(输出内容);
3.注意
换行输出语句,括号内可以什么都不写,只做换行处理
直接输出语句,括号内什么都不写,编译报错
()中有多项内容时,使用+连接
某些内容想要原样输出,就用" "引起来;输出变量中的内容,则不使用" "