day_2

本文概述了Java编程的基本要素,包括入口程序的格式、代码规范(如单词拼写和保存习惯)、数值表示方法(原码、反码和补码),数据类型和类型转换规则,以及变量的概念(如常量、全局变量、局部变量、静态变量和成员变量)及其作用域、默认值和优先级。
摘要由CSDN通过智能技术生成

1.入口程序必须按固定格式写

public static void main(String[] arges){}

其中arges可以修改成符合命名规则的任何东西

2.写代码时要注意单词的拼写和符号使用英文,养成写一行保存一次的习惯

3.位的第一位是符号位1表示正数 0表示负数

原码  原码负数形式(符号位1表示负数)  反码(将原码中0变1,1变0) 补码(反码加1)

4.数据类型

5.类型转换

布尔型不参与类型转换

byte→short→int→long→float→double  自由转换,反之强制类型转换可能导致损失精度

(float采用科学技术法进行储存故float的32位远大于long的64位)

强制转换

char c='王';

int d=(int)c;

(其中(int)将c强制转化int类型)

6.多类型混合运算时,结果为运算的最大类型.

(只出现byte,short,int,long四种类型中一种或多种,结果一定是int型)

7.常量值不能修改但可以复用

字面量默认为int,不能复用且只能使用一次

8.java中没有全局变量与函数

9.变量

10.运算符号

+加  -减 *乘  /除  %取余

11.++i和i++的区别

单独出现都为本身加1

同时出现

++i  先加1  后赋值(i的值是加1后的值)

i++ 先赋值  后加1(i的值是加1前的值)

++优先级大于加减乘除和取余

12.关系运算符

结果一定是布尔型true/false

>大于  >=大于等于  <小于  <=小于等于  ==等于  !=不等于

13.逻辑运算符

&与  同真为真 

可以用于运算:将两个数变为二进制做对比,只有都是1时取1,其他情况全取0 

|或   有一个真为真

!非    取反(真为假,假为真)

其中&&  ||为短路运算  

&&第一个为假  将不运行第二个(&第一个为假也运行第二个)

^异或  两边不一样才为真,反之为假

可以用于运算:将两个数变为二进制做对比,数字不同取1,相同取0

>>右移运算  右移一次,就相当于该数 除2  (符号位不变)

转换二进制,进行移位,右移一次,则删除最右边一个,并在最左边(非符号位)添加一位 (如果是整数则补0,负数则补1)

>>>右移运算  不考虑符号位,并且不考虑正负数,只在最左边补0 , 所以负数 有可能变正数

<<左移运算  向左移动一位,相当于该数乘2

转换二进制,进行移位,左移一次,则删除最左边一个,并在最右边(非符号位)补0

一、变量

1.  常量

        // 常量:生命周期中,值不能修改,但是可以复用

        final int i = 2;

        // i = 3;

        // 字面量,占用临时空间存储,数字 默认是int

        // 并且不能复用,只能临时使用一次,由于没有找到的路径,所以压根也不能修改

        System.out.println(123);

 2.变量

可以修改的数据

 2.1全局变量

Java中没有全局变量,全局变量一般是指可以直接调用,不需要二次引用的变量

是否使用 .  操作符   , xxx.xxxx

3. 变量声明

 * 变量声明 : 数据类型 变量名 = 值;

 * 数据类型 变量,变量,....;

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

 * 使用数据类型划分内存空间 给空间取名字 并赋值

 4.变量分类

Java中变量分为三类

局部变量 : 在方法中写的变量,是局部变量(参数列表也是)

静态变量 : 在类体中,使用static修饰的变量是静态变量

成员变量 : 在类体中,没有使用static修饰的变量是成员变量

5. 变量调用

变量必须先声明后使用

        // 局部变量

        int i = 2;

        // 局部变量调用,在方法中,直接写变量名调用,方法外 调用不了

        System.out.println(i);

        // 静态变量调用,使用类名.静态变量名,需要考虑权限修饰符

        System.out.println(_06_Var_02.a);

        // 如果在类中调用当前类的静态变量,类名也可以省略

        System.out.println(a);

        // 创建对象

        _06_Var_02 obj = new _06_Var_02();

        System.out.println(obj.b);

6. 变量作用域(作用范围)

变量的范围不会超过往上开始碰到的第一个大括号

7.默认值

局部变量没有默认值,不赋值不能使用

静态变量和成员变量,有默认值,不赋值也能使用

整数 : 0

小数 : 0.0

布尔型 : false

字符型 : \u0000

引用类型 : null

8.变量优先级

局部变量可以和静态变量/成员变量同名吗?  可以

静态变量和成员变量 可以同名吗?  不可以

        // 同名后,优先使用局部变量

        System.out.println(a);

        // 如何区分同名的局部变量和静态变量呢?  类名

        System.out.println(_08_Var_04.a);

使用类名 区分同名的局部变量和静态变量

使用this 区分同名的局部变量和成员变量

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值