🏆本文收录于「滚雪球学Java」专栏,专业攻坚指数级提升,助你一臂之力,带你早日登顶🚀,欢迎大家关注&&收藏!持续更新中,up!up!up!!
前言
在Java开发中,方法是程序的基本构建块之一。在编写Java代码时,必须了解Java方法的作用域和生命周期。这将有助于您更好地编写高效的Java代码。
摘要
本文将深入了解Java方法的作用域和生命周期,包括方法的访问修饰符、方法内部变量的作用域、方法的生命周期等。同时,本文还将通过源代码、方法介绍、测试用例等方式,让您更好地理解Java方法的相关知识。
正文
方法的访问修饰符
Java方法的访问修饰符有public、protected、private和默认四种。
- public方法可以被任何类和任何包中的其他代码访问。
- protected方法可以被同一包中的代码访问,也可以被不同包中的子类访问。
- private方法只能被同一类中的其他方法调用,不能被其他类访问。
- 默认方法(没有修饰符)只能被同一包中的代码访问。
方法内部变量的作用域
在Java方法内部定义的变量,只能在该方法中使用。这些变量被称为局部变量。局部变量的生命周期从方法开始执行时开始,到方法执行结束时结束。
方法的生命周期
Java方法的生命周期可以分为四个阶段。
-
编译时
方法的编译时阶段,主要是对方法进行语法分析和编译,生成字节码文件。 -
类加载时
当类被加载时,方法也会被加载到内存中。此时,会为方法分配一块栈空间。在方法被调用时,栈空间会被使用,存储方法中定义的局部变量和方法的执行状态。 -
执行时
当方法被调用时,会创建一个新的栈帧(Stack Frame),用于存储方法的局部变量和执行状态。方法执行完毕后,栈帧会被弹出,释放栈空间。 -
卸载时
当类被卸载时,与之关联的方法也会被卸载。此时,方法中使用的内存空间会被释放。
源代码
public class MethodScopeDemo {
private int privateNumber = 10;
protected int protectedNumber = 20;
public int publicNumber = 30;
public void publicMethod() {
int localVariable = 100;
// 在此处可以访问 privateNumber、protectedNumber 和 publicNumber
// 无法访问其他类中定义的 private 变量
}
protected void protectedMethod() {
int localVariable = 200;
// 在此处可以访问 protectedNumber 和 publicNumber
// 无法访问其他类中定义的 private 变量
}
private void privateMethod() {
int localVariable = 300;
// 在此处可以访问 privateNumber 和 publicNumber
// 无法访问其他类中定义的 protected 和 private 变量
}
void defaultMethod() {
int localVariable = 400;
// 在此处可以访问 publicNumber
// 无法访问其他类中定义的 protected、private 和默认变量
}
}
代码方法介绍
- publicMethod:公共方法,可以被其他类和其他包中的代码访问。
- protectedMethod:保护方法,可以被同一包中的代码访问,也可以被不同包中的子类访问。
- privateMethod:私有方法,只能被同一类中的其他方法调用,不能被其他类访问。
- defaultMethod:默认方法(没有修饰符),只能被同一包中的代码访问。
测试用例
public class MethodScopeDemoTest {
@Test
public void testPublicMethod() {
MethodScopeDemo demo = new MethodScopeDemo();
demo.publicMethod();
}
@Test
public void testProtectedMethod() {
MethodScopeDemo demo = new MethodScopeDemo();
demo.protectedMethod();
}
@Test
public void testPrivateMethod() {
MethodScopeDemo demo = new MethodScopeDemo();
demo.privateMethod();
}
@Test
public void testDefaultMethod() {
MethodScopeDemo demo = new MethodScopeDemo();
demo.defaultMethod();
}
}
全文小结
本文深入了解了Java方法的作用域和生命周期,包括方法的访问修饰符、方法内部变量的作用域、方法的生命周期等。同时,本文还通过源代码、方法介绍、测试用例等方式,让读者更好地理解Java方法的相关知识。掌握了这些知识后,读者可以编写更高效的Java代码。
附录源码
如上涉及所有源码均已上传同步在 Gitee,提供给同学们一对一参考学习,辅助你更迅速的掌握。
总结
Java方法是程序的基本构建块之一,必须了解Java方法的作用域和生命周期。在实际开发中,应选择合适的访问修饰符,定义方法内部的局部变量,合理使用栈空间等,以提高程序的执行效率。同时,还应编写测试用例,保证程序的正确性。
☀️建议/推荐你
无论你是计算机专业的学生,还是对编程有兴趣的小伙伴,都建议直接毫无顾忌的学习此专栏「滚雪球学Java」,bug菌郑重承诺,凡是学习此专栏的同学,均能获取到所需的知识和技能,全网最快速入门Java编程,就像滚雪球一样,越滚越大,指数级提升。
📣关于我
我是bug菌,CSDN | 掘金 | infoQ | 51CTO 等社区博客专家,历届博客之星Top30,掘金年度人气作者Top40,51CTO年度博主Top12,华为云 | 阿里云| 腾讯云等社区优质创作者,全网粉丝合计15w+ ;硬核微信公众号「猿圈奇妙屋」,欢迎你的加入!免费白嫖最新BAT互联网公司面试题、4000G pdf电子书籍、简历模板等海量资料。