jdk和jre以及jvm的关系
1.JRE(Java Runtime Environment):java程序运行时所需要的环境,包含"jvm"和运行时所需要的"核心类库"
2.JDK(Java Development Kit):是java程序开发工具包,包含'JRE'和开发人员使用的工具(javadoc)\
3.注意:
由于jdk包含了jre,jre又包含了jvm
所以我们只需要安装一个jdk即可
常见的dos命令
作用 | 命令 |
---|---|
切换盘符 | 盘符名: -> 回车 -> 盘符名不区分大小写 ,但是我们得有这个盘 |
查看当前目录下得内容 | dir |
进入到指定的目录 | cd 文件夹名 |
进入到多级目录 | cd 文件夹名\文件夹名 |
退到上一级目录 | cd.. 或者cd .. |
退到磁盘位置 | cd\或者cd \ |
清屏 | cls |
关闭dos命令窗口 | exit |
创建文件夹 | mkdir 文件夹名 |
创建多级文件夹 | mkdir 文件夹名\文件夹名 |
删除文件夹 | rd 文件夹名(被删除的文件夹必须是空的,而且不走回收站) |
删除文件 | del 文件名.后缀名 |
批量删除指定类型的文件 | del *.后缀名 |
开发三步骤
1.编写:创建一个xxx.java文件
a.注意:需要将文件后缀名设置成显示
2.编译:javac -> 生成一个class文件(字节码文件),jvm运行java程序,只认识class文件
javac java文件名.java
比如: javac Demo01HelloWorld.java
3.运行:java
java class文件名 -> 不要带后缀,不要带后缀,不要带后缀
java Demo01HelloWorld
编写java的入门程序
/*
public class Demo03HelloWorld
public:权限修饰符,代表公共的(面向对象时说)
class:代表的是类
Demo03HelloWorld:类名,要求和java文件名保持一致
在定义一个类:类是java程序最基本的组成单元
所有的代码都要在class类中写
*/
public class Demo03HelloWorld{
/*
public static void main(String[] args)
public :权限修饰符,代表公共的(面向对象时说)
static:静态关键字(面向对象时说)
void:代表方法无返回值(讲方法的时候说)
main:方法名
(String[] args):main方法的参数,参数类型为String数组,参数名为args(后面说)
main方法是java程序的入口,jvm执行java程序从main方法开始执行 mian
*/
public static void main(String[] args){
//输出语句(打印语句),可以将我们的结果输出到控制台上
System.out.println("HelloWorld");
}
}
注释
1.注释:对代码的解释说明,不参与编译和运行
2.分类:
a.单行注释: //注释内容
b.多行注释:
/*
注释内容
*/
c.文档注释:
/**
注释内容
*/
//单行注释 定义一个类,类名叫做Demo01HelloWorld
public class Demo01HelloWorld{
/*
叫做main方法,是程序的入口
*/
public static void main(String[] args){
//输出语句
System.out.println("HelloWorld");
}
}
文档注释: 可以使用javadoc命令生成此类相关的一个API文档,让别人快速了解此类的作用以及其中的成员
/**
注释内容
*/
命令:javadoc -d 要生成的文件夹名字 -author -version 文件名.java
/**
这是一个Java入门程序
@author 涛哥
@version v1.0
*/
public class Demo02HelloWorld{
/**
main方法的作用为程序的入口
*/
public static void main(String[] args){
//输出语句
System.out.println("HelloWorld");
}
}
System和String中的首字母s要大写
class后面跟的类名要和java文件名保持一致
注意事项
字符编码问题
1.当cmd命令行窗口的字符编码与.java源文件中的字符编码不一致时,就会在dos命令窗口中出现乱码,原因是啥?
写代码的时候,编码为:UTF-8
dos命令窗口默认字符集: GBK
a.如果是英文,在这两个编码中(UTF-8和GBK)一个字符就占一个字节
b.如果是中文,同样的中文内容在这两个编码中所占字节数不一样
UTF-8:一个中文占3个字节
GBK:一个中文占2个字节
源文件名(java文件名)与类名一致问题
1.源文件名是否必须与类名一致
a.如果class前面没有public,此时类名可以和java文件名不一致
b.如果class前面有public,此时类名必须和java文件名保持一致
2.一个源文件中是否可以有多个类?
可以,但是要定义非public的
3.main方法必须在public的类在中嘛?
不是
但是后面main方法都要写在public的类中
1.不管class是否为public的,我们的类名都建议和java文件名保持一致
2.我们尽量在一个java文件中定义一个class类
3.main方法全部放到public的类中
常量
1.概述:在代码的运行过程中,值不会发生改变的数据
2.分类:
整数常量:所有的整数,包括正负 -1 1
小数常量:所有带小数点的 2.5 2.0
字符常量:带单引号的 '' 单引号中必须有,且只能有一个内容
'1' 对
'11' 不对
'1a' 不对
' ' 对
' ' 不对
'tab键' 对
字符串常量:带双引号 "" 双引号中的内容随意
布尔常量:true false -> 用于判断条件
空常量:null -> 代表数据不存在->不能直接使用
public class Demo06HelloWorld{
public static void main(String[] args){
//整数常量
System.out.println(1);
System.out.println(-1);
//小数常量
System.out.println(2.5);
System.out.println(2.0);
//字符常量
System.out.println('1');
//System.out.println('11');''中必须有且只能有一个内容 11算两个内容
//System.out.println('');''中必须有且只能有一个内容
System.out.println(' ');//一个空格算一个内容
//System.out.println(' ');//一个空格算一个内容,两个空格就是两个内容
System.out.println(' ');//tab键算一个内容
//字符串常量
System.out.println("张无忌和赵敏以及周芷若还有小昭以及朱九真...没羞没臊的故事");
System.out.println("");
//布尔常量
System.out.println(true);
System.out.println(false);
//空常量
//System.out.println(null); null代表数据不存在,不能直接引用
}
}
public class Demo07HelloWorld{
public static void main(String[] args){
System.out.println(10+3);//13
System.out.println(10-3);//7
System.out.println(10*3);//30
System.out.println(10/3);//3 如果/前后都是整数,取的整数部分
System.out.println(10/3.0);// 如果/前后有一个是小数,结果就是带小数点的
}
}
变量
1.概述:在代码的运行过程中,值可以根据不同的情况随时发生改变的数据
int price = 10;
price = 8;
2.作用:可以临时存储一个数据
3.java中变量的分类:
基本数据类型:4类8种
a.整型:byte short int long
b.浮点型:float double
c.字符型:char
d.布尔型:boolean
引用数据类型:
类 数组 接口 枚举 注解
4.整数默认类型为int
小数默认类型为double
5.按照取值范围从小到大做排序:
byte short char -> int -> long -> float -> double
6.特殊的类型:字符串类型
用String表示,但是String不属于基本类型,属于一个类,所以属于引用数据类型
只不过String变量的定义格式和基本类型一样
数据类型 | 关键字 | 内存占用 | 取值范围 |
---|---|---|---|
字节型 | byte | 1个字节 | -128 至 127 定义byte变量时超出范围,废了 |
短整型 | short | 2个字节 | -32768 至 32767 |
整型 | int(默认) | 4个字节 | -2^31^ 至 2^31^-1 正负21个亿 -2147483648—2147483647 |
长整型 | long | 8个字节 | -2^63^ 至 2^63^-1 19位数字 |
单精度浮点数 | float | 4个字节 | 1.4013E-45 至 3.4028E+38 |
双精度浮点数 | double(默认) | 8个字节 | 4.9E-324 至 1.7977E+308 |
字符型 | char | 2个字节 | 0 至 2^16^-1 |
布尔类型 | boolean | 1个字节 | true,false(可以做判断条件使用) |
public class Demo08Var{
public static void main(String[] args){
//byte
byte num1 = 100;
num1 = 101;
//num1 = 200;超出了byte的取值范围了
System.out.println(num1);
//short
short num2 = 100;
System.out.println(num2);
//int 整数默认类型
int num3 = 100000000;
System.out.println(num3);
/*
long 定义long型的变量,习惯上再值得后面加上L或者l
建议用L
*/
long num4 = 100000000L;
System.out.println(num4);
/*
float 定义float型的变量,请在小数后面加F或者f
建议用F
*/
float num5 = 2.5F;
System.out.println(num5);
/*
double
*/
double num6 = 2.5;
System.out.println(num6);
/*
char 代表字符变量
*/
char num7 = '中';
System.out.println(num7);
/*
boolean
true false
*/
boolean num8 = true;
boolean num9 = false;
System.out.println(num8);
System.out.println(num9);
/*
num9代表的是false
相当于将num9的false赋值给了变量num8,此时num8的true被覆盖了,变成了num9的false了
*/
num8 = num9;
System.out.println(num8);
/*
String 字符串
*/
String s = "atguigu";
s = "taoge";
System.out.println(s);
}
}
12 条评论
?幽默类评语?
《声生不息家年华金花家庭录像带》大陆综艺高清在线免费观看:https://www.jgz518.com/xingkong/144601.html
你的文章内容非常卖力,让人点赞。 https://www.yonboz.com/video/85392.html
你的文章内容非常卖力,让人点赞。 http://www.55baobei.com/f2lEJb2aP0.html
《鸡皮疙瘩剧场版2》科幻片高清在线免费观看:https://www.jgz518.com/xingkong/116910.html
你的文章内容非常卖力,让人点赞。 http://www.55baobei.com/f2lEJb2aP0.html
你的文章让我感受到了无尽的欢乐,谢谢分享。 http://www.55baobei.com/pd0WFQJS8I.html
《奈何盛世要宠我》短片剧高清在线免费观看:https://www.jgz518.com/xingkong/17965.html
123
你的文章让我感受到了正能量,非常棒! http://www.55baobei.com/Um57YYRpua.html
黑鹰传奇第二部:行业攻略指南:https://501h.com/jinbi/7827.html
叼茂SEO.bfbikes.com