Java中的实例控制流程
Instance control flow is a fundamental concept of Java programming language that a beginner, as well as an experienced one, must know about. In Java, the instance control flow is a step by step process of execution of members lies within the class. The members that exist inside a class include instance variables, instance methods, and instance blocks.
Whenever we execute a Java program, JVM looks for the main() method first and then, it loads the class into memory. Moving further, the class gets initialized and its static block, if any, is executed. After the execution of the static block, the instance control flow begins. In this article, we are going to explain what is an Instance Control Flow.
Instance Control Flow in Java
In the previous section, we briefed about the instance control flow. In this section, we will discuss it in detail through example programs.
The following steps are involved in the process of Instance Control Flow:
第一步是从类的顶部到底部识别实例成员,如实例变量、实例方法和实例块
The second step is the execution of instance variable of the class. The instance variables are declared inside the class but outside the method. Generally, to show their values we need to define either a constructor or a method.
Next, the instance blocks get executed by JVM in the order they appear in the class. These blocks are anonymous blocks that are used to initialize instance variables.
In the fourth step, the JVM invokes the constructor of the class to initialize the object.
进一步移动,调用实例方法来执行各自的操作。
In the end, the garbage collector is called to deallocate the memory.
Example 1
下面的示例演示了Instance控制流的整个过程。
public class Example1 { int x = 10; // instance variable // instance block { System.out.println("Inside an instance block"); } // instance method void showVariable() { System.out.println("Value of x: " + x); } // constructor Example1() { System.out.println("Inside the Constructor"); } public static void main(String[] args) { System.out.println("Inside the Main method"); Example1 exp = new Example1(); // creating object exp.showVariable(); // calling instance method } } 登录后复制