java基础详细讲解

java基础

java之父:詹姆斯·高斯林(James Gosling)

java三大平台版本

J2ME(Java 2 Platform Micro Edition)小型版
是为开发电子消费产品和嵌入式设备提供的解决方案

J2SE(Java 2 Platform Standard Edition)标准版
是为开发普通桌面和商务应用程序提供的解决方案
该技术体系是其他,可以完成一些桌面应用程序的开发两者的基础

J2EE(Java 2 Platform Enterprise Edition)企业版
是为开发企业环境下的应用程序提供的一套解决方案
该技术体系中包含的技术如 Servlet、Jsp等,主要针对于Web应用程序开发

java特点

简单性

抛弃了c语言中复杂的指针等操作,使程序开发更加的简单快捷

面向对象

java语言最重要的特性(封装、继承、多态)

可移植性(跨平台)

java基于虚拟机实现了多平台兼容

分布式

java将系统某一功能单独运行

多线程

程序运行期间运行同时执行多个代码

动态性

java默认提供简单开发工具环境,在后期使用可以进行动态的添加

健壮性

基于java健全的代码检测机制,在代码编译阶段对代码进行语法与逻辑上的简单纠错

安全性

java执行的是编译后的文件,不允许被修改只能执行

JDK/JRE/JVM关系

JRE(Java Runtime Environment Java运行环境)
包括Java虚拟机(JVM Java Virtual Machine)和Java程序所需的核心类库等,如果想要运行一个开发好的Java程序,计算机中只需要安装JRE即可。
JDK(Java Development Kit Java开发工具包)
JDK是提供给Java开发人员使用的,其中包含了java的开发工具,也包括了JRE。所以安装了JDK,就不用在单独安装JRE了。 其中的开发工具:编译工具(javac.exe) 执行工具(java.exe) 打包工具(jar.exe)等
JVM(JVM Java Virtual Machine java虚拟机)
简单而言:使用JDK开发完成的java程序,交给JRE去运行。(jvm保证跨平台)

jdk包含jre以及执行打包编译指令

jre包含jvm以及java执行必要的库

jvm用于执行编译好的java代码

jdk的下载与安装

输入cmd打开命令行工具,输入javac与java如果提示
java基础详细讲解

则当前电脑没有安装jdk

1、官网下载jdk

2、安装jdk

1)双击安装包,选择安装版本与路径

java基础详细讲解

开发工具:默认选择,安装jdk

源代码:只安装源代码

公共jre:只安装java运行环境

注意:如果选择默认路径记住默认路径,如果修改路径,不会创建文件夹会将jdk直接安装到选择的文件夹

2)进行安装

jdk10之前进行安装时,会进行jdk与公共jre的安装,在jdk安装过程中会继续弹出jre安装页面

java基础详细讲解

3)检测安装的公共jre是否安装成功

打开cmd命令行工具,输入java(java运行指令)

4)配置java环境变量

配置Java开发环境

JAVA_HOME:JDK的安装目录

提供第三方软件支持(例如开发工具)

CLASSPATH:去哪里找需要运行的class文件

用于指定编译的class文件存储的位置

(jdk1.5版本以后不需要配置,已经进行了默认配置,不要配错)

path:去哪里找编译或运行等工具(必须设置)

用于告诉系统指令所在的位置

①右键电脑属性选择高级系统设置

java基础详细讲解

②选择高级选项选择环境变量

java基础详细讲解

java基础详细讲解

③修改环境变量

java基础详细讲解

正常情况下应该没有JAVA_HOME需要新建,如果已有点击编辑,变量名固定为JAVA_HOME,变量值为安装jdk所在路径

java基础详细讲解

JAVA_HOME:C:Program FilesJavajdk1.8.0_261

C:Program FilesJavajdk1.8.0_261

修改path,注意path存在很多系统环境配置,不要进行额外的修改,在最前面添加%JAVA_HOME%/bin;

5)通过javac命令验证

常见问题:“javac不是内部或者外部命令”,原因是path配置错误
避免C:WINDOWSsystem32出现所有名字以java开头的文件,有,删之;
注:jdk不要安装在带中文的路径下,最好也是不包含空格字符的英文路径;重新打开cmd命令工具进行验证

出现错误解决方案:

1)path写错了

验证方法:cmd命令行输入path查看结果

java基础详细讲解

如果指定位置路径错误则为path配置错误

2)javahome写错了

修改javahome环境变量

3、jdk的卸载

1)打开程序选择java进行卸载

java基础详细讲解

2)打开存储jdk的文件夹删除残留文件

3)删除响应的环境变量(不删除也可以)

hello world的书写

1.创建指定名称的文件

2.将文件后缀改为java

3.编写指定文件

public class HelloWorld{
	public static void main(String [] args){
		System.out.println("hello world");
	}
}

4.使用cmd命令找到指定文件(.java)并编译

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ITNroBI7-1604393680390)(D:/teacher/笔记/img/image-20201009140709845.png)]java基础详细讲解

语法:javac 编译文件的全名

编译成功后会生成同名的class文件

5.使用cmd命令找到指定文件(.class)并执行

java基础详细讲解

代码书写可能出现问题的地方:

①class后的类名要求与文件名一致

②严格区分大小写

③输出语句结束使用;(以}结尾省略;)

④java执行时输入类名

⑤javac编译时输入文件全名

java执行流程

java基础详细讲解

注释

用于解释说明程序的文字

Java中注释分类格式
单行注释 格式: //注释文字

以//开头注释本行后所有内容

多行注释 格式: /* 注释文字 */

以 /* 开头以 */结尾 可以注释多行内容

文档注释 格式:/** 注释文字 */

以/**开头以 */结尾 也可以注释多行内容并进行标签标注(不常用)

public class HelloWorld{//声明一个名为HelloWorld的类
	public static void main(String [] args){
		/*
		主方法用于执行一个类,当执行一个类的时候默认执行这个类的主方法
		*/
		System.out.println("asdasdasdsaazdvv");
		System.out.println("asdasdasdsaazdvv");
		System.out.println("asdasdasdsaazdvv");
		System.out.println("asdasdasdsaazdvv");
		/**
		@autor:作者
		@time:时间
		*/
	}
}

在程序编译阶段,jvm虚拟机在编译时会自动忽略注释

注释的作用:

1.用于已有代码的功能标识

		/**
		在类名上写文档注释  标识作者、时间、版本、功能
		@autor:作者
		@time:时间
		*/
public class HelloWorld{
	/*
	在方法上书写多行注释   标识方法功能 参数  返回类型 出现错误信息
	*/
	public static void main(String [] args){	
		//在每行代码上书写单行注释 用于标识单行代码功能
		System.out.println("asdasdasdsaazdvv");
		System.out.println("asdasdasdsaazdvv");
		System.out.println("asdasdasdsaazdvv");
		System.out.println("asdasdasdsaazdvv");

	}
}

2.在初期书写代码是进行思路整理

public class HelloWorld{
	public static void main(String [] args){	
		//在代码书写中明确执行步骤
		//使用注释先以文字的形式将代码执行的过程进行书写
		//书写完毕后根据注释再进行代码的书写
		System.out.println("asdasdasdsaazdvv");	
	}
}

3.用于缓解程序员孤身一人加班书写代码时**的精神

/*
 *        ┏┓       ┏┓+ +
 *       ┏┛┻━━━━━━━┛┻┓ + +
 *       ┃       ┃
 *       ┃   ━   ┃ ++ + + +
 *       █████━█████  ┃+
 *       ┃       ┃ +
 *       ┃   ┻   ┃
 *       ┃       ┃ + +
 *       ┗━━┓    ┏━┛
 *               ┃    ┃
 *         ┃    ┃ + + + +
 *         ┃   ┃ Code is far away from     bug with the animal protecting
 *         ┃   ┃ +              神兽保佑,代码无bug
 *         ┃   ┃
 *         ┃   ┃  +
 *         ┃    ┗━━━┓ + +
 *         ┃      ┣┓
 *         ┃      ┏┛
 *         ┗┓┓┏━━━┳┓┏┛ + + + +
 *          ┃┫┫  ┃┫┫
 *          ┗┻┛  ┗┻┛+ + + +
 */

关键字

在java中被赋予特殊含义(功能)的单词,全部由小写字母组成

一共有51+2个关键字。其中goto conest为保留关键字

java基础详细讲解

java基础详细讲解

标识符

在代码书写过程中只要是我们自己命名都可以称之为标识符

组成规则:

以字母、数字、下划线_、美元符号$组成,不能以数字开头,不能使用关键字命名(可以组成或修改大小写),严格区分大小写

命名规范:

针对于不同位置的命名,使用不同的规范要求,通用要求:

见名知意:根据名字知道功能

驼峰命名法:当名字由多个单词组成,除首个单词外其余单词首字母大写

(其实就是文件夹,用于解决相同类名问题)

小写单个单词多个包使用.分隔

类或者接口

要求首字母大写

方法和变量
首字母小写
常量
所有字母均大写,多个单词组成使用_连接

常量

在程序运行过程中不允许被改变的量称之为常量

常量声明格式

final 数据类型 常量名=值;

字符串常量 用双引号括起来的内容
整数常量 所有整数
12,23+
小数常量 所有小数
12.34,56.78
字符常量 用单引号括起来的内容
‘a’,’A’,’0’
布尔常量 较为特有,只有true和false
空常量 null(数组部分讲解)

在代码书写阶段进行定义死了的值,在程序运行中只能使用指定值

变量

在程序运行过程中可以被改变的量称之为变量

变量定义格式
数据类型 变量名 = 初始化值;
注意:格式是固定的,记住格式,以不变应万变
作用范围:定义开始到定义它的代码块结束;
注意:同一范围内,不允许多个局部变量命名冲突
定义开始到定义它的代码块结束

底层原理:

开辟内存空间,命名空间并存储数据

开辟空间存储数据是在赋值阶段进行的

java数据类型

java中的数据类型分为两大类基本数据类型与引用数据类型(类类型)

基本数据类型分为四类八种

java基础详细讲解

其中,在开发过程中,直接书写的整数默认int类型,小数默认doule类型

java基础详细讲解

变量声明时指定数据类型,是为了开辟指定大小的空间进行数据的存储

字符串类型String 用于保存字符串

基本数据类型的转换

按照转换类型分为

强制类型转换:强制进行数据的转换

语法:
目标类型 变量名=(目标类型)(被转换的数据);

自动类型转换:自动进行数据的转换

数值直接数据类型小的向大的自动转换

byte,short,char—int—long—float—double
byte,short,char相互之间补转换,他们参与运算首先转换为int类型

运算符会自动进行类型的转换,但如果是通过变量对数据进行运算那么不会进行转换

匿名

发表评论

匿名网友