前言

在Java语言中,根据定义变量的位置不同,可以将变量分为两大类:成员变量与局部变量。而两者的运行机制也存在着较大的差异,本篇文章将详细介绍这两种变量的运行差异。

一.成员变量

成员变量指的是类范围里所定义的变量,也就是前面介绍过的属性;局部变量指的是在方法中所定义的变量。不管是成员变量还是局部变量,都遵守同一个命名规则。

变量分类图

成员变量被分为类属性和实例属性两种,定义属性时没有被static修饰的属性就是实例属性,有static修饰的就是类属性。其中类属性使从类的准备阶段就存在,直到系统完全销毁这个类,类属性的作用域与这个类的生存范围相同,在类中任何地方都可以通过'类.属性'的方法来调用类属性。

类属性调用演示

而类的实例属性的作用于与对应实例的生存范围相同。因为类和实例的属性都是随着类或对象的产生而产生,随着类或实例的销毁而销毁,因此我们将类属性和实例属性统称为成员变量。类属性被称为类成员变量,实例属性被称为实例成员变量。

只要类或实例存在,程序就可以通过类或实例访问其属性:

类.类属性实例.实例属性

当然Java语法也允许实例访问类属性(虽然不推荐这种写法&

Java高阶部分知识点汇总(一)- 成员变量与局部变量详讲相关推荐

  1. Java高阶部分知识点汇总(三)-内存空间的引用

    前言 在前面给大家展示的代码中,有这样一行代码 Student stu = new Student(); 这行代码创建了一个Student对象,这个对象被赋给stu变量.今天我们就来好好学习一下这行代 ...

  2. Java高阶部分知识点汇总(二)-封装与隐藏详讲

    前言 在前面程序中,经常会出现通过某个对象的直接访问其属性的情况,这会出现很多潜在问题,例如前面我们定义过的学生类Student,我可以通过其实例对象直接访问到实例的age属性,并赋值,这在Java语 ...

  3. Java高阶部分知识点汇总(四)-继承与多态

    前言 前面讲了面向对象的两个特性,封装和继承.本文将面向对象的最后一个特性多态,而多态是在继承的基础上存在的. Java的引用变量有两个类型:一个是编译时的类型,另一个是运行时的类型.编译时的类型由声 ...

  4. Java高阶部分知识点汇总(三)-基本类型的包装类详讲

    前言 Java语言为8个基本数据类型都提供了对应得包装类,通过8个包装类可以把8个基本数据类型的值包装成对象使用,JDK1.5提供了自动装箱和自动拆箱功能,也就是基本类型和对应包装类可以直接互相赋值使 ...

  5. Java高阶语法---final

    背景:听说final Java高阶语法是挺进BAT必经之路. final: final关键字顾名思义就是最终不可改变的. 1.含义:final可以声明成员变量.方法.类和本地变量:一旦将引用声明为fi ...

  6. Java高阶代码_Java高阶语法---Volatile

    背景:听说Volatile Java高阶语法亦是挺进BAT的必经之路. Volatile: volatile同步机制又涉及Java内存模型中的可见性.原子性和有序性,恶补基础一波. 可见性: 可见性简 ...

  7. linux高可用小知识点汇总-行云管家

    不少运维小伙伴对于linux高可用相关知识不是很了解,今天我们小编就给大家汇总了一些,希望可以加深大家的了解.仅供参考哦! linux高可用小知识点汇总-行云管家 一.Linux是什么系统? [回答] ...

  8. java高并发与多线程汇总(一):基础知识(上)

    java高并发与多线程汇总 往期文章推荐:   java高并发与多线程汇总(一):基础知识(上)   java常见面试考点(四十二):序列化与反序列化   java常见面试考点(四十三):泛型   j ...

  9. java include 传递对象_变量的值传递,地址引用(和对象成员变量、局部变量创建和初始化的内存机制)...

    变量的值传递,地址引用(和对象成员变量.局部变量创建和初始化的内存机制) 变量的值传递,地址引用: 搞懂=含义,=即指向,看指向的内存块是否发生改变,还有是否是新内存块, 通过指向可以控制内存块的值. ...

最新文章

  1. PHP复制和移动目录
  2. 干货丨机器学习研究者必知的八个神经网络架构(经典文章,值得收藏)
  3. python【蓝桥杯vip练习题库】ALGO-106 6-3判定字符位置
  4. Android系统启动-init篇
  5. python做毕业设计选题_软妹子的毕业设计:用Python制作防盗门系统!
  6. 第六章 Qt布局管理器Layout
  7. 【官方文档】《暗黑世界V1.4》API说明!
  8. 使用VS2019创建项目,添加文件和库地址
  9. 《 产品设计思维:电商产品设计全攻略》一一2.3 电子商务的存在形态
  10. 对LR回放中highest severity level wasERROR的解决方法
  11. iphone怎么查看wifi密码_WiFi密码忘了怎么办?一秒找回密码
  12. FlinkSQL快速入门
  13. 要重新学习线性代数了!
  14. 深度学习 视频目标跟踪
  15. 基础呀基础,用二极管防止反接,你学会了吗?
  16. Android 学习笔记(十二):安卓中的事件分发机制
  17. ArcGIS与插值(一): 统计与地统计
  18. 摄像头的像素如何计算
  19. 书桌台灯怎么选?分享儿童卧室灯品牌
  20. 为什么k8s天然适合微服务?

热门文章

  1. Jquery获取ckEditor的内容
  2. Microsoft .NET Pet Shop 4
  3. 几个常用的Linux监控脚本
  4. 惊心动魄两秒钟——刷X200 SLIC2.1程序
  5. mqtt 之 last will(遗愿)
  6. svn仓库出现already locked error解决方法:cleanup
  7. CSP认证202012-2 期末预测之最佳阈值[C++题解]:遍历、前缀和
  8. 机器学习week3课后作业
  9. mysql 分组 列转行,mysql 列转行以及岁月分组
  10. python 类继承和组合_Python:继承与组合