day01_java基础

typora-root-url: assets
typora-copy-images-to: assets

day01_java核心基础

今日目标

  • 计算机基本概念

  • java语言简介

  • JDK 和 JRE

  • Path环境变量配置

  • HelloWorld案例

  • 常用的开发工具

  • 注释

  • 关键字

  • 常量和变量

  • 标识符

  • 数据类型转换

  • ASCII码表

  • 运算符

计算机基本概念

计算机分为软件和硬件

计算机硬件
  • cpu 处理器包括控制器和运算器

  • 存储器

  • 输入设备和输出设备

计算机软件
  • 系统软件 —— 操作系统

  • 其他系统软件 —— 驱动、数据库

  • 应用软件 —— typora 、 notepad++

语言介绍

计算机语言
  • 人与计算机之间进行交流的载体。

  • 计算机语言分类

    • 机器语言

    • 汇编语言

    • 高级语言

      四类:C 语言、 C++、 JAVA C# 、面向问题的

Java语言的简介

平台的版本
  • J2SE: 标准版, 也是其他两个版本的基础. 在JDK1.5的时候正式更名为: JavaSE.

  • J2ME: 小型版, 一般用来研发嵌入式程序. 已经被Android替代了. 在JDK1.5的时候正式更名为: JavaME.

  • J2EE: 企业版, 一般开发企业级互联网程序. 在JDK1.5的时候正式更名为: JavaEE.

特点
  • 开源免费

  • 跨平台

  • 多线程

  • 面向对象

  • 多态

JDK 和 JRE

  • JDK JRE JVM 核心类库之间的关系

image-20200930093152826

  • JDK 卸载

    去控制面板直接卸载就可以了.

    小技巧: windows徽标键 + 字母R -> control -> 然后敲回车, 这样可以直接打开控制面板.

Path 环境变量的配置

  • JAVA_HOME value:安装的路径

  • path value: %JAVA_HOME%\bin %JAVA_HOME%\jre\bin

  • 测试: 在 cmd 测试是否安装成功

    > java -version
    > javac -version
    # 输出对应的版本就说明安装成功。

Helloworld的开发步骤(掌握)

开发步骤

  1. 编辑

    public class HelloWorld{
    public static void main(String[] args){
    System.out.println("Hello World!");
    }
    }
  2. 编译

    javac HelloWorld.java
    
  3. 执行

    java HelloWorld
    

案例需求:

  • 在编辑器中实现一个 helloworld。

image-20200930095147916

可能遇到的问题

遇到的问题

  • 非法字符.

    注意: 我们使用的符号全部都是英文状态下的符号

  • 注意字母的大小写.

    注意: Java是严格区分大小写的. 也就是说: A和a不是一回事儿.

  • 文件后缀名的问题.

    千万不要出现 HelloWorld.java.txt 这种情况

  • 在编译或者运行时, 指令及文件名不要写错了.

//编译的格式 javac HelloWorld.java //运行的格式 java HelloWorld

常用的开发工具

开发工具的分类

  • windows记事本

  • 高级记事本

  • 集成的开发工具

    • IDEA jetbrains,业内公认的开发工具

    • Eclipse

    • MyEclipse

IDEA的下载和安装

  • 下载的地址

    JetBrains公司官网: www.jetbrains.com
    直接下载地址: www.jetbrains.com/idea/download/other.html
  • 安装

  • 创建项目和模块

    image-20200930104522282

  1. 创建模块

image-20200930104707260

  1. 配置SDK 依赖和 sources 语言级别

image-20200930105013256

HelloWorld案例(IDEA版本)

  • IDEA界面的区域划分

image-20200930105939942

  • 实现 helloworld 代码

    // 当前类所在的包路径
    package cn.itcast.javase.HelloWorld;

    /**
    * Author itcast
    * Date 2020/9/30 10:55
    * Desc TODO
    */
    // 当前类 类名 HelloWorld
    public class HelloWorld {
       // 当前的入口静态方法 main
       public static void main(String[] args){
           // 当前方法的中的实现
           // 打印输出 hello world 带换行
           System.out.println("hello world");
      }
    }

模块的删除和导入

  • 打开 project structure 按钮

image-20200930111004623

  • 删除模块

    image-20200930111041730

  • 导入模块

    image-20200930111150006

基本配置和常用快捷键

基本配置

image-20200930111505477

隐藏不需要的文件, 需要在界面的lgnore files and folders选项值后加.idea;.iml;out;即可.

常用的快捷键

image-20200930113922784

注释

  • 单行注释

  • 多行注释

  • 文档注释

案例

        // 单行注释  ctrl + /

       // 多行注释
       /*
       * author:itheima
       * date:2020-09-30
       * */

       //文档注释 javadoc
       /**
        *
        */

关键字

概念

  • 在java 中具备特殊含义的单词.

常用的关键字

• public: 公共的权限, 目前先了解即可.

• class: 表示在创建一个类.

• static: 表示静态的意思.

• void: 表示方法的返回值类型.

image-20200930142341123

定义java源代码的格式

工程project -> 模块 module -> 包 package -> 类 class -> 方法 method -> 关键字 变量和常量

public class 类名 {
 public static void main(String[] args){
 
}
   //其他方法
}

常量

• 自定义常量(目前先了解, 在面向对象的时候, 才会详细解释)

• 字面值常量

解释: 根据字面意思就可以划分的常量.

整数常量.

例如: 1, 2, 3, 11, 22, 521

小数常量.

例如: 5.21, 13.14

字符常量.

解释: 字符的意思是说只能有一个值, 而且要用单引号括起来

例如: 'A', 'B', 'c', '10'(这样写会报错, 因为10是由1和0两个值组成的)

字符串常量.

解释: 字符串常量值都要用双引号括起来

例如: "abc", "传智播客", "黑马程序员", "大数据"

布尔常量

解释: 比较特殊, 值只有两个

• true, 相当于正确

• false, 相当于不正确

空常量

解释: 比较特殊, 值只有一个: null, 表示什么都没有.

注意: 空常量不能通过输出语句直接打印.

案例

/**
 * Author itcast
 * Date 2020/9/30 14:38
 * Desc 常量的演示
 * 6 种类型
 */
public class VariableDemo00 {
    // main 方法
    public static void main(String[] args) {
        //1.整数常量.
        // 例如: 1, 2, 3, 11, 22, 521
        final int a = 1;
        System.out.println(a);
        //2.小数常量.
        // 例如: 5.21, 13.14
        final float b = 5.21f;
        final double c = 13.14d;
        //3.字符常量. char类型是2个字节
        // 解释: 字符的意思是说只能有一个值, 而且要用单引号括起来
        // 例如: 'A', 'B', 'c', '10'(这样写会报错, 因为10是由1和0两个值组成的)
        final char d = 'A';
        final char e = '中';
        //4.字符串常量.
        // 解释: 字符串常量值都要用双引号括起来
        // 例如: "abc", "传智播客", "黑马程序员", "大数据"
        final String f="黑马程序员";
        //5.布尔常量
        // 解释: 比较特殊, 值只有两个
        //•true, 相当于正确
        //•false, 相当于不正确
        final boolean g = true;
        final boolean h = false;
        //6.空常量
        // 解释: 比较特殊, 值只有一个: null, 表示什么都没有.
        // 注意: 空常量不能通过输出语句直接打印.
        final String EMPTY = null;
    }
}

变量

  • 变量的使用

    –数据类型:变量变化的范围就是数据类型
    –变量名:每个变量都有一个名字,方便存取。
    –初始化值:使用变量前,需要给变量赋值。
    
    
  • 变量的定义格式

    数据类型 变量名 = 初始化值
    
    
  • 案例

    /**
     * Author itcast
     * Date 2020/9/30 14:55
     * Desc 定义或者初始化变量的值
     */
    public class VariableDemo01 {
        //定义变量, 记录班级的学生人数, 并将结果打印到控制台上.
        public static void main(String[] args) {
            //定义班级的人数
            int clsNum = 50;
            System.out.println(clsNum);
        }
    }
    
    
  • Java是一种强类型语言, 针对于每一个数据都给出了明确的数据类型.

    • 基础数据类型

      byte, short, char, int, long, float, double, boolean

    • 引用数据类型

      String 数组等.

  • 数据类型的分类

    image-20200930150133112

记忆

byte类型的取值范围是: -128 ~ 127,char类型的取值范围是: 0 ~ 65535

默认的整形是: int类型, 默认的浮点型(即: 小数类型)是: double类型.

定义long类型的数据时, 数据后边要加字母L(大小写均可), 建议加L

定义float类型的数据时, 数据后边要加字母F(大小写均可), 建议加F

定义double类型的数据时, 数据后边要加字母D(大小写均可), 建议加D

  • 变量使用的注意事项

    1. 变量未赋值,不能使用.

    2. 变量只在它所属的范围内有效.

    3. 一行上可以定义多个变量,但是不建议.

案例:

/**
 * Author itcast
 * Date 2020/9/30 15:07
 * Desc TODO
 */
public class VariableDemo02 {
    //2. 定义main方法, 作为程序的主入口.
    public static void main(String[] args) {
        //3. 测试byte类型.
        //3.1 定义一个byte类型的变量, 变量名叫b, 初始化值为10.
        byte b = 127;
        //3.2 将变量b的值打印到控制台上.
        System.out.println(b);

        Byte b1 = 10;

        //4. 测试short类型.
        //4.1 定义一个short类型的变量, 变量名叫s, 初始化值为20.
        short s = 20;
        //4.2 将变量s的值打印到控制台上.
        System.out.println(s);

        Short s1 = 30;

        //5. 测试char类型.
        //5.1 定义一个char类型的变量, 变量名叫c, 初始化值为'A'.
        char c = 'A';
        //5.2 将变量c的值打印到控制台上.
        System.out.println(c);

        Character c1 = 'B';

        //6. 测试int类型
        int a = 10;
        System.out.println(a);

        Integer a1 = 20;

        //7. 测试long类型, 数据后记得加字母L.
        long lon = 100L;
        System.out.println(lon);

        Long lon2 = 200l;

        //8. 测试float类型, 数据后边加字母F.
        float f = 10.3F;
        System.out.println(f);

        Float f1 = 102.3f;

        //9. 测试double类型.
        double d = 5.21;
        System.out.println(d);

        Double d1 = 3.22d;

        //10. 测试boolean类型.
        boolean bb = true;
        System.out.println(bb);

        Boolean b2 = false;

        int x,y,z;
        int q;
    }
}

标志符

  • 规则

    1. 标识符只能包含52个英文字母(区分大小写)、0 ~ 9数字 、$(美元符号)和_(下划线)

    2. 标识符不能以数字开头。

    3. 标识符不能和Java中的关键字重名。

    4. 最好做到见名知意.

    例如: name表示姓名, age表示年龄.

数据类型转换

  • 概念

    不同类型的数据之间可能会进行运算,而这些数据取值范围不同,存储方式不同,直接进行运算可能会造成数据损失,所以需要将一种类型转换成另外一种类型再进行运算。

  • 转换分类

    1. 隐式类型转换

      image-20200930170007458

    2. 显式类型转换

      强制将大类型转换成小类型.

  • 需求

    尝试把小数1.5赋值给int类型的变量a, 并打印结果.

    public class DataTypeDemo02 {
        public static void main(String[] args) {
            //1. 定义int类型的变量a.
            int a;
            //2. 尝试将1.5赋值给变量a.
            //这行代码会报错, 大范围的数据赋值给小范围的数据类型, 必须通过`强制转换`格式实现.
            //a = 1.5;
            a = 10;     //这样写没问题.
            //3. 打印结果.
            System.out.println(a);
        }
    }
    
    
  • int 类型 + short 类型的底层累加

image-20200930162922362

  • 命名规范

    • 类, 接口的命名规范: 每个单词的首字母都大写, 其他字母全部小写.(大驼峰命名法)

      例如: HelloWorld, VariableDemo.

    • 变量, 方法的命名规范: 从第二个单词开始, 每个单词的首字母都大写, 其他字母全部小写(小驼峰命名法).

      例如: zhangSanAge, studentName

    • 常量(指的是: 自定义常量)的命名规范: 所有字母都大写, 单词之间用_(下划线)隔开.

      例如: MAXVALUE, MINVALUE, PI

      注意: 目前先了解即可, 面向对象部分详细解释.

    • 包的命名规范: 所有字母全部小写, 多级包之间用.(点符号)隔开, 一般是公司的域名反写.

      例如: cn.itcast, com.itheima

ASCII码表

编码表:就是将人类的文字和一个十进制数进行对应起来组成一张表格。 ‘a’ -> 97 char:0-65535

存储字符时:需要查找ASCII码表,找到字符对应的数字,将数字转换为二进制数存放到计算机中

使用字符时:将对应的二进制数转换为十进制 找到ASCII表中对应的字符 显示出来

• 将所有的英文字母,数字,符号都和十进制进行了对应,因此产生了世界上第一张编码表ASCII码表.

image-20200930165352774

运算符

概述

• 运算符和表达式

– 运算符:用来连接常量或者变量的符号, 就叫运算符.

– 表达式:用运算符把常量或者变量连接起来符合java语法的式子就称之为表达式。

• 不同运算符连接的表达式体现的是不同类型的表达式。

例如:

– +(加号) 是运算符,并且是算术运算符。

– a + b:是表达式,由于+是算术运算符,所以这个表达式叫算术表达式。

分类

• 算术运算符

• 赋值运算符

• 比较(关系)运算符

• 逻辑运算符

• 三元(三目)运算符

算术运算符
算数运算符包括:作用
+加法运算,字符串连接运算
-减法运算
*乘法运算
/除法运算
%取模运算,两个数字相除取余数
++自增运算符, 相当于自身 + 1
--自减运算符, 相当于自身 - 1
注意
•Java中, 整数相除, 结果还是整数. 
•+ 符号在字符串中的操作:
– + 符号在遇到字符串的时候,表示连接、拼接的含义。
– "a"+"b"的结果是“ab”,连接含义
public static void main(String[] args){
 	System.out.println("5+5="+5+5);//输出5+5=55
}

自增自减运算符
符号作用说明
++自增变量的值加1
--自减变量的值减1

解释: ++ 是变量自增加1, -- 相反 是变量减1.

  • 独立运算

    没有变化

  • 混合运算

    和其他变量放在一起, ++在前会先计算后赋值, ++在后会先赋值后计算

• 独立运算:

– 变量在独立运算时,前++和后++没有区别 。

– 变量前++ :例如 ++i 。

– 变量后++ :例如 i++ 。

/**
 * Author itcast
 * Date 2020/9/30 16:32
 * Desc TODO
 */
public class TypeTransform {
    private static final String USERNAME_NICK="zhangsan";
    public static void main(String[] args) {
        char c = ' ';
        int i = 0;
        int j = 0;
        int x=0;
        int y=0;
        //字符类型和int类型计算
        System.out.println(c+i);  //输出结果是???
        i++;
        System.out.println(i);
        // 先赋值再累加
        int d = x++;
        // 先累加再赋值
        int e = ++y;
        System.out.println(d);
        System.out.println(e);
    }
}

完毕.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值