In JAVA we describe variables through three elements: variable type, variable name and variable value.
String love="imooc";
Variable type variable name value (String is immutable, a new String object will be generated after reassignment, love variable name is actually a reference to the object address, "imooc" for a specific value).
love="I love imooc";
The variable is reassigned and points to a new object, with the object value being "i love imooc".
Variables are divided into class variables (static variables), instance variables and local variables (local variables).
Local variables are local variables,
are used in methods, constructors or blocks, and are created when the method, constructor or block enters. The variable will be destroyed when exiting
Local variables have no default value, so local variables must be declared and assigned a value before using them for the first time
Instance variables:
Declared in a class, but outside a method, constructor, or block, the location of each instance variable is created when a space is allocated for an object in the heap.
The instance variable is created when the object is created using the keyword "new", and it is destroyed when the object is destroyed.
The value of an instance variable must be referenced by more than one method, constructor, or block, or a significant part of the object's state that must appear in the class
Instance variables can be accessed using access descriptors
Instance variables have default values. The default value for numbers is 0, the default value for boolean is false, and the default value for object references is NULL
Instance variables can be accessed directly by calling names in the class. However, fully qualified names should be used in static methods and in different classes. ObjectReference.VariableName
Instance variables are variables belonging to instances of a class, also known as member variables, and have not been static modified. Instance variables can only be manipulated through the instance dot operator variable of the class name.
Class variables:
Also called static variables, they are declared with the static keyword in the class, but they are outside the method, constructor or block.
Each class has only one class variable, no matter how many objects the class has.
Except for being declared as constants, class variables are rarely used. Constants are variables declared as public, private, final and static. The initial value of the instance variable will not be changed
Static variables are stored in static memory. Static variables are rarely used instead of being declared at the end or using one of the constants public or private.
Static variables start and end with the start and end of the program.
Visibility is similar to instance variables. However, most static variables are declared public because they must be available to users of the class.
The default value is similar to the instance variable, except that it can be assigned in a special static initialization area
Static variables can be accessed with the name of the class ClassName.VariableName
When When a static variable is declared as public static final, the variable (constant) name must be in uppercase letters. If a static variable is not public and final, its naming method is the same as instance variables and local variables.
Class variables can not only be operated directly through the class name dot operator variable name, but also through the instance dot operator variable of the class. In most cases, the former operation method is not effective. Use the variable properly, and secondly, it can indicate that the variable is a class variable.
The above is the detailed content of What are variables in Java. For more information, please follow other related articles on the PHP Chinese website!

Start Spring using IntelliJIDEAUltimate version...

When using MyBatis-Plus or other ORM frameworks for database operations, it is often necessary to construct query conditions based on the attribute name of the entity class. If you manually every time...

Java...

How does the Redis caching solution realize the requirements of product ranking list? During the development process, we often need to deal with the requirements of rankings, such as displaying a...

Conversion of Java Objects and Arrays: In-depth discussion of the risks and correct methods of cast type conversion Many Java beginners will encounter the conversion of an object into an array...

Solutions to convert names to numbers to implement sorting In many application scenarios, users may need to sort in groups, especially in one...

Detailed explanation of the design of SKU and SPU tables on e-commerce platforms This article will discuss the database design issues of SKU and SPU in e-commerce platforms, especially how to deal with user-defined sales...

How to set the SpringBoot project default run configuration list in Idea using IntelliJ...


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

MantisBT
Mantis is an easy-to-deploy web-based defect tracking tool designed to aid in product defect tracking. It requires PHP, MySQL and a web server. Check out our demo and hosting services.

SAP NetWeaver Server Adapter for Eclipse
Integrate Eclipse with SAP NetWeaver application server.

MinGW - Minimalist GNU for Windows
This project is in the process of being migrated to osdn.net/projects/mingw, you can continue to follow us there. MinGW: A native Windows port of the GNU Compiler Collection (GCC), freely distributable import libraries and header files for building native Windows applications; includes extensions to the MSVC runtime to support C99 functionality. All MinGW software can run on 64-bit Windows platforms.

PhpStorm Mac version
The latest (2018.2.1) professional PHP integrated development tool

VSCode Windows 64-bit Download
A free and powerful IDE editor launched by Microsoft