java各种类型变量你还不傻傻分不清?最全的变量都在这

createh522小时前技术教程4

前言

互联网上有很多关于变量的解释。质量参差不齐,所以我写了这篇文章和我的理解。如果有什么不对劲的地方,速速指教。

变量是我们经常使用的一种类型。当我第一次学习Java时,我经常被各种变量的概念所折磨。那时候,我没有细致的研究它们,因为这些变量还是很繁琐的,使用的时候也简单,基本不会出现问题。

在本文中,我将深入了解Java中这些变量的概念。

变量种类

那么在java中有几种变量呢?

大概就是以下几种。


下面我们就采用各个击破的方式来细细讲解它们的概念。


实例变量

实例变量也称为Instance variables,不用静态关键字定义,在任何方法、构造方法快之外的变量都是实例变量。实例变量都基于特定实例。实例变量不在实例之间共享。换句话说,每个对象的实例都有自己的实例变量。下面是一个实例变量的示例。


如何识别实例变量?

那么我如何知道变量是实例变量呢?下面是一些定义实例变量的规则。


实例变量有默认值,也就是说,它们可以在不初始化的情况下使用。下面是常用实例变量的初始值。


实例变量的特点。

我们已经了解了实例变量的基本特征以及如何区分它们。我们来谈谈实例变量的特性。



全局变量

如果你有 C、C++ 的编程经验,你会接触到全局变量这个概念,但是java是没有全局变量的概念的,

因为Java是一种面向对象的编程语言,所以所有内容都是类的一部分。Java这样做的原因是为了防止数据和类成员被其他程序的其他部分有意或无意地修改。所以在Java中,使用静态变量能起到全局访问的目的。

静态变量


静态变量也称为Static variables。静态变量的定义很简单。静态变量属于这个类,它由Static关键字修饰。 static 修饰的变量属于静态变量,只能在类内部或方法外部定义。

记住三点:

一、Java 中被 static 修饰的成员称为静态成员或类成员
二、它属于整个类所有,而不是某个对象所有,即被类的所有对象共享。
三、静态成员可以使用类名直接访问,也可以使用对象名进行访问


静态变量的特点

静态变量只能用static 关键字修饰。它们不能在方法中声明,无论是在静态还是非静态的方法中。

静态变量在程序运行之前初始化,并且只初始化一次。静态变量有一个初始化序列,我们稍后讨论。

静态变量的所有实例共享同一副本。换句话说,只有一个静态变量,它不会随着对象实例的创建而进行副本拷贝。

静态变量可以通过类名+变量名访问,可以在不创建任何对象的情况下访问。


类变量

类变量也称为Class variables。在Java中,类变量就是静态变量。它们都用静态关键字装饰。因此,如果你听到某人说静态变量,那么它就是在说类变量。

类变量与实例变量的区别

(1)类变量属于类,可以共享,属于公共属性;实例变量属于某个对象个体;

(2)加上static 为类变量或者静态变量,否则为实例变量;

使用static修饰的成员变量是类变量,属于该类本身;没有使用static修饰的成员变量是实例变量,属于该类的实例。在同一个JVM内,每个类只对应一个Class对象,但每个类可以创建多个Java对象。


局部变量

有些人说Java中只有类变量、实例变量和局部变量,这很容易理解。有人可能会问,你把成员变量和常量放在哪里?别担心。我们待会儿再谈。

什么是局部变量?


就是在成员方法里面定义的变量我们称之为局部变量,局部变量的生命周期随方法、构造器、代码块的执行完毕而销毁。

没有特殊的关键字将制定的变量声明为局部变量、确定其声明的完全取决于声明变量的位置。

特点:

1、变量的定义位置:定义在方法中或者语句块中。

2、局部变量没有默认值,局部变量一定要赋初始值,否则使用该变量的时候会报错。

3、在同一个域中(大括号区域内),不能有重复的变量名。

4、变量的作用范围:只在当前的大括号内有效(包括子括号),大括号外所有的程序不能使用该变量,所以这种变量也称为局部变量

5、局部变量不能使用访问修饰符


成员变量

有人说成员变量就是实例变量对吗?

什么是成员变量?

  成员变量就是类中的属性。当new对象的时候,每个对象都有一份属性。一个对象中的属性就是成员变量。

成员变量就是在类中定义的变量

那么在类中不管用不用static修饰它都是成员变量了。

成员变量=类变量,实例变量。

参数

定义在方法参数中的变量被称为参数。


相关文章

Java变量详解

在Java中,变量是存储数据的基本单元。每个变量都有一个特定的数据类型,用于定义它可以存储的数据种类和大小。变量声明和初始化在 Java 语言中,所有的变量在使用前必须声明。声明变量的基本格式如下:t...

详解 Java 中的变量

网上罗列了很多关于变量的理解,良莠不齐,不知道哪些是对的,哪些是错的。所以笔者索性就这些博客和自己的理解写出这篇文章,如果有不对的地方,希望读者能够指正,感谢。变量是我们经常用到的一种,我在刚学 Ja...

Java变量

编者按计算机能够直接识别的是二进制流,原始的程序设计都是基于二进制方式设计的。随着计算机语言的发展,计算机编程越来越偏离二进制方式;为什么会这样呢?理由很简单,程序是人来编写、阅读和维护的!变量是编程...

数据必学Java基础(十一):变量和常量详细讲解

#头条创作挑战赛#变量和常量举例:丽丽的年龄:去年17岁,今年18岁,明年19岁年龄:17--》18---》19 --》值不断变化年龄---》变量常量: 17 , 18 , 19 ----》 常量中的...

Java类和对象的概念

Java是一门面向对象的编程语言,理解Java,首先要理解类与对象这两个概念。Java中的类可以看做C语言中结构体的升级版。结构体是一种构造数据类型,可以包含不同的成员(变量),每个成员的数据类型可以...

Python变量是怎么定义和使用的?本文详解

任何编程语言都需要处理数据,比如数字、字符串、字符等,我们可以直接使用数据,也可以将数据保存到变量中,方便以后使用。变量(Variable)可以看成一个小箱子,专门用来“盛装”程序中的数据。每个变量都...