Java基础笔记01

Java语言基础

  • 关键字

    • 关键字概述:被Java语言赋予特定含义的单词

    • 关键字特点:组成关键字的字符全部小写

    • 关键字注意事项:

      • ①goto和const作为保留字存在,目前并不使用
      • ②类似于notepad++或idea等高级记事本或编辑器针对关键字有特殊的颜色标记,方便代码编辑
  • 标识符

    • 标识符概述:就是给类、接口、方法、变量等起名字时用的字符序列

    • 组成规则

      • ①有英文大小写字母、数字字符、$、_组成
      • ②不能以数字开头
      • ③不能是Java中的关键字
      • ④严格区分大小写
    • 常见命名规则(见名知意)
      • 包:其实就是文件夹
        • 单级包:包名要全部小写
        • 多级包:报名全部小写,并用 . 隔开,一般是域名倒写,例如:cn.itcase,com.baidu
      • 类或接口
        • ①一个单词:单词的首字母大写
        • ②多个单词:每个单词的首字母都必须大写
      • 方法或变量名
        • ①一个单词:单词小写
        • ②多个单词:从第二个单词开始,每个单词的首字母大写
      • 常量
        • ①一个单词:字母全部大写
        • ②多个单词:每个单词都大写,并用 _ 隔开
  • 注释

    • 概述:用以解释说明程序的文字
    • Java中注释分类
      • 单行注释://注释文字
      • 多行注释:/注释文字/
      • 文档注释:/**注释文字 */
    • 注释的作用
      • 解释说明程序,提高可读性
      • 可以帮助调试程序
    • 注意
      • 单行注释可以嵌套,多行注释不可以嵌套
    • 实例(Hello World案例)
      在这里插入图片描述
      在这里插入图片描述
  • 常量

    • 概述:在程序执行过程中,其值不发生改变的量
    • 分类
      • 字面值常量
        • 1.字符串常量:用双引号括起来的内容
        • 2.整数常量:所有的整数
        • 3.小数常量:所有的小数
        • 4.字符常量:单引号括起来的内容
        • 5.布尔常量:只有true和false两个值
        • 6.空常量
        • 自定义常量
    • Java针对整数常量提供了4中表现形式
      • 二进制
      • 八进制
      • 十进制
      • 十六进制
  • 变量

    • 概述:变量就是在程序的执行过程中,可以在一定范围内发生改变量。从本质上讲,变量其实就是内存中的一小块区域,使用变量名来访问这块区域,因此,没一个变量使用前必须要先申请(声明),然后进行赋值(填充内容)。
    • 组成规则
      • 通过数据类型对变量进行限定
      • 程序运算时,进行运算的不是内存空间,而是内存空间中的值,对这个装有值的空间取名,这个名字就是变量名
      • 有数据类型和变量名后,如果这个内存空间中没有值,这个空间就是一个垃圾空间,没有任何意义,所以定义变量时应初始化值(局部变量初始化后才能使用)
    • 变量定义格式
      • 数据类型 变量名=初始化值
  • 数据类型

    • 概述:java是强类型语言,对于每一种数据都定义了具体的数据类型,在内存中分配了大小不同的内存空间
    • 数据类型分类
      在这里插入图片描述
      • 1.基本数据类型

        • 基本数据类型分为4种8类
          • 整数(整数默认是int类型)
            • byte(1字节)
            • short(2字节)
            • int(4字节)
            • long(8字节)
              • 注意:长整型后缀用L或l标记,建议使用L
                在这里插入图片描述
          • 浮点数(浮点数默认是double类型)
            • float(4字节)
              • 注意:单精度浮点数后缀用F或f标记,建议用F
            • double(8字节)
              在这里插入图片描述
          • 字符
            • char(2字节)
          • 布尔
            • boolean(1字节,也可认为占1/8字节)
      • 2.引用数据类型(类、接口、数值,在后面进行学习)

    • 使用变量的注意事项
      • 作用域:变量在哪个大括号内,它就在哪个大括号内有效,在用一个大括号内不能同事定义同名的变量
      • 初始化值:没有初始化值的变量不能直接使用
      • 定义变量格式
        • 1.数据类型 变量名=初始值;
        • 2 数据类型 变量名;变量名=初始值;
      • 在一行上建议只定义一个变量,可以定义多个,但是不建议
  • 数据类型转换

    • 一般来说,进行运算的时候,要求参与运算的数据类型必须一致
      在这里插入图片描述
    • 默认转换
      • 转换顺序:byte、short、char—>int—>long—>float—>double
      • byte、short、char之间不转换,它们参与运算首先转换为int类型
      • 图解在这里插入图片描述
    • 强制转换
      • 从大的数据转换为小的数据
      • 格式:目标数据类型 变量=(目标数据类型) (被转换的数据)
      • 注意:不要随意使用强制转换,因为可能导致精度损失问题
      • 思考题
        在这里插入图片描述
        • f1其实是通过一个double类型转换过来的,而f2本身就是一个float类型
    • 变量相加和常量相加面试题(变量是在运行的时候确定,常量是在编译期间就可以确定)
      在这里插入图片描述
      • b=b1+b2;这个是类型提升,b1和b2都是byte类型变量,会首先默认转换为int类型,然后相加再赋值给b,而b任然是byte类型变量,所以有问题
      • b=3+4;3和4是常量,会先进行加法计算,然后查看结果是否在变量b(byte)范围内,如果在范围内就不报错。反编译代码如下:在这里插入图片描述
        在这里插入图片描述因为byte的范围是 -128~127,而130不在此范围内,所以会报错。可以使用强制类型转换:byte b = (byte)130; 但b的结果不会是130,首先我们得到130的二进制:00000000 00000000 00000000 10000010 ,再做截取操作,截成byte类型:10000010,此时这个结果为补码(前面说过,正数的原码、反码和补码均相同),再通过补码求原码:在这里插入图片描述
        再将原码转换为十进制数,得到最终结果:-126
  • 字符数据参与运算

    • 请写出下列程序的结果
      在这里插入图片描述
      • 结果分别是a和98,字符和整数相加时,进行运算的是字符在ASCII码表中的对应的整数值,a在ASCII码表中 对应97,所以 ’ a ’ +1 结果为98。此外,A对应ASCII码表值为65,0对应ASCII码值为48,由此可推算出其余大小写字母和数字的ASCII码表值
  • 字符串参与运算

    • 写出下列代码结果
      在这里插入图片描述
      • 第一行代码结果是:helloa1;此时的‘+’号不是做加法运算,而是字符串连接
      • 第二行代码结果是:98hello;先做字符数据与整数的运算,再与字符串连接
      • 后两行代码原理相同,请自行思考
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值