REW

How To Declare A Variable In Programming?

Published Aug 29, 2025 4 min read
On this page

In programming, declaring a variable means assigning a name to a storage location in memory.

This process informs the compiler or interpreter about the variable's name and, in some languages, the specific type of data it will hold, like a number, text, or a boolean value. Declaring a variable is an essential first step before you can use it to store and manipulate data.

The two main approaches to variable declaration

There are two primary models for declaring variables, defined by how a programming language handles data types:

**1. Statically typed languages (e.g., Java, C++)**In these languages, you must explicitly define the variable's data type when you declare it. The type is fixed for the variable's lifetime and cannot be changed later. This allows the compiler to perform strict type-checking before the program runs, catching potential errors early.

General syntax:dataType variableName;

  • **Example in Java:**java

    // Declare an integer variable named 'age'
    int age;
    // Declare a string variable named 'name' and initialize it
    String name = "Alice";
    

    Use code with caution.

  • Key characteristics:

    • Early error detection: Catches type-mismatch errors during compilation.
    • Performance: Can lead to faster execution because the compiler can optimize based on the known variable types.
    • Clarity: Makes the code's intent clearer to other developers, as the data type is always explicit.

**2. Dynamically typed languages (e.g., Python, JavaScript)**In contrast, these languages do not require you to specify a data type at the time of declaration. The variable's type is determined at runtime based on the value you assign to it. You can also change the variable's type later by reassigning it a value of a different type.

General syntax:variableName = value;

  • **Example in Python:**python

    # A variable is created when a value is assigned
    greeting = "Hello, World!"
    # The variable can later be reassigned a different type
    greeting = 123
    

    Use code with caution.

  • Key characteristics:

    • Flexibility: Allows for rapid prototyping and more concise code.
    • Runtime errors: Type errors may not be caught until the code is executed.
    • Simplicity: Does not require verbose type annotations, making it easier for beginners.

Variable declaration in popular languages

Here is a breakdown of declaration syntax across several commonly used programming languages.

JavaScript

Modern JavaScript offers three keywords for variable declaration, each with different scoping rules:

  • let: Declares a block-scoped local variable, whose value can be reassigned.javascript

    let score = 100;
    score = 150; // Reassigning the value is allowed
    

    Use code with caution.

  • const: Declares a block-scoped constant, which must be initialized and cannot be reassigned.javascript

    const PI = 3.14159;
    // PI = 3.14; // This would cause an error
    

    Use code with caution.

  • var: An older keyword that declares a function-scoped variable. Its use is generally discouraged in modern code due to its confusing scoping behavior.javascript

    var x = 5;
    

    Use code with caution.

Java

Java is a statically and strongly typed language, requiring an explicit type for each variable.

  • **Declaration and initialization:**java

    // Declaration only
    int myNumber;
    // Declaration and initialization in one step
    String username = "johndoe";
    

    Use code with caution.

  • **Multiple variables:**java

    // Declare and initialize multiple variables of the same type
    int x = 10, y = 20, z = 30;
    

    Use code with caution.

  • **Constants:**Use the final keyword for variables whose values should not change.java

    final double TAX_RATE = 0.08;
    

    Use code with caution.

Python

In Python, variables are not declared with an explicit type. A variable is created the moment you first assign a value to it using the assignment operator (=).

  • **Declaring and assigning:**python

    name = "Sarah"
    is_active = True
    

    Use code with caution.

  • Dynamic typing: The type of a variable can change based on the value assigned to it.python

    my_var = 100 # my_var is an integer
    my_var = "new value" # now my_var is a string
    

    Use code with caution.

C++

Like Java, C++ is a statically typed language where you must specify the variable's type when declaring it.

  • **Declaration syntax:**cpp

    int number; // Declares an integer variable
    double average_score; // Declares a double-precision floating-point variable
    

    Use code with caution.

  • **Initialization:**cpp

    int year = 2025; // Declaration and initialization
    

    Use code with caution.

Important concepts related to variable declaration

  • Initialization: While declaration reserves memory for a variable, initialization is the act of assigning its first value. In statically typed languages, declared variables often have a default value or are uninitialized until assigned.
  • Scope: The scope of a variable determines where in the program that variable can be accessed.
    • Global scope: Variables declared outside of any function or block are accessible from anywhere in the program.
    • Local scope: Variables declared inside a function or block are only accessible within that context.
  • Naming conventions: Good variable names are descriptive and readable. Common conventions include:
    • camelCase: (e.g., firstName) Common in JavaScript and Java.
    • snake_case: (e.g., first_name) Common in Python.
  • Reserved keywords: You cannot use a programming language's reserved keywords (e.g., if, for, let, class) as variable names.
Enjoyed this article? Share it with a friend.