目录
JDK(Java Development Kit)java开发工具
JRE(Java Runtime Environment)java运行环境
JVM(Java Virtual Machine)java虚拟机
集成开发环境( Integered Development Environment,IDE)的选择
Java 的介绍
java(原本名称为Oka)是由sun公司(现在已经转让给了Oracle公司)开发的一门面向对象的语言。james Ghosling是java之父。作为一项编程语言,Java有着简单易上手,跨平台兼容等优点。
Java 的编程环境
JDK(Java Development Kit)java开发工具
JDK作为核心,包含了编程工具,开发工具实现类,以及Java的运行环境(Java Runtime Environment,JRE)。JDK可以说是java编程的核心,功能包括将.java文件编译成.class文件,运行.class文件等功能
JRE(Java Runtime Environment)java运行环境
JRE运行代码必不可少的条件。,包含了运行类保证代码可以正常使用java自带的系统类。以及运行主体----java虚拟机 (Java Virtual Machine,JVM)。
JVM(Java Virtual Machine)java虚拟机
同一java程序可以跨平台运行的基础,不同平台的JVM java制定了同一套标准,使得不同的JVN之间可以同一套java程序,这也是为什么java采取“先编译后解释”---将.java文件先编译成系统不能直接运行的.class文件,而是由JVM运行的原因。JVM可以运行.class文件。
Java 的环境配置
下载java
下载地址:点击此处
根据您自己的系统位数以及需要来选择java版本,推荐下载1.8
配置环境变量变量
当安装完毕后,根据图片打开您的系统环境窗口
在系统变量框内新建一条JAVA_HOME 变量,值为您的JDK的目录。
在选择系统变量中Path 变量(若没有可以新建一个),点开
在右侧点击新建,新建一条值,值为您jdk所安装的目录中的bin目录
以上便是java环境配置。
命令行 运行Java
当我们完成java 环境的配置后,我们就可以在命令行开始使用Java了。
本节将介绍几种常用的 java命令行指令。
打开命令行,若非管理员,建议右键选择“以管理员身份运行”,打开后我们对命令行进行输入以下代码: java -version
若弹出以下内容则说明环境配置成功。
这个命令的含义是 java对传输version指令,以显示java版本。
我们接下来准备一个文本文件,将以下内容复制到文本文件中
Class Test{
public static void main(String[] args){
System.out.print("Hello!Java");
}
}
并将文本文件改名为 Test 并将后缀改为.java。(内容的含义之后会讲)。
之后进入命令行,使用 cd 命令进入存放您刚刚创建的.java文件的目录。
使用 javac Test.java 指令。若没有出错,我们可以发现在.java文件所在的目录生成了一个不可以直接打开的.class文件。这个命令用于编译java文件成class文件。
这个文件不能直接运行,需要放到java虚拟机(jvm)内进行解释。
然后我们进入命令行 输入 java Test 指令。用于运行java程序。
可以的得到如下效果
我们之前写入“Hello!Java”显示在了命令行。
总结一下:
java命令行最常用的几条指令:
1. java -version :用于在命令行内显示java版本。
2. javac “.java文件(包含后缀)” :用于编译命令行选择目录下的.java为.class文件,并生成到命令行选择目录。
3. java ".class文件名(不包含后缀,本质是后面要说的类名)" : 用于java运行指定的.class文件。
集成开发环境( Integered Development Environment,IDE)的选择
选择的是 IDEA ,这个开发工具提供的功能十分强大,可以对代码进行自动保存,检查代码冗余以及错误,警告等,还能提供插件安装,进行个性化设置。
Java代码基础
开始本节前,我们先清楚一些概念:
关键字(保留字):java中,环境自带的用户不能随意更改其含义的单词,字符等
命名规则:java规定的开发者自定名称必须遵守的规则。如java允许使用字母或者 $ _ 字符开头配合字母或者数字的单词组。
驼峰命名法: 一种约定俗成的命名建议,用各个连接的单词首字母大写来代替空格或者其他分隔符号。
类:在现实中,类是有着共同点的集合。如,虽然你我有着不同的样子,不同的名字,但我们都属于人类。java中也类似,Java中的类是有着共同特点或者目的的数据的集合。是java面向对象的直接体现
方法:是一种将同一功能代码集合起来,有着名称特定代码块。
java代码都是写入.java文件中,提交给java进行编译的,我们代码的编写都是在.java文件上进行的,本质上.java文件只是个文本文件。
java代码一般由类或者接口构成。由 class或者interface 关键字进行识别。.java文件的必须和类名或者接口名称相同,默认符合驼峰命名法,并且首字母大写,并且不能使用中文字符,符合命名规则。
main方法,是java的入口函数,命令行指令调用java程序时,实际调用的main方法,当调用该函数却没有main方法,或者main方法声明有误时,java将会报错。
Class Test{
public static void main(String[] args){
System.out.print("Hello!Java");
}
}
还是以这个代码为例,我们声明了一个名叫 Test 的类,并且为这个类添加了一个main方法作为入口,java可以通过main运行程序 ,即这条
System.out.print("hello!Java");
Java的数据类型
java的数据类型一般可以分为两类:
简单数据类型
数值型
即可以进行数学运算的数字数据类型。
只能表示整数的 byte(字节型,8位),short(短整型,16位),int(整型,32位) ,long类型(长整型,64位)
可以表示带小数的数字,以及极大数字的double(双精度浮点类型),float(单精度浮点类型)类型
此类数据类型一般都有一位作为符号位,这导致只有最长位-1位可以用来表示数字,超出所容纳范围将会发生溢出。
byte b = 125;
short s = 125;
int i = 100;//不带小数点的数值默认是整型类型。
long l1 = 100000l; //表示长整型是,需要在数字后面添加l;
long l2 = 100000L;//或者在数字后面添加L;
float f1 = 10.0f;//表示单精度浮点类型时,需要在数字后面添加f;
float f2 = 10.0F;//或者在数字后面添加F;
double d = 10.0;//带小数点的数值默认是双精度浮点类型。
字符(char)
本质上是数值,但是可以表示字符,通过数值记录字符的Unicode(万国码)编码。所以可以通过int类型表示,并且可以进行数学运算。以下是字符三种表达方式,表达的内容都是字符 A
char c1 ='A';
char c2 = '\u0041';
char c3 = 65;
第一种方式 :'A' 单引号包含单个想表达的字符。
第二种方式 :'\u0041' 单引号包含 \u 表示这是一个Unicode编码,后续跟上四位16机制的数字。
第三种方式 :65 直接使用int类型数字进行表达。
布尔类型(boolean)
表示真或假的数据类型,只有两个值 true false,没有其他取值,其他类型不能直接转换为该类型。
boolean b1 = true;
boolean b2 = false;
引用数据类型
类
后续进行详细说明。
接口
后续进行详细说明。
数组
一种引用数据类型,我们先来讲它的命名格式。
//在数据类型后面添加 [] 表示这是一个数组变量
//命名1:通过new关键字声明一个同类型的数组,并在后面跟上加上 {},
//并在其中添加内容,通过 , 分隔内容。
int[] i=new int i[]{1,2,3};
//命名2:通过new关键字声明一个同类型的数组,并在后一个 [] 中添加数组长度。
int[] i=new int i[3];
//命名1:直接使用 {} 表示数组,并在其中添加内容
int[] i={1,2,3};
请注意声明3只能在声明变量时才能这样赋值。
我们可以通过,变量名加上 [] 并在 [] 内部添加大于等于0小于数组长度的整数数值,表示特定位置的内容(元素)。
int[] i ={1,2,3};
System.out.print(i[1]);
控制台将会输出 i 中的 2
Java 运算符以及表达式
表达式
i=1;
这是一个经典的的赋值表达式,通过=将右侧的值赋予变量 i;使得 i 的值为1.
true&&false
这是一个简单的boolean表达式,值是可知的,并且结果只有 true 或者 false。
运算符
算术运算符(即数学中的运算符):+(加法)-(减法)*(乘法)/(除法)%(取余数)
逻辑运算符:& 或者&&(与,有假出假) | 或者||(或,有真出真) !(非,取反)
值得注意的是。&与&&,以及|与||虽然功能相同,但是在已经确定了表达式真假后判断的时间可能会不同。如
boolean a=false;
true || a;
true | a;
第一条在判断出结果后。将不再判断直接出值。第二条判断出结果后还将继续判断后续内容。
字符拼接符:+(字符拼接符)。当字符串与其他类型相连的+字符将被识别为字符拼接符,连接两个类型。
Java 语句结构
顺序结构
即从上至下的运行结构
选择结构
即分叉结构,当满足一定条件时选择特定路线,同一选择路线将不再进行。
比如 if()else;switch()
当if()括号中的的条件是真时,将执行if所负责的代码块,否则则执行else的内容。
switch需要配合case进行。
int a=1;
swtich(a){
case 1:
//代码块
break;
case 2:
//代码块
break;
case 3:
//代码块
break;
default:
//代码块
}
当case后面跟着的值与 switch相同时,将从那个case开始执行,若遇到break,则结束整个switch
循环结构
在满足一定条件下时可以持续循环特定路线。
比如 while() for()
当条件为真时,将把负责的循环条件在进行一遍。