0001JavaSE阶段-学习Java第一天环境搭建

一起来学习Java吧,第一天就从历史开始吧

1、Java历史:(了解)
1、诞生于SUN(Standford University Network)
2、大概于1996年发布正式的第一版
3、Java之父:詹姆斯.高斯林
4、2009年SUN被Oracle(甲骨文)收购
5、目前学习(开发)的版本是Java8
6、最新版本:Java12
7、Java分为三大方向:JavaSE,JavaEE,JavaME
Java9尝试把JavaSE,JavaEE,JavaME合起来。用模块的方式进行区分。

2、Java的特点(了解)
(1)面向对象:关注类、对象、接口等,以及继承、实现等关系
(2)强类型:关注数据类型
(3)体系中立的:字节码.class文件
(4)垃圾回收:GC

3、Java语言运行机制:跨平台
跨平台性:通过Java语言编写的应用程序在不同的系统平台上都可以运行。
“Write once , Run Anywhere”一次编写,处处运行。

原理:Java程序不是直接运行在操作系统上,而是运行在JVM(Java Virtual Machine)。
而不同的操作系统平台,可以安装不同的JVM。这个虚拟机只要下载安装就可以了,
程序员不用管,程序员只要关注自己的Java程序就可以。

Java程序开发和运行的步骤:
1、编写Java代码,保存的代码的文件.java
后缀名:.txt,.doc,.jpg,.mp4等
2、编译Java代码为字节码,字节码文件.class
为什么要编译为字节码呢?因为JVM只认识字节码,不认识Java代码
3、运行字节码
把字节码再转成CPU能执行的机器指令。

 

 

 

 

4、开发环境搭建
(1)
JDK:Java Developer's Kit,Java开发工具包
JDK = JRE + 开发工具集
JRE:Java Runtime Environment,Java运行环境
JRE = JVM + 核心类库(提前写好的代码)
JVM:Java Virtual Machine,Java虚拟机,
运行Java程序需要用到JVM

如果仅仅是运行Java程序,只要装JRE就可以了,不需要装JDK。
如果是要开发Java程序,那么必须安装JDK。

(2)下载与安装
网址:www.oracle.com
下载时注意:是什么平台
例如:windows的64位:jdk-8u141-windows-x64.exe

安装:傻瓜式安装
提醒:
①以后我们作为开发人员,安装软件时,要避免中文目录
②每一个软件的安装建立自己的目录

(3)卸载
①控制面板
②通过“360”或“电脑管家”进行卸载

 

5、环境变量
为什么要配置环境变量?
windows等操作系统,默认是在当前路径下找“命令”等工具的。
如果我希望它在我指定的目录下去查找这个“命令”,那么我就要
在path这个环境变量中,把目录添加上去。

windows等操作系统,除了在当前目录下查找,还会去path环境变量指定的目录下搜索命令。

【计算机】-》右键-》【属性】-》【高级系统设置】-》【高级】-》【环境变量】

【用户环境变量】只针对当前用户(操作系统登录的用户)
【系统环境变量】针对所有用户的

path=D:\ProgramFiles\Java\jdk1.8.0_141\bin;之前的环境变量的值
说明:;必须是英文状态下,半角输入,用于和其他原有的环境变量的分割
Win7
D:\ProgramFiles\Java\jdk1.8.0_141\bin;D:\ProgramFiles\mysql\mysql-5.6.26-winx64-server\bin;D:\ProgramFiles\tomcat\apache-tomcat-8.0.24\bin;d:\ProgramFiles\2345Soft\HaoZip;C:\Program Files (x86)\Intel\iCLS Client\;C:\Program Files\Intel\iCLS Client\;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files\Intel\Intel(R) Management Engine Components\IPT;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\IPT;C:\Program Files\Intel\WiFi\bin\;C:\Program Files\Common Files\Intel\WirelessCommon\;C:\Program Files\Lenovo\Fingerprint Manager Pro\;C:\Program Files (x86)\Common Files\Lenovo;C:\SWTOOLS\ReadyApps;D:\ProgramFiles\MySQL\MySQL Server 5.5\bin

Win10
表格形式,一行一个环境变量

重点解析:关于JDK的安装和环境变量的搭建

四、开发环境搭建

JVM、JRE、JDK介绍

运行Java程序 需要用到JVM

JDK Java Developer’s Kit Java 开发工具

JDK集成了JRE 也就是说

JDK=JRE(运行环境)+开发工具

JER=JVM+加核心类库(提前写好的代码)

JVM=Java Virtual MachIne (Java虚拟机,用来运行Java程序的)

 

如果仅仅只是运行程序,只需要装JRE

如果要开发 必须要安装JDK(JDK里面包含JRE)

 

1安装JDK

www.oracel.com

官网

下载Java8(目前最新的应该已经Java14或者12了但是目前最稳定和最广泛的是Java8)

 

 

 

 

下载的版本选择

 

 

 

 

 

 

 

 

 

下载完之后安装,注意没有必要装两个JRE

 

 

 

 

 

安装时避免中文目录,注意安装完成之后没有桌面图标的,如何验证是否安装成功,打开命令窗口 win+R

 

 

 

 

 

 

输入javac,,如果说不是内部或外部命令,那就是没有配置环境变量

 

 

 

 

 

你要注意的是,它是在C:\Windows\System32 下找不到javac命令,那我们去安装目录D盘好了

 

 

 

 

 

 

 

 

 

 

 

这样就找到了

 

 

但是这样太麻烦了,每次得cd这么多层,我们希望在任意目录下找到javac

 

 

 

 

 

然后下一步就是配置环境变量

配置环境变量Win7和Win10稍微有些不同,下面以Win10和Win7分别演示,以Win10为主

编辑系统环境变量即可,非常简单,注意我们要改的是系统环境变量

 

 

 

 

 

 

win7里面切记不要把path全部删掉,直接通过分号在后面加,Win10比较简单,因为帮你换了行,直接加就行

配置完成之后,重启cmd即可,然后直接就能找到我们的javac编译程序了

 

 

 

可以查看一下版本,,目前我市安装的java8

 

 

 

 

然后做几个练习题,由于我有C#j基础,所以就不从最基础语法开始讲了,基本的语法很简单,不需要赘述

 

 

 

 

 

 

 

不报错说明编译通过,注意java里面字符编码是有要求的,必须是

ANSI码,如果不是可能会报错,可以通过notPad++自动转换

然后运行看一下

 

不报错说明编译通过,注意java里面字符编码是有要求的,必须是

ANSI码,如果不是可能会报错,可以通过notPad++自动转换

 

 

编译通过之后再运行

 下面说几个注意事项

 

char数据类型,去细品,不是你想象中的那样哦

 

 

 

 最后最重要的就是练习题了,不管学了什么都要去做大量的练习才能记得牢固,如果需要练习题,可以私信,我可以发给你

 

至此JavaSE基础环境安装入门已经告一段落,后续持续更新,大家一起交流,一起进步

/*public class Test1{public static void main(String[]args){System.out.println("![](img\1.jpg)");}}*//*## 第一题
* 按步骤编写代码,效果如图所示:
![](img\1.jpg)
* 编写步骤:
1. 定义类 Test12. 定义 main方法3. 控制台输出5行字符串类型常量值4. 控制台输出5行字符类型常量值*//*public class Test1{public static void main(String[]args){System.out.println("善学如春起之苗");System.out.println("不见其增,日有所长");System.out.println("假学如磨刀之石");System.out.println("不见其损,年有所亏");System.out.println("假学如磨刀之石");
  System.out.println('J');  System.out.println('A');  System.out.println('V');  System.out.println('A');  System.out.println('!');}}
*//*## 第二题
* 按步骤编写代码,效果如图所示:* 编写步骤:  1. 定义类 Test2  2. 定义 main方法  3. 控制台输出5行整数类型常量值  4. 控制台输出5行小数类型常量值*//*  class Test2{ public static void main(String []  args){ System.out.println(5+""); } } */ /*第三题  1. 定义类 Test3  2. 定义 main方法  3. 控制台输出所有布尔类型常量值
 *//* class Test3 {      public static void main(String[] args) {          // 控制台输出所有布尔类型常量值          System.out.println(true);          System.out.println(false);      } } */ /*第四题   1. 定义类 Test4  2. 定义 main方法  3. 定义2个 byte类型变量,分别赋byte类型范围内最大值和最小值,并输出在控制台.  4. 定义2个 short类型变量,分别赋short类型范围内的值,并输出在控制台.  5. 定义2个 int类型变量,分别赋int类型范围内的值,并输出在控制台.  6. 定义2个 long类型变量,分别赋超过int类型范围的值,并输出在控制台. */class Test4{public static void main(String[]args){byte num1=-128;byte num2=127;System.out.println(num1);System.out.println(num2);short s1=-32768;short s2=32767;System.out.println(s1);System.out.println(s2);int num5=-2147483648;int num6=2147483647;System.out.println(num5);System.out.println(num6);long num7=-2147483649L;long num8=2147483649L;System.out.println(num7);System.out.println(num8);}}/*第五题:* 编写步骤:  1. 定义类 Test5  2. 定义 main方法  3. 定义2个 float类型变量,分别赋值,并输出在控制台.  4. 定义2个 double类型变量,分别赋值,并输出在控制台.*/class Test5{ public static void main(String[]args){ //定义2个float类型变量,分别赋值,并输出在控制台 float num1=-3.14F; float num2=3.14F; System.out.println(num1); System.out.println(num2); } } /* 第六题:1. 定义类 Test62. 定义 main方法3. 定义5个 char类型变量,分别赋值,并输出在控制台.4. 定义2个 boolean类型变量,分别赋值,并输出在控制台. */ class Test6{ public static void main(String[]args){ char char1=1; char char2=2; char char3='3'; char char4=4; char char5='5'; System.out.println(char1); System.out.println(char2); System.out.println(char3); System.out.println(char4); System.out.println(char5); boolean bool1=true; boolean bool2=false; System.out.println(bool1+"  "+bool2); } }  class Test6_1{ public static void main(String[]args){ char char1='9'; char char2='j'; char char3='a'; char char4=' '; char char5='@'; System.out.println(char1); System.out.println(char2); System.out.println(char3); System.out.println(char4); System.out.println(char5); boolean bool1=true; boolean bool2=false; System.out.println(bool1+"  "+bool2); } } /*第七题  1. 定义类 Test7  2. 定义 main方法  3. 定义两个整数变量a,b并赋值  4. 控制台输出变量a,b互换前的值  5. 定义一个第三方变量temp,不赋值  6. 利用第三方变量temp使a,b的值互换  7. 控制台输出变量a,b互换后的值 */ class Test7{ public static void main(String[] args){ int num1=1; int num2=2; System.out.println(num1); System.out.println(num2); int temp; temp=num1; num1=num2; num2=temp; System.out.println(num1); System.out.println(num2); } } /*第八题   1. 定义类 Test8  2. 定义 main方法  3. 定义2个int类型变量x、y,x赋值为100,y赋值为200  4. 定义新变量add,保存变量x,y的和并打印到控制台  5. 定义新变量sub,保存变量x,y的差并打印到控制台  6. 定义新变量mul,保存变量x,y的积并打印到控制台  7. 定义新变量div,保存变量x,y的商并打印到控制台 */ class Test8{ public static void main(String[]args){ int x=100; int y=200; int add=x+y; System.out.println("x,y的和:"+add); int sub=x-y; System.out.println("x,y的差:"+sub); int mul=x*y; System.out.println("x,y的积:"+mul); int div=x/y; System.out.println("x,y的商:"+div); } } /* 第九题  1. 定义类 Test9  2. 定义 main方法  3. 定义2个double类型变量x、y,x赋值为100.8,y赋值为20.6  4. 定义新变量add,保存变量x,y的和并打印到控制台  5. 定义新变量sub,保存变量x,y的差并打印到控制台  6. 定义新变量mul,保存变量x,y的积并打印到控制台  7. 定义新变量div,保存变量x,y的商并打印到控制台 - 开发提示:观察小数类型数值运算后的结果.   小数运算经常出现精度丢失的问题,不建议使用基本类型运算. */  class Test9{ public static void main(String[]args){ double x=100.8; double y=20.6; int add=(int)(x+y); double add2=x+y; System.out.println("x,y的和:"+add); System.out.println("x,y的和:"+add2); } } /*第十题   1. 定义类 Test10  2. 定义 main方法  3. 定义byte类型变量,并赋值为10,不换行输出类型说明,换行输出变量值。  4. 定义short类型变量,并赋值为100,不换行输出类型说明,换行输出变量值。  5. 定义int类型变量,并赋值为1000,不换行输出类型说明,换行输出变量值。  6. 定义long类型变量,并赋值为10000,不换行输出类型说明,换行输出变量值。  7. 定义float类型变量,并赋值为100000.0,不换行输出类型说明,换行输出变量值。  8. 定义double类型变量,并赋值为1000000.0,不换行输出类型说明,换行输出变量值。  9. 定义char类型变量,并赋值为'Z',不换行输出类型说明,换行输出变量值。  10. 定义boolean类型变量,并赋值为false,不换行输出类型说明,换行输出变量值。  - 开发提示:不换行的输出  ```java  System.out.print("整数类型-byte:"); // 去掉ln ,输出内容后,没有换行  System.out.println(10);// 带有ln,输出内容后,带有换行  ``` */   class Test10{ public static void main(String[]args){ byte b=10; System.out.print("整数类型(字节数据类型)-byte:"); System.out.println(b);           short s = 100;        System.out.print("整数类型-short:");        System.out.println(s);        int i = 1000;      System.out.print("整数类型-int:");      System.out.println(i);float f=10000.0F;System.out.print("小数类型-float");System.out.println(f);char c='z';System.out.print("字符类型-char:");System.out.println(c);boolean bo=false;System.out.print("布尔类型-boolean:");System.out.println(bo); } }                            

posted @ 2020-06-12 00:17  猛兽总是独行  阅读(99)  评论(1编辑  收藏  举报