第二章:Java的常量、普通变量、成员变量、局部变量

常量

在程序的整个运行过程中保持不变的量(常量一旦初始化就不可以被修改)
	对于基本数据类型:常量的数值从始至终保持不变
	对于引用数据类型:常量的地址从始至终保持不变,但数值允许发生变化

常量分类

	1. 字符串常量:"123""abc""中国"""
	2. 字符常量:'a''1'' '
	3. 整型常量:123-1130
	4. 浮点型常量:12.00-1.30.0
	5. 布尔常量:true.false
	6. 空值常量:null
	
注意细节:字符常量与字符串常量的区别
	字符常量:必须在单引号中存放一个字符(空格也算一个字符)
	字符串常量:在双引号中存放字符的数量大于等于0(不存放字符也合法)

常量应用

常量定义注意事项
	1. 常量名以大写字符定义 	
	2. 必须要初始化
final int NUM = 100;  
final String NAME = "张山";

普通变量

1. 数据类型可以是8种基本数据类型,也可以是引用数据类型(String是引用数据类型)
2. 声明变量名的规则
	a. 由字母、数字、_、$ 组成
	b. 不能以数字作为标识符的首字母

代码演示:访问普通变量

public class Demo {
	public static void main(String[] args) {
		int num1;
		int num2 = 20;
		// System.out.println("访问num1变量:" + num1);
		// 编译报错原因:对于普通变量未初始化,无法访问
		// 解决方案:对num1变量先赋值再访问即可
		
		System.out.println("访问num2变量:" + num2);
	}
}

成员变量

成员变量由全局变量和静态变量组成    
全局变量的生命周期:当类创建对象时,就是全局变量的开始;当对象释放空间时,就是全局变量的结束
静态变量的生命周期:当类被加载时,就是静态变量的开始;当类被垃圾回收机制回收时,就是静态变量的结束

代码演示:访问全局变量和静态变量

对于成员变量的知识点在Java进阶篇“类与对象的应用”有详细解析与代码演示

public class Demo {
	int num1 = 20;			// 全局变量
	static int num2 = 50;	// 静态变量
	public static void main(String[] args) {
		Demo demo = new Demo();
		System.out.println(demo.num1);
		// num1是全局(非静态)变量不能直接访问,只能通过创建对象访问全局变量

		System.out.println(num2);			// 1.静态变量访问之 直接访问
		System.out.println(Demo.num2);		// 2.静态变量访问之 类名.静态变量名
		System.out.println(demo.num2);		// 3.静态变量访问之 对象名.静态变量名
		// 前两种访问方式,类被加载即可访问;第三种访问方式,通过创建对象访问静态变量
	}
}                                     

局部变量

局部变量的三种形式和作用域
	1. 定义在方法的参数列表中,其作用在该方法内部
	2. 定义在方法的内部,其作用是从被定义的代码行开始,直到该方法的最后一行结束
	3. 定义在代码块({})中的变量,其作用是从被定义的代码行开始,直到该代码块的最后一行结束

代码演示:访问局部变量

public class Demo {
    public static void main(String[] args) {
    
        // 第一种:定义在method1方法的参数列表中,其作用在该方法内部
        int num = 10;
        method1(num);
        
        // 第二种:定义在method2方法的内部,其作用是从被定义的代码行开始,直到该方法的最后一行结束
        method2();
        
        // 第三种:定义在代码块({})中的变量,其作用是从被定义的代码行开始,直到该代码块的最后一行结束
        Demo demo1 = new Demo();
        Demo demo2 = new Demo();
        Demo demo3 = new Demo();
        // 代码块属于对象!每创建一个对象,代码块执行一次。对象的个数与代码块执行的次数有关
    }
    public static void method1(int num) {
        System.out.println("方法1中的形参:" + num);
    }

    private static void method2() {
        int num = 20;   // method2中num的生命周期从此刻开始
        System.out.println("方法2中的局部变量:" + num);
    }

    {
        int num = 30;
        System.out.println("Demo类中的代码块的局部变量:" + num);
    }
}

常见ACSII码

ACSII码大小
	048
	A65
	a为97
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值