zoukankan      html  css  js  c++  java
  • 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:ProgramFilesJavajdk1.8.0_141in;之前的环境变量的值
    说明:;必须是英文状态下,半角输入,用于和其他原有的环境变量的分割
    Win7
    D:ProgramFilesJavajdk1.8.0_141in;D:ProgramFilesmysqlmysql-5.6.26-winx64-serverin;D:ProgramFiles omcatapache-tomcat-8.0.24in;d:ProgramFiles2345SoftHaoZip;C:Program Files (x86)InteliCLS Client;C:Program FilesInteliCLS Client;C:Windowssystem32;C:Windows;C:WindowsSystem32Wbem;C:WindowsSystem32WindowsPowerShellv1.0;C:Program FilesIntelIntel(R) Management Engine ComponentsDAL;C:Program Files (x86)IntelIntel(R) Management Engine ComponentsDAL;C:Program FilesIntelIntel(R) Management Engine ComponentsIPT;C:Program Files (x86)IntelIntel(R) Management Engine ComponentsIPT;C:Program FilesIntelWiFiin;C:Program FilesCommon FilesIntelWirelessCommon;C:Program FilesLenovoFingerprint Manager Pro;C:Program Files (x86)Common FilesLenovo;C:SWTOOLSReadyApps;D:ProgramFilesMySQLMySQL Server 5.5in

    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:WindowsSystem32 下找不到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("![](img1.jpg)");}}*//*## 第一题
    * 按步骤编写代码,效果如图所示:
    ![](img1.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); } }                            

  • 相关阅读:
    java jar包运行方法
    java记录异常日志的7条规则
    java与javax有什么区别?
    java程序如何优化--技巧总结
    java中各种时间格式的转化
    java GC(Garbage Collector) | System.gc()
    java位移操作
    java 逻辑运算符 短路(条件操作)
    命令行运行java
    java使用Runtime.exec()运行windwos dos或linux shell命令
  • 原文地址:https://www.cnblogs.com/liliang07/p/13096979.html
Copyright © 2011-2022 走看看