当前位置: 代码迷 >> 综合 >> JAVA 基础巩固 (二)
  详细解决方案

JAVA 基础巩固 (二)

热度:86   发布时间:2023-10-21 11:49:47.0

1:常量(掌握)
    (1)常量:在程序的运行过程中,其值不发生改变的量。
    (2)常量的分类:
        A:字面值常量
        B:自定义常量(面向对象部分讲)
    (3)字面值常量
        A:字符串常量 用""括起来的内容。举例:"helloworld"
        B:整数常量 举例:1,200
        C:小数常量 举例:12.5
        D:字符常量 用''括起来的内容。举例:'a','A','0'
        E:布尔常量 比较特殊,只有两个值。举例:true,false
        F:空常量 null(数组部分讲)
    (4)Java中针对整数常量的表现形式
        A:二进制
            由0,1组成。以0b开头
        B:八进制
            由0,1,2,3,4,5,6,7组成。以0开头
        C:十进制
            由0,1,2,3,4,5,6,7,8,9组成。默认是十进制。
        D:十六进制
            由0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F组成。以0x开头。
            注意:字母不区分大小写。

2:进制(理解)
    (1)一种计数的方式。x进制表示逢x进1。
    (2)进制转换
        A:其他进制到十进制
            系数*基数^权之和。
        B:十进制到其他进制
            除基取余,直到商为0,余数反转。
        C:快速转换
            a:二进制和十进制
                8421码
            b:二进制和八进制
                三位组合
            c:二进制和十六进制
                四位组合
        D:任意X进制到任意Y进制的转换
            可以使用十进制作为桥梁即可。

3:有符号数据表示法(理解)
    (1)计算机中数据的存储和运算都是采用补码进行的。
    (2)数据的有符号表示法
        用0表示正号,1表示负号。
        A:原码
            正数:正常的二进制
            负数:符号为为1的二进制
        B:反码
            正数:和原码相同
            负数:和原码的区别是,符号位不变,数值位取反。1变0,0变1
        C:补码
            正数:和原码相同
            负数:反码+1
    (3)数据的有符号表示法练习
        A:已知原码,求反码和补码
        B:已知补码,求原码。
    (4)补充:float浮点数在计算机中的表示 
            符号位        指数位        底数位
            S        E        M
3:变量(掌握)
    (1)变量:在程序的运行过程中,其值发生改变的量。
    (2)定义格式:
        A:数据类型 变量名 = 初始化值;
        B:数据类型 变量名;
          变量名 = 初始化值;

4:数据类型(掌握)
    (1)数据类型分类
        A:基本类型:4类8种
        B:引用类型:类,接口,数组
    (2)基本类型
        A:整数            占用的内存空间
            byte        1
            short        2
            int        4
            long        8
        B:浮点数
            float        4
            double        8
        C:字符
            char        2
        D:布尔
            boolean        1

        面试题:Java中的字符可以存储一个汉字吗?为什么呢?
    (3)注意事项:(特别注意)
        A:整数默认是int类型,浮点数默认是double类型(运算中一定要特别注意隐式转换)
        B:定义long类型数据的时候,建议加上L或者l。推荐L
          定义float类型数据的时候,建议加上F或者f。推荐F
          (不加f或F编译会报损失精度的错误)
    (4)使用变量的注意事项
        A:作用域
            每一个变量在它所属的大括号内有效,并且,同一个作用域不能定义同名的变            量。(for循环()中定义的变量与在for{}中定义有相同的作用域)
        B:初始化值
            变量必须先声明,赋值,最后才能使用
        C:在一行上定义的问题
            可以在一行上定义多个变量,但是不建议。

            int a,b;
            a = 10;
            b = 20;

            int a = 10,b = 20;

            int a = 10;
            int b = 20;

5:类型转换(掌握)
    注意:
        boolean类型不参与。
    (1)隐式转换:从小到大
        byte,short,char --> int --> long --> float --> double

        long为什么可以到float呢?
            A:因为long和float的底层存储结构不同。
            B:数据范围
                long: 2^63
                float: 3.4*10^38

                3.4*10^38 > 3.4*8^38 = 3.4*2^3^38 = 3.4*2^114 > 2^63
    (2)强制转换:从大到小
        一般不建议这样做,因为可能有精度的损失。
        格式:
            目标数据类型 变量名 = (目标数据类型)(被转换的数据);

6:运算符(理解)
    (1)运算:对常量和变量进行操作的过程称为运算。
    (2)运算符:对常量和变量进行操作的符号称为运算符
    (3)表达式:由运算符把常量和变量连接起来的式子
        注意:表达式必须有结果

7:算术运算符(掌握)
    (1)+,-,*,/,%,++,--
    (2)+:
        正号
        加法
        字符串连接符
    (3)%和/的区别
        %:余数
        /:商
            整数相除,结果是整数。想得到小数,可以乘以或者除以1.0

        %的结果的符号和前面的那个数一致。
    (4)++,--
        A:单独使用
            放在数据的前面和后面效果一样。
        B:参与操作使用
            放在数据的前面,先数据变化,再参与运算。
            放在数据的后面,先参与运算,再数据变化。
        C:++,--的练习题。

8:赋值运算符(掌握)
    (1)=,+=,-=,*=,/=,%=,...
    (2)基本用法
        int a = 10;
        把10赋值给int类型的变量a。
    (3)复合用法
        int a = 10;
        a += 20;
        值等价于:a = a + 20;
        把左边和右边的结果赋值给左边,并强制转换为左边的类型。
    (4)面试题
        short s = 1; s = s + 1;
        short s = 1, s +=1;
        哪个有问题。

9:关系运算符(掌握)
    (1)==,!=,>,>=,<,<=
    (2)注意:
        A:无论表达式简单还是复杂,结果肯定是boolean类型
        B:千万不要把"=="写成"="

10:逻辑运算符(掌握)
    (1)&,|,^,!,&&,||
    (2)单用法
        &:有false则false
        |:有true则true
        ^:相同false,不同true(情侣关系)(交换两个变量的值的四种方式)
        !:偶数个,值不变;奇数个,值相反。
    (3)双用法:
        &&,||和&,|的区别

        &&具有短路效果,左边为false,右边不执行。
        ||具有短路效果,左边为true,右边不执行。

用于定义访问权限修饰符的关键字

private

protected

public

 

 

用于定义类,函数,变量修饰符的关键字

abstract

final

static

synchronized

 

用于定义类与类之间关系的关键字

extends

implements

 

 

 

用于定义建立实例及引用实例,判断实例的关键字

new

this

super

instanceof

 

用于异常处理的关键字

try

catch

finally

throw

throws

用于包的关键字

package

import

 

 

 

其他修饰符关键字

native

strictfp

transient

volatile

assert