打开cmd的方式
-
开始+系统+命令提示符
-
win键+R 输入cmd打开控制台
-
在任意文件夹下按住shift+鼠标右键,在此处打开命令窗口
-
资源管理器的地址栏前面加上cmd路径
管理员方式运行:选择管理员方式运行
常用的dos命令
#盘符切换D:
#盘符文件查看dir
#切换目录 cd change directory
#返回上级 cd..
#清理屏幕 cls(clear screen)
#退出终端 exit
#查看电脑的ip ipconfig
#打开应用
#打开计算器calc
#打开画图工具mspaint
#打开记事本notepad
#ping命令
ping www.baidu.com
#文件操作
添加 md 目录名
删除 rd 目录名
添加 cd> 文件名
删除 del 文件名
电脑常用快捷键
-
全选 ctrl+a
-
复制 ctrl+c
-
粘贴 ctrl+v
-
撤销 ctrl+z
-
保存 ctrl+s
-
关闭窗口alt+F4
-
打开任务管理器 ctrl+shift+esc
-
永久删除shift+delete
-
运行 win+r
Java三大版本
-
JavaSE:标准版(桌面存续,控制台开发)
-
JavaME:嵌入式开发(手机小家电)
-
JavaEE:E企业级开发(web端,服务器开发)
JDK、JRE、JVM
JDK:Java Development Kit
JRE: Java Runtime Environment
JVM: Java Virtual Machine
安装JDK,配置运行环境
-
百度搜索JDK
-
下载安装合适的jdk版本
-
安装jdk(注意安装路径要记住,最好自定义)
-
安装成功后,桌面我的电脑》鼠标右键》属性》环境变量
-
系统变量里,添加一个变量,变量名:JAVA_HOME 变量值:安装jdk路径
-
点击Path》编辑》添加%JAVA_HOME%\bin ,保存
-
win+r 打开 运行 ,cmd进入dos命令 javac测试。
HelloWorld
1.新建一个记事本,名字改为Hello
2.文件后缀名改为.java
3.如果没有显示后缀,查看里手动打开显示后缀
4.编写代码
public class Hallo{
public static void main(String[] args){
System.out.println("HelloWorld");
}
}
5.编译java文件,运行class文件。
Microsoft Windows [版本 10.0.18363.778]
(c) 2019 Microsoft Corporation。保留所有权利。
C:\Users\A450\Desktop\练习测试>javac Hallo.java
C:\Users\A450\Desktop\练习测试>java Hallo
HelloWorld
C:\Users\A450\Desktop\练习测试>
注意
-
java每个单词大小写敏感,区分开。
-
文件名必须和class类名保持一致
-
符号使用了中文符号会错误
java程序运行机制
编译型:用编译器把程序编译的运行程序
解释型:对速度要求不高时,边执行边解释,随着更新随时可以翻译过来。
程序运行机制:源程序(*java文件)》Java编译器》字节码(.class文件)》类装载器》字节码校验器》解释器》操作系统平台
注释
单行注释 //
多行注释/**/
文档注释/** */
注意:书写注释是一个非常好的习惯
标识符
java所有的组成部分都需要名字。类名、方法名、变量名都被称为标识符
数据类型
强类型语言:要求变量的使用要严格符合规定,所有变量都必须先定义,后使用
弱类型语言
java的数据类型分为两大类
-
基本类型(primitive type)
-
引用类型(reference type)
数据类型拓展
整数:
进制 二进制0b 十进制 八进制0 十六进制0x
int i=0;
int i2=010;//八进制0
int i3=0x10;//十六进制0x 0-9 A~F 16
System.out.println(i); 10
System.out.println(i2);8
System.out.println(i3);16
浮点数:
银行业务怎么表示?钱
BigDecimal 数学工具类
float 有限 离散 舍入误差 大约 接近但不等于
double
最好完全避免使用浮点数进行比较
字符:
//所有的字符本质还是数字
编码 Unicode 2字节 0-65536
public static void main(String[] args) {
//进制 二进制0b 十进制 八进制0 十六进制0x
int i=10;
int i2=010;//八进制0
int i3=0x10;//十六进制0x 0-9 A-F
System.out.println(i);
System.out.println(i2);
System.out.println(i3);
System.out.println("==================================");
//浮点数拓展 银行业务怎么表示? 钱
//BigDecimal 数学工具类
//float 有限 离散 舍入误差 大约 接近但不等于
//double
//最好完全避免使用浮点数进行比较
float f=0.1f; //0.1
double d=1.0/10; //0.1
System.out.println(f==d);//false
float d1=232323232131213f;
float d2=d1+1;
System.out.println(d1==d2);//true
//=======================================
//字符拓展
char c1='A';
char c2='中';
System.out.println(c1);
System.out.println((int)c1);//强制转换为int类型
System.out.println(c2);
System.out.println((int)c2);
//所有字符本质是数字
//编码 Unicode 表:(97=a 65=A) 2字节 0-65536 2 16
//U0000 UFFFF
char c3='\u0061';
System.out.println(c3);
//==================================
//转义字符
// \t 制表符
// \n 换行
String sa=new String("hello world");
String sb=new String("hello world");
String sc="hello world";
String sd="hello world";
System.out.println(sa==sb);
System.out.println(sc==sd);
//对象 从内存分析
//布尔值扩展
boolean flag=true;
if(flag==true){}
if(flag){}
//Less is More! 代码要精简易读
}
类型转换
由于java是强类型语言,所以要进行有些运算的时候,需要用到类型转换。
低--------------------------------------------------高
byte,short,char->int->long->float->double
运算中,不同类型的数据先转化为同一类型,然后进行计算
-
强制类型转换
-
自动类型转换
-
//操作比较大的数的时候,注意溢出问题
//Jdk7新特性,数字只见可以用下划线分割
int money=10_0000_0000;
int years=20;
int total=money*years;//-1474836480,计算的时候溢出了
long total2 =money*years;//默认是int,转换之前已经存在问题了?
long total3=money*((long)years);
System.out.println(total3);
变量
变量是什么:就是可以变化的量!
java是一种强类型语言,每个变量都必须声明其类型。
java变量是程序中最基本的存储单元,其要素包括变量名,变量类型和作用域。
type varName [=value] [{,varName[=value]}];
//数据类型 变量名=值; 可以使用逗号隔开来声明多个同类型变量。
注意事项:
-
每个变量都有类型,可以使基本类型,也可以使引用类型。
-
变量名必须是合法的标识符。
-
变量声明是一条完整的语句,因此每一个声明都必须以分号结束
变量作用域
-
类变量
-
实例变量
-
局部变量
常量
常量(Constant):初始化(initialize)后不能再改变值!不会变动的值。
所谓常量可以理解成一种特殊的变量,它的值被设定后,在程序运行过程中不允许被改变。
final 常量名=值;
final double PI=3.14;
常量名一般使用大写字符
变量的命名规范
所有变量、方法、类名:见名知意
类成员变量:首字母小写和驼峰原则:monthSalary
局部变量:首字母小写和驼峰原则
常量:大写字母和下划线:MAX_VALUE
类名:首字母大写和驼峰原则:Man
方法名:首字母小写和驼峰原则:runRun()
//类变量 static
static double salary=2500;
//常量,修饰符,不存在先后顺序
final static double PI=3.14;
int i;
double k;
//实例变量:从属于对象;如果不子兴初始化,这个类型的默认值 0 0.0
//布尔值:默认值是false
//出了基本类型,其余的默认值都是null;
String name;
int age;
//main方法(主程序)
public static void main(String[] args) {
//局部变量:必须声明和初始化值
int i=10;
System.out.println(i);
//变量类型 变量名字=new Demo04();
Demo4 demo4=new Demo4();
System.out.println(demo4.name);
System.out.println(demo4.age);
}
//其他方法
public void add(){
}运算符
java语言支持如下运算符:
-
-
算术运算符:+, -, *, / , %, ++, --,
-
赋值运算符=
-
关系运算符:>, <, >=, <=, ==, !=instanceof
-
逻辑运算符:&&, ||, !
-
位运算符:&, |, ^,~, >>,<<,>>>
-
条件运算符?:
-
扩展赋值运算符:+=, -=, *=, /=
自增自减运算符
//++ -- 自增自减 一元运算符
int a=3;
int b=a++;//执行完这行代码后,先给b赋值,再自增
int c=++a;//执行完这行代码前,先自增,再给b赋值
//幂运算 2^3 2*2*2=8 很多运算,我们会使用一些工具类来操作!
double pow=Math.pow(2,3);
//与(and)或(or)非(取反) boolean a=true; boolean b=false; System.out.println("a&&b:"+(a&&b));//逻辑与运算:两个变量都为真,结果才为true System.out.println("a||b"+(a||b));//逻辑或运算:两个变量有一个为真,则结果为true System.out.println("!(a&&b):"+!(a&&b));//如果是真,则变为假,如果是假则变为真 //短路运算 int c=5; boolean d=(c<4)&&(c++<4); System.out.println(d); System.out.println(c);
/* A =0011 1100 B=0000 1101 A&B=00001100 如果ab同位上都是1则为1否则为0 A|B=00111101 如果ab同位上有1则为1,否则为0 A^B=00110001 亦或两同位相同为0,不同为1 ~B =11110010 取反同位和原来数字相反 二进制运算 2*8=16 2*2*2*2 效率极高 <<左移 *2 >>右移 /2 2<<3=16 0000 0000 0 0000 0001 1 0000 0010 2 0000 0011 3 0000 0100 4 */
int a=10; int b=20; a+=b;//a=a+b a-=b;//a=a-b //字符串连接符 +,string System.out.println(""+a+b);//字符串在前所以整个运算做了拼接 System.out.println(a+b+"");//字符串在后所以先运算再进行了拼接
三元运算符
//x ? y : z //如果x==true,则结果为y,否则结果为z int score=80; String type= score< 60 ?"不及格":"及格";
包机制
为了更好地组织类,java提供了包机制,用于区别类名的命名空间。
JavaDoc
javadoc命令是用来生成自己API文档的
参数信息
-
@author作者名
-
@version版本号
-
@since指明需要最早使用的jdk版本
-
@param参数名
-
@return返回值情况
-
@throws异常抛出情况
doc命令:javadoc -encoding utf-8 -charset utf-8 文件名.java
-