I am new in Java Programming language.   

I am familiar with C and C++ but unable to understand the behaviour of the below program.

```java
public class Test {
    static int x = 11;
    private int y = 33;
    public void method1(int x) {
        Test t = new Test();
        this.x = 22;
        y = 44;    
        System.out.println("Test.x: " + Test.x);
        System.out.println("t.x: " + t.x);
        System.out.println("t.y: " + t.y);
        System.out.println("y: " + y);
    }    
    public static void main(String args[]) {
        Test t = new Test();
        t.method1(5);
    }
}

```

Correct Output:

```
Test.x: 22
t.x: 22
t.y: 33
y: 44

```

Output expected:

```
Test.x: 22
t.x: 22
t.y: 44   // As variable y is modified inside the function.
y: 44

```

Even changing the line from `y = 44;` to `this.y = 44;` is not giving the expected output.