01-Java基础语法

简介: day01_Java基础一、课程目标1. 【了解】Java语言发展史                          2. 【理解】Java语言平台版本3. 【理解】Java语言特点4. 【理解】JRE与JDK5. 【掌握】Java开发环境搭建6. 【掌握】第一个Java程序7. 【掌握】注释8. 【理解】关键字/标识符 二、Java语言概述2.1 Java语言发展史Java之父:詹姆斯·高斯林(James Gosling)

 day01_Java基础

一、课程目标

1. 【了解】Java语言发展史                          

2. 【理解】Java语言平台版本

3. 【理解】Java语言特点

4. 【理解】JRE与JDK

5. 【掌握】Java开发环境搭建

6. 【掌握】第一个Java程序

7. 【掌握】注释

8. 【理解】关键字/标识符

二、Java语言概述

2.1 Java语言发展史

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

image.gif编辑

1977年获得了加拿大卡尔加里大学计算机科学学士学位,1983年获得了美国卡内基梅隆大学计算机科学博士学位,毕业后到IBM工作,设计IBM第一代工作站NeWS系统,但不受重视。后来转至Sun公司,1990年,与Patrick,Naughton和Mike Sheridan等人合作“绿色计划”,后来发展一套语言叫做“Oak”,后改名为Java。

image.gif编辑

2.2 Java语言平台版本

    • JavaSE(Java Platform Standard Edition)标准版

    是为开发普通桌面和商务应用程序提供的解决方案 该技术体系是其他,可以完成一些桌面应用程序的开发两者的基础

    • JavaME(Java Platform Micro Edition)小型版

    是为开发电子消费产品和嵌入式设备提供的解决方案,已经被安卓 IOS

    • JavaEE(Java Platform Enterprise Edition)企业版

    是为开发企业环境下的应用程序提供的一套解决方案

    2.3 Java语言特点

    简单性 面向对象 分布式
    可移植性(跨平台) 多线程 动态性
    健壮性 安全性 开源

    2.4 Java跨平台

    2.4.1 什么是平台

    通过Java语言编写的应用程序在不同的系统平台上都可以运行

    2.4.2 跨平台的原理

    只要在需要运行java应用程序的操作系统上,先安装一个Java虚拟机(JVM Java Virtual Machine)即 可。由JVM来负责Java程序在该系统中的运行。

    2.4.3 图解

    image.gif编辑

    2.4.4 总结

    因为有了JVM,所以同一个Java程序在三个不同的操作系统中都可以执行。这样就实现了Java程序的可移植性。也称为Java具有良好的跨平台性。

    2.5 JDK、JRE、JVM

      • JDK(Java Development Kit Java开发工具包)

      JDK是提供给Java开发人员使用的,其中包含了java的开发工具,也包括了JRE。所以安装了JDK,就不用在单独安装JRE了。

      其中的开发工具:编译工具(javac.exe) 执行工具(java.exe) 打包工具(jar.exe)等

      • JRE(Java Runtime Environment Java运行环境)

      包括Java虚拟机(JVM Java Virtual Machine)和Java程序所需的核心类库等,如果想要运行一个开发好的Java程序,计算机中只需要安装JRE即可。

      • JVM(Java Virtual Machine Java虚拟机)

      整个java实现跨平台的最核心的部分,保证程序的跨平台性,以及编译执行写好的java程序!

      • 总结

      使用JDK开发完成的java程序,交给JRE去运行。由jvm保证跨平台性。

      JDK、JRE、JVM 之间的关系

      image.gif编辑

      总结

      JDK 包含JRE JRE包含JVM ,开发中我们只需要安装JDK即可!

      2.6 JDK的下载安装

      2.6.1 下载JDK

      通过官方网站获取JDK Oracle | Cloud Applications and Cloud Platform

      注意:针对不同的操作系统,需要下载对应版本的JDK

      2.6.2 安装JDK

      傻瓜式安装,下一步即可。但默认的安装路径是在C:\Program Files下,为方便统一管理建议修改安装路径,将与 开发相关的软件都安装到一个目录下,例如:E:\develop。 注意:安装路径不要包含中文或者空格等特殊字符(使用纯英文目录)。

      三、DOS命令

      3.1 为什么学习DOS命令

      在接触集成开发环境之前,我们需要使用命令行窗口对java程序进行编译和运行,所以需要知道一些常用DOS命 令。也为以后学习Linux等其他内容做一些准备!

      3.2 如何打开DOS命令窗口

      打开命令行窗口的方式:

        • win + r 打开运行窗口,输入cmd,回车。
        • 点击win窗口图标,输入cmd,选择命令提示符

        3.3 常用的DOS命令

        操作 说明
        盘符名称: E:回车,表示切换到E盘。
        dir 查看当前路径下的内容。
        cd 目录 进入单级目录。cd JavaSE
        cd.. 回退到上一级目录。
        cd 目录1\目录2... 进入多级目录。cd JavaSE\baiyunshan
        cd\或cd/ 回退到盘符目录。
        cls 清屏。
        exit 退出命令提示符窗口。

        四、环境搭建

        4.1 配置开发环境

        4.1.1 为什么配置环境变量

        开发Java程序,需要使用JDK提供的开发工具(比如javac.exe、java.exe等命令),而这些工具在JDK的安装目录的 bin目录下,如果不配置环境变量,那么这些命令只可以在该目录下执行。我们不可能把所有的java文件都放到JDK 的bin目录下,所以配置环境变量的作用就是可以使bin目录下的java相关命令可以在任意目录下使用。

        4.1.2 配置步骤

        首先右键【此电脑】---> 选择【属性】---> 点击左侧的【高级系统设置】 ---> 点击【环境变量】---> 在下方的【系统变量】中点击【新建】

        image.gif编辑

        新建变量名为【JAVA_HOME】,变量值我们点击【浏览目录】,选择jdk的安装路径jdk1.8.0_121文件夹 然后点击【确定】

        找到path路径中写 %JAVA_HOME%\bin; ,放在最前面,不要忘了加英文的分号

        image.gif编辑

        4.2 测试开发环境

        通过javac和java命令验证 注意 :如果提示 javac不是内部或者外部命令,原因是path配置错误, 重新按照上一步的步骤进行配置即可!

        避免C:\WINDOWS\system32出现所有名字以java开头的文件,有,删之;

        注意 :jdk不要安装在带中文的路径下,最好也是不包含空格字符的英文路径;

        image.gif编辑

        image.gif编辑

        五、HelloWorld案例

        5.1 Java程序开发运行流程

        开发Java程序,需要三个步骤:编写源程序,编译程序,运行程序

        image.gif编辑

        5.2 编写HelloWorld程序

          1. 新建文本文档文件,修改名称为HelloWorld.java
          2. 用记事本打开HelloWorld.java文件,输写程序内容

          public class HelloWorld {

             public static void main(String[] args) {

                 System.out.println("HelloWorld");

             }

          }

          1. HelloWorld案例的编译和运行

          编译:javac 文件名.java

          范例:javac HelloWorld.java

          ////////////////////////////////////////////////////////////////////

          执行:java 类名

          范例:java HelloWorld

          5.3 HelloWorld常见问题

            1. 大小写问题。Java语言对大小写敏感(区分大小写)
            2. 非法字符问题。Java中的符号都是英文格式的
            3. 在系统中显示文件的扩展名,避免出现HelloWorld.java.txt文件
            4. 编译命令后的java文件名需要带文件后缀.java
            5. 运行命令后的class文件名(类名)不带文件后缀.class

            5.4 Notepad++软件的安装和使用

            5.4.1 为什么要使用Notepad++软件

            Notepad++功能比windows中的自带记事本功能强大,除了可以用来制作一般的纯文字说明文件,也十分适合编写计算机程序代码。Notepad++有行号,能够快速定位问题位置,还有语法高亮度显示、代码折叠等功能。而且它是免费的。

            5.4.2 Notepad++软件安装

            安装:傻瓜式安装,一直下一步即可。建议也安装到统一的开发软件目录下,比如E:\develop。

            具体安装步骤请参见《Nodepad++软件安装及配置说明》文档。

            5.4.3 Notepad++软件配置

            安装完毕之后,为了使用方便,做一个简单的配置:修改默认语言和编码。

            具体配置的说明请参见《Nodepad++软件安装及配置说明》文档。

            六、Java基础语法

            6.1 注释

            6.1.1 什么是注释

            注释是对代码的解释和说明文字,可以提高程序的可读性,因此在程序中添加必要的注释文字十分重要

            6.1.2 注释的分类

              • 单行注释

              单行注释的格式是使用//,从//开始至本行结尾的文字将作为注释文字

              // 这是单行注释文字

              • 多行注释

              多行注释的格式是使用/* 和 */将一段较长的注释括起来

              /*

              这是多行注释文字

              这是多行注释文字

              这是多行注释文字

              */

              // 注意:多行注释不能嵌套使用。

              • 文档注释

              文档注释以/**开始,以*/结束

              /**

                这是文档注释的内容

              */

              6.2 关键字

              6.2.1 什么是关键字

              关键字是指被java语言赋予了特殊含义的单词

              6.2.2 关键字的特点

              关键字的字母全部小写。

              常用的代码编辑器对关键字都有高亮显示,比如现在我们能看到的public、class、static等。

              6.3 常量

              6.3.1 什么是常量

              在程序运行过程中,其值不可以发生改变的量。

              6.3.2 Java中常量的分类

                • 字符串常量

                用双引号括起来的多个字符(可以包含0个、一个或多个),例如"a"、"abc"、"中国"等

                • 整数常量

                整数,例如:-10、0、88等

                • 小数常量

                小数,例如:-5.5、1.0、88.88等

                • 字符常量

                用单引号括起来的一个字符,例如:'a'、'5'、'B'、'中'等

                • 布尔常量

                布尔值,表示真假,只有两个值true和false

                • 空常量

                一个特殊的值,空值,值为null

                6.3.3 常量演示

                除空常量外,其他常量均可使用输出语句直接输出

                /*

                常量的分类:

                字符串常量  "123" "abc"

                整数常量: 100 1 -1 -100

                小数常量: 1.1 1.2 -1.1 -1.2

                字符常量: 'a' '1' '你'

                  字符'' 有且仅有一个字符

                布尔常量: true  false

                空常量: null

                */

                public class Demo01{

                public static void main(String[] args){

                // 字符串常量  "123" "abc"

                System.out.println("abc");

                 

                // 整数常量

                System.out.println(100);

                System.out.println(-100);

                 

                //小数常量

                System.out.println(1.1);

                System.out.println(-1.1);

                 

                // 字符常量

                System.out.println('a');

                System.out.println('你');

                // System.out.println('');

                System.out.println(' ');

                 

                // 布尔常量: true  false

                System.out.println(true);

                System.out.println(false);

                 

                // null是不能直接打印,有特殊应用的,在后面的数组  集合 对象中使用

                // System.out.println(null);

                 

                 

                }

                }

                6.4 数据类型

                6.4.1 计算机存储单元

                我们知道计算机是可以用来存储数据的,但是无论是内存还是硬盘,计算机存储设备的最小信息单元叫“位(bit)”,我们又称之为“比特位”,通常用小写的字母”b”表示。而计算机中最基本的存储单元叫“字节(byte)”,


                通常用大写字母”B”表示,字节是由连续的8个位组成。

                6.4.2 存储单位换算

                除了字节外还有一些常用的存储单位,其换算单位如下

                1B(字节) = 8bit

                1KB = 1024B

                1MB = 1024KB

                1GB = 1024MB

                1TB = 1024GB

                1PB = 1024TB

                1EB = 1024PB

                6.4.3 Java中的数据类型

                  • 为什么有数据类型

                  Java是一个强类型语言,对每一种数据都规定了范围.

                    • 数据类型的分类
                    • image.gif编辑
                    • 基本数据类型image.gif编辑
                      • 注意
                        e+38表示是乘以10的38次方,同样,e-45表示乘以10的负45次方。
                        在java中整数默认是int类型,浮点数默认是double类型

                        6.5 变量

                        6.5.1 什么是变量

                        在程序运行过程中,其值可以在一定范围内发生改变的量,从本质上讲,变量是内存中的一小块区域,其值可以在一定范围内变化

                        6.5.2 变量定义的格式

                          • 格式一

                          数据类型 变量名 = 初始化值; // 声明变量并赋值

                          int age = 18;

                          System.out.println(age);

                          • 格式二

                          // 先声明,后赋值(使用前赋值即可)

                          数据类型 变量名;

                          变量名 = 初始化值;

                          double money;

                          money = 55.5;

                          System.out.println(money);

                          • 格式三

                          在同一行定义多个同一种数据类型的变量,中间使用逗号隔开

                          数据类型 变量名 = 值,变量名 = 值, ....;

                          int a = 10, b = 20; // 定义int类型的变量a和b,中间使用逗号隔开

                          System.out.println(a);

                          System.out.println(b);


                          int c,d; // 声明int类型的变量c和d,中间使用逗号隔开

                          c = 30;

                          d = 40;

                          System.out.println(c);

                          System.out.println(d);

                          6.5.3 变量注意事项

                          1. 在同一对花括号中,变量名不能重复。

                          2. 变量在使用之前,必须初始化(赋值)。

                          3. 定义long类型的变量时,需要在整数的后面加L(大小写均可,建议大写)。因为整数默认是int类型,整数太大可能超出int范围。

                          4. 定义float类型的变量时,需要在小数的后面加F(大小写均可,建议大写)。因为浮点数的默认类型是double, double的取值范围是大于float的,类型不兼容。

                          6.6 标识符

                          6.6.1 什么是标识符

                          标识符是用户编程时使用的名字,用于给类、方法、变量、常量等命名。

                          6.6.2 标识符的组成规则

                          由字母、数字、下划线“_”、美元符号“$”组成,第一个字符不能是数字。  不能使用java中的关键字作为标识符。  标识符对大小写敏感(区分大小写)。

                          6.6.3 标识符的命名规范(江湖规矩)

                            • 类名

                            一个单词: 首字母大写 Hello 多个单词: 每一个单词的首字母都要大写 HelloWorld (大驼峰)

                            • 变量名和方法

                            一个单词: 全部小写 value get()

                            多个单词: 从第二个单词的首字母开始,每一个单词都要大写 maxValue getValue() (小驼峰)

                            一个单词: 全部小写 cn com

                            多个单词: 全部小写中间用.分割 com.itfxp

                            公司的域名倒着写

                            www.baidu.com-->com.baidu.xxx

                            • 自定义常量

                            一个单词: 全部大写 MAX VALUE

                            多个单词: 全部大写 中间用 _ 隔开 MAX_VALUE


                            相关文章
                            |
                            2月前
                            |
                            Java Apache Maven
                            Java百项管理之新闻管理系统 熟悉java语法——大学生作业 有源码!!!可运行!!!
                            文章提供了使用Apache POI库在Java中创建和读取Excel文件的详细代码示例,包括写入数据到Excel和从Excel读取数据的方法。
                            62 6
                            Java百项管理之新闻管理系统 熟悉java语法——大学生作业 有源码!!!可运行!!!
                            |
                            2月前
                            |
                            Java 开发工具 Android开发
                            Kotlin语法笔记(26) -Kotlin 与 Java 共存(1)
                            本系列教程笔记详细讲解了Kotlin语法,适合需要深入了解Kotlin的开发者。若需快速学习Kotlin,建议查看“简洁”系列教程。本期重点介绍了Kotlin与Java的共存方式,包括属性、单例对象、默认参数方法、包方法、扩展方法以及内部类和成员的互操作性。通过这些内容,帮助你在项目中更好地结合使用这两种语言。
                            48 1
                            |
                            2月前
                            |
                            Java 开发工具 Android开发
                            Kotlin语法笔记(26) -Kotlin 与 Java 共存(1)
                            Kotlin语法笔记(26) -Kotlin 与 Java 共存(1)
                            34 2
                            |
                            16天前
                            |
                            Java
                            java do while 的语法怎么用?
                            java do while 的语法怎么用?
                            33 3
                            |
                            2月前
                            |
                            Java 编译器 Android开发
                            Kotlin语法笔记(28) -Kotlin 与 Java 混编
                            本系列教程详细讲解了Kotlin语法,适合需要深入了解Kotlin的开发者。对于希望快速学习Kotlin的用户,推荐查看“简洁”系列教程。本文档重点介绍了Kotlin与Java混编的技巧,包括代码转换、类调用、ProGuard问题、Android library开发建议以及在Kotlin和Java之间互相调用的方法。
                            30 1
                            |
                            2月前
                            |
                            安全 Java 编译器
                            Kotlin语法笔记(27) -Kotlin 与 Java 共存(二)
                            本教程详细讲解Kotlin语法,适合希望深入了解Kotlin的开发者。若需快速入门,建议查阅“简洁”系列教程。本文重点探讨Kotlin与Java共存的高级话题,包括属性访问、空安全、泛型处理、同步机制及SAM转换等,助你在项目中逐步引入Kotlin。
                            30 1
                            |
                            2月前
                            |
                            Java 编译器 Android开发
                            Kotlin语法笔记(28) -Kotlin 与 Java 混编
                            Kotlin语法笔记(28) -Kotlin 与 Java 混编
                            32 2
                            |
                            2月前
                            |
                            Java 程序员 编译器
                            在Java编程中,保留字(如class、int、for等)是具有特定语法意义的预定义词汇,被语言本身占用,不能用作变量名、方法名或类名。
                            在Java编程中,保留字(如class、int、for等)是具有特定语法意义的预定义词汇,被语言本身占用,不能用作变量名、方法名或类名。本文通过示例详细解析了保留字的定义、作用及与自定义标识符的区别,帮助开发者避免因误用保留字而导致的编译错误,确保代码的正确性和可读性。
                            57 3
                            |
                            2月前
                            |
                            安全 Java 编译器
                            Kotlin语法笔记(27) -Kotlin 与 Java 共存(二)
                            Kotlin语法笔记(27) -Kotlin 与 Java 共存(二)
                            32 0
                            |
                            3月前
                            |
                            Java 数据安全/隐私保护
                            java之基本语法
                            java之基本语法
                            35 6