클래스 메소드1 [JAVA] static 메소드 Spring 오픈 카톡방에 흥미로운 질문이 올라왔다. 부모클래스의 static 메소드를 오버라이딩한 자식메소드에서 왜 super로 접근이 불가능 하냐는 질문이었다. static 메소드 자바에서 메소드에 static을 붙이면 Class.methodName(); 으로 호출이 가능하다. 대신에 이렇게 만들어진 static 메소드는 해당 클래스로 부터 만들어진 인스턴스에서 호출할 수 없다. 그래서 클래스 메소드라고 부르기도 한다. 앞서말한 코드를 보자, 메소드 내부에 super를 참조하는 내용을 작성하기 전까지는 오류가 나지 않았는데, 작성하니 저런 오류가 발생했다. 원인은 근본적인 곳에 존재했다. 애초에 this, super는 클래스 기준의 this, super로의 참조가 아닌 생성된 객체 기준에서 this,.. 2021. 3. 25. 이전 1 다음 728x90