Java复习总结之变量与关键字
2022/1/18 1:04:56
本文主要是介绍Java复习总结之变量与关键字,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
变量
按被声明的位置划分,可分为成员变量和局部变量:
成员变量
1、定义在类当中,和方法同级 2、作用域为整个对象,类当中都可以使用的变量 3、定义时可以没有初始值,有默认值是0,使用时可以赋值 4、内存空间和值都存储在堆内存中
局部变量
1、定义在方法体内,且只能在定义它的方法中使用 2、定义时可以没有初始值,使用时必须赋值 3、该方法中不能出现两个名称相同的局部变量 4、内存空间和值都存储在栈内存当中
按所属的数据类型划分,可分为基本数据类型和引用数据类型:
final关键字
1、修饰类,不能被继承,所以final类的成员方法没有机会被覆盖, 默认都是final的 2、修饰变量(常量),如果该变量是基本数据类型,则它的值不能被修改; 如果是引用数据类型,地址不可改变,它的值可以被修改。 3、修饰方法,不能被重写 4、防止指令重排序,保证线程间可见性(并发)
扩展
为什么String不可变?
请看源码:
由源码我们可以知晓:
1、String用来存储数据的char数组被final修饰,意味着一个String对象里的char数组不可能再指向一个新的数组。
2、String内部没有修改char数组的方法。
3、String类用final修饰,不可以被继承,从而不能通过子类修改。
因此,String不可变!!!
static关键字
static作用:在没有创建对象的时候方便对方法和变量进行调用 static修饰符
一、修饰变量:static修饰的变量属于类变量,被所有对象共享
二、修饰方法:
1、属于类方法
2、this关键字不能在static方法当中使用(this代指当前对象,static 修饰的方法是类方法)
3、静态方法当中不能使用非静态的方法,非静态的方法能够使用静态方法 4、static修饰的代码块,在main方法之前执行,以便于优化程序
这篇关于Java复习总结之变量与关键字的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-06-26结对编程到底难不难?答案在这里
- 2024-06-19《2023版Java工程师》课程升级公告
- 2024-06-15matplotlib作图不显示3D图,怎么办?
- 2024-06-1503-Loki 日志监控
- 2024-06-1504-让LLM理解知识 -Prompt
- 2024-06-05做软件测试需要懂代码吗?
- 2024-06-0514-ShardingSphere的分布式主键实现
- 2024-06-03为什么以及如何要进行架构设计权衡?
- 2024-05-31全网首发第二弹!软考2024年5月《软件设计师》真题+解析+答案!(11-20题)
- 2024-05-31全网首发!软考2024年5月《软件设计师》真题+解析+答案!(21-30题)