package com.javarush.test.testMain; /** * Created by vasily1 on 28.06.2016. */ public class Main { public static void main(String[] args){ Main myMain = new Main(); //создается объект класса main myMain.mainMedodIni(10); //объект myMain вызывает метод mainMedodIni Main myMainTwoLink = myMain.retutnThis(); // создаю новую ссылку типа Main (ссылку не объект!!!) //объект myMain вызывает метод retutnThis который возвращает ссылку на сомово себя Main myMainThreeLink = myMain.returnMyMain(myMain); //метод эквивалентен retutnThis() только тут явно передается ссылка System.out.println(myMain == myMainTwoLink); // true System.out.println(myMain == myMainThreeLink); // true } private Main returnMyMain(Main myMain) { return myMain; } private int mainField; private int ini; public void mainMedodIni(int ini){ mainField = ini; //this подставляется неявно this.mainField = ini; А на самом деле выглядит так myMain.mainField = ini; this.ini = ini; //все равно что myMain.ini = ini; } public Main retutnThis(){ return this; } }
Leave A Comment