게시판 즐겨찾기
편집
드래그 앤 드롭으로
즐겨찾기 아이콘 위치 수정이 가능합니다.
java static method 로 class 안에있는..
게시물ID : programmer_1849짧은주소 복사하기
작성자 : 할말이있어
추천 : 1
조회수 : 496회
댓글수 : 32개
등록시간 : 2014/03/15 16:57:16
질문이있습니다.

예를들어서 사람클래스가있다고하면

class person {
String name;
}

name 이라는 변수는 person 객체마다 다르기를 원하기 때문에 static으로 선언하지않았습니다.
static 으로 선언하면 모든 person 객체가 같은 name을 가지니까요.

그런데 person 의 main 메소드는 static 입니다.

class person {
String name;
public static void main(String[] args) {
}
}

static 메소드 에서는 static 메소드만 부를 수 있기 때문에 main 에서 호출에 호출을 거쳐서 어떤 메소드 f에 도달했다고합니다.

f는 static 일 수 밖에 없죠
여기서 f 로 name을 변경하고싶은데
name은 static 이 아니기때문에 참조가 불가능합니다.
그렇다고 name을 static으로 선언하기는 취지에 맞지 않구요.
f안에서 새 객체를 선언하여 그것의 name을 변경하자니 그게 자신이 몸담고있는 클래스의 name이 되지 않는거같습니다.

어떻게 하면 좋을까요 ㅠ
전체 추천리스트 보기
새로운 댓글이 없습니다.
새로운 댓글 확인하기
글쓰기
◀뒤로가기
PC버전
맨위로▲
공지 운영 자료창고 청소년보호