变量作用域

在Java中主要的变量就是属性(成员变量)和局部变量。

局部变量一般是指在成员方法中定义的变量。

全局变量作用域:整个类体。局部变量(除属性意以外的其他变量)作用域:为定义它的代码块中!

全局变量可以不赋值直接使用(因为有默认值),而局部变量使用前必须先赋值再使用(因为没有默认值)

注意事项和细节

  1. 属性和局部变量可以重名,访问时遵循就近原则
  2. 在同一个作用域中,比如在同一个成员方法中,两个局部变量,不能重名。
  3. 属性的生命周期较长,伴随着对象的创建而创建,伴随着对象的死亡而死亡,局部变量的生命周期较短,伴随着它的代码块的执行而创建,伴随着代码块的结束而死亡(即在一次方法调用的过程中)。
  4. 范围不同:

    全局变量/属性:可以被本类使用,或其他类使用(通过对象调用)

    局部变量:只能在本类中对应的方法中使用
  5. 修饰符不同

    全局变量/属性可以添加修饰符

    局部变量不可以加修饰符

Java笔记_变量作用域的更多相关文章

  1. python3学习笔记12(变量作用域)

    变量作用域 参考http://www.runoob.com/python3/python3-function.html Python 中,程序的变量并不是在哪个位置都可以访问的,访问权限决定于这个变量 ...

  2. Python 3 学习笔记之——变量作用域、模块和包

    1. 变量作用域 Python 中,程序的变量并不是在哪个位置都可以访问的,访问权限决定于这个变量是在哪里赋值的.变量的作用域决定了在哪一部分程序可以访问哪个特定的变量名称.Python 的作用域一共 ...

  3. Python基本语法_变量作用域LEGB

    目录 目录 软件系统 变量的作用域 高级语言对数据类型的使用过程 作用域的产生 作用域的类型 Llocal局部作用域 Eenclosing嵌套作用域 Gglobal全局作用域 Bbuilt-in内置作 ...

  4. Python基础笔记_变量类型

     下面是W3C学习笔记 , , ) :] ]) :]) :]) :-]) :-]) ]) :]) :]) ) , , ]) :]) :]) ) , , , ]) :]) :]) ) ] = , ])) ...

  5. Java笔记_静态变量和实例变量的区别

    这里简单做一下笔记,区分Java全局变量里的静态变量与实例变量. 1.Java里的全局变量 首先了解Java里的全局变量,也叫成员变量. 特点: (1).一个类中既不在方法体内,也不在程序块内定义的变 ...

  6. JAVA笔记03 变量和运算符 面试题以及笔记

    标识符的命名规则需要注意哪几点? 定义 就是给类,接口,方法,变量等起名字的字符序列 组成规则 英文大小写字母 数字 $和_ 注意事项 不能以数字开头 不能是java中的关键字 区分大小写 常见的命名 ...

  7. java笔记之变量的存储方式

    1.java变量存储域 java变量的存储区域主要放在以下几个地方: (1)寄存器:可以说是最快的存储区,在C/C++中可以声明寄存器变量,但是在java中不能声明寄存器变量,只是编译器在编译时确定. ...

  8. 《JavaScript 高级程序设计》读书笔记四 变量 作用域 内存

    一   变量(基本类型和引用类型) a.基本类型保存值,保存在栈内存,引用类型保存指针,保存在堆内存: b.所有函数的参数都是按值进行传递的,不管参数是何种类型: c.检测类型 typeof     ...

  9. 02.第二章_C++ Primer学习笔记_变量和基本类型

    2.1  基本内置类型 2.1.1  算术类型 算术类型包括两类:整型和浮点型 2.2  变量 2.3  复合类型 2.4  const限定符 2.5  处理类型 2.6  自定义数据结构

  10. [笔记] HOW2J.CN网站记录的java笔记_第四部分_HTML

    1.写一个显示Hello World的网页, <html> <body> <p>Hello World</p> </body> </h ...

随机推荐

  1. Jenkins CLI命令行

    Jenkins CLI命令行 jenkins不光可以UI操作还提供了命令行接口 位置 首页->系统管理->工具和动作->Jenkins 命令行接口 在这个界面下载一个jenkins- ...

  2. 图书管理员(NOIP 2017 PJT2)

    0.题目 1.输入 输入 n,q: 输入图书,存入vector string a[20]数组,a[i][j],其中i表示图书编号的位数 2.查询操作 2.1 每输入一个读者需求 存入 int t; s ...

  3. 分布式配置nacos搭建踩坑指南(下)

    上一篇介绍了在配置nacos中的碰到的坑,这一篇介绍一下如何正确进行nacos的环境搭建和配置,所以本文分为两部分,第一部分为环境搭建,介绍如何安装和运行.第二部分为alibaba Sprint Bo ...

  4. SpringBoot Test Junit 联用

    需要导入SpringBoot test和junit的包 @RunWith(SpringRunner.class) @SpringBootTest(classes = PiYuApplication.c ...

  5. P26_wxss - 样式导入

    样式导入 什么是样式导入 使用 WXSS 提供的 @import 语法,可以导入外联的样式表. @import 的语法格式 @import 后跟需要导入的外联样式表的相对路径,用 ; 表示语句结束.示 ...

  6. maven项目构建报错:Could not find artifact com.xxx.cloud:xxx-cloud:pom:1.0-SNAPSHOT and 'parent.relativePath' points at wrong local POM

    maven多模块项目打包的时候报错如下: [ERROR] [ERROR] Some problems were encountered while processing the POMs: [FATA ...

  7. j-link "the connected j-link is defective"问题的解决

    出现这个原因是 J-link和J-link的驱动不匹配,比如J-link的固件太老,J-link驱动太新.因此要解决的话,要不就是换不同版本的J-link驱动,要不就是换J-Link或升级J-link ...

  8. 逆天的Zstack-工控机上测试

    放假前一直在服务器上折腾Zstack跑数据库,调IOC.正好手头有个32G内存,intel i7处理器的工控机,就试试装Zstack跑跑看,想着即使重负荷的跑不了,跑跑docker之类的也行.装成功后 ...

  9. SSM框架学习-AOP学习笔记

    一.AOP入门简介 AOP(Aspect Oriented Programming)面向切面编程,是一种编程范式,可以知道开发者如何组织程序结构 作用:在不惊动原始设计的基础上为其进行功能增强.(无侵 ...

  10. 学习ASP.NET Core Blazor编程系列二十七——JWT登录(1)

    学习ASP.NET Core Blazor编程系列文章之目录 学习ASP.NET Core Blazor编程系列一--综述 学习ASP.NET Core Blazor编程系列二--第一个Blazor应 ...