Home > Java > javaTutorial > body text

Java program for checking accessibility of instance variables through static methods

王林
Release: 2023-09-03 18:21:06
forward
1207 people have browsed it

Java program for checking accessibility of instance variables through static methods

Static methods are defined using the static keyword, but the static keyword is not used when declaring instance variables. Normally, we cannot access instance variables through static methods.

In this article, we will create an instance variable and then check the accessibility of the instance variable through a static method. First let us understand static methods and instance variables.

Instance Variable

In the context of a programming language, a variable is the name of a container that contains data of any type. We can say it is a storage unit.

Syntax to declare a variable

Data_Type nameOfvariable = values [optional];
Copy after login

A variable can be initialized at the time of declaration or we can initialize it when required in the whole program. But value must be of the same data type as specified at the time of declaration.

Example

String str; 
// only declaration
int price = 59; 
// declaration and initialization
str = “Tutorix”; 
// initialization of ‘str’  
Copy after login

Instance variables are one of the types of variables that are non-static. They are declared inside class but outside of every method scope of that class. They are accessible to all methods that belong to the class where it is defined. can be public, private, protected, or default. If we don't mention any access specifier then variable will be initialized with default access specifier.

Static Method

Static methods are defined using non access modifier static keyword. Normally, we call a method by creating an object of its class but static methods can be called without using objects. We call them using their class name only because static method belongs to class not to the instance of that class.

To call Static Mehtod

Class_name.static_method_name
Copy after login

For example, most of the members of inbuilt class Math is static. We can use them directly without creating its object.

Example 2

public class Main {
   public static void main( String[] args ) {
      double x = 6.55;
      double y = 4.32;
      System.out.println(" Ceil value of x: " + Math.ceil(x) );
      System.out.println(" Floor value of y: " + Math.floor(y) );
      System.out.println(" Value of PI = " + Math.PI);
   }
}
Copy after login

Output

Ceil value of x: 7.0
Floor value of y: 4.0
Value of PI = 3.141592653589793
Copy after login

The above example illustrates the use of the static methods ceil() and floor() of the Math class. We can see that we use them directly in our program without creating any Math class objects.

Checking the accessibility of instance variables through static methods

We already mentioned earlier in this article that we can’t access instance variables by a static method directly, we can only access them by creating an instance or object of the class.

Example

The following program demonstrates whether we can access instance variable by static method main() or not.

public class Main {
   public String str = "Tutorialspoint"; 
   public static void main(String []args) {
      System.out.println(" Accessing instance variable " + str);
   }
}
Copy after login

If we try to run the above code we will get an error.

Output

Main.java:4: error: non-static variable str cannot be referenced from a static context
   System.out.println(" Accessing instance variable " + str);
                                                        ^
1 error
Copy after login

Example

The following program example illustrates how to access instance variables through static methods. We will create an object 'obj' of Main class and by using this object we can access the variable 'str'.

public class Main {
   public String str = "Tutorialspoint"; 
   public static void main(String []args) {
      Main obj = new Main(); 
      // creating object using new keyword
      // To access the instance variable ‘str’
      System.out.println(" Accessing instance variable: " + obj.str);
   }
}
Copy after login

Output

Accessing instance variable: Tutorialspoint
Copy after login

Conclusion

In this article, we learned about the concepts of instance variables and static methods. Furthermore, we also discussed the accessibility of static methods to instance variables through Java programs.

The above is the detailed content of Java program for checking accessibility of instance variables through static methods. For more information, please follow other related articles on the PHP Chinese website!

source:tutorialspoint.com
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template