static 선언에 대한 질문..
나길
class내에서 static으로 변수를 선언할때요..
static
{
final String 변수1;
final String 변수2;
final String 변수3;
}
하고
staticfinal String 변수1;
staticfinal String 변수2;
staticfinal String 변수3;
두개가 어떤 의미에서 다른 거죠??
저는 처음에 static{}이것은 여러개의 변수를 static으로 선언할때 편하게 한번에 묶어서 선언하는 것이라고 생각 했었는데요..
다른 class에서 해당class의 변수1, 변수2, 변수3을 쓸려고 했더니 위에꺼는 변수들이 보이지 않고 아래 것은 보이더라구요..
두개의 쓰임세가 다른건가요??
-
한빛
옷.. 자세한 설명.. 버섯수다님 감사합니다~
-
헛나발
심심하시면.. Test 클레스에 static{}블럭으로 System.out.println(\static {}\);처럼 적고..
Test클레스의 생성자에 System.out.println(\test 생성자\); 처럼 하신뒤에..
main()등에서 Test a = new Test();
Test b = new Test();등으로도 다양하게 테스트 해 보시면 조금은 이해가 되리라 봅니다.
static {}블럭의 경우 윗분들이 답변해주신것처럼
블럭안에서 지정된 -
찬늘
위는 static 블럭 이라고 하며 아래는 static 선언이라고 해야 겠지요^^
static의 경우 클레스에 정의될 경우 클레스 변수가 되시는건 아실것입니다.
static int a라고 선언하면 이 a는 객체와는 무관하게 클레스에서 유일한 변수가 됩니다.
그렇다면.. static {}블럭은 언제 사용할 까요???
static으로 선언된 모든 녀석들은 JVM이 해당 클레스를
메모리에 로딩하는 시점에 이미 바인딩되게 됩니다.
따라서, Class Test라 -
루라
아.. 블록이 함수의 블록이 아닌 그 블록이구나.. 감사합니다.. ^^
-
사라
블록 안에 선언된 변수가 로컬 변수인것은 모든 블록에 적용되는 규칙입니다.
if(true) {
String foo;
}
역시 마찬가지이고, for, while 문역시 마찬가지입니다. 클래스나, 메서드역시 하나의 블록이기 때문에 블록 == 내부변수라고 기억하시면 쉬울것 같습니다. -
보담
static { }은.. 함수라고는 볼 수 없구요.. ㅎㅎ
뭐.. 아무튼.. 정확하게 이해하기 힘들면.. 위에까지만 이해해두면 됩니다.
모르는게 나오면 그때 또 알아 가면 되지요. ㅎㅎ. -
별하
찬 님덕분에 저도 개념으로 확실히 잡아갑니다
-
이하얀
아.. static{}는 함수이고 아래 것은 변수선언 인거군요..
-
붕붕
{ } 는.. 하나의 묶음을 뜻합니다.
{ } 안에 선언되어서 사용된 놈들은 { } 안에서만 사용할 수 있지요.
그러니 당근. { final String변수1; } 은 외부에서 사용할 수 없습니다.
할라면
static final String 변수1;
static {
변수1=\냐냐냐\;
}
요정도는 쓸 수 있겠죠? -
자랑
제가 초보인지라 ... 위에건 본적이 없습니다만...밑에가 변수 선언할 때 쓰는거구요 위에는 저희 class선언 할때처럼 묶는거잖아요 그렇게 하심 안에 들어있는 변수는 static변수로 보이지 않을거에요 ^^
번호 | 제 목 | 글쓴이 | 날짜 |
---|---|---|---|
2701123 | 간단한 select 질문입니다 (3) | 천사의눈물 | 2025-07-11 |
2701061 | 비베질문.. | 똘끼 | 2025-07-10 |
2701034 | 메일폼 내 script 삽입가능한 방법 없을까요.. (2) | 마음새 | 2025-07-10 |
2701008 | 분명히 버튼을 만들었는데 액션이 안걸립니다. (3) | 재찬 | 2025-07-10 |
2700923 | 전체중앙정렬&독타입&쿼크모드 ㅜㅠ (8) | 푸른들 | 2025-07-09 |
2700893 | 질문드리겠습니다. | 도도한 | 2025-07-09 |
2700793 | 무비클립에 마우스 오버시 랜덤으로 효과음 나기는 어떻게 ;; (1) | 바닐라 | 2025-07-08 |
2700741 | 웹전송? (2) | 연와인 | 2025-07-07 |
2700686 | 카테고리 호버시 세부카테고리 보이게하는 것, css로만 가능할까요?? (3) | 다힘 | 2025-07-07 |
2700658 | 메타태그 질문드립니다..ㅠㅠ;;; | 모해 | 2025-07-07 |
2700632 | 외부에서 이미지 파일을 불러와야 합니다. 도와주세요. (4) | 에일린 | 2025-07-06 |
2700579 | (air + as3) smtp 이용해서 첨부파일 포함해서 메일 보내기 | 물보라 | 2025-07-06 |
2700524 | 클릭시 밑에 메뉴 나오게 (4) | 새솔 | 2025-07-05 |
2700505 | activex를 비쥬얼6.0으로 만들었는데요 비스타 배포시에 안되서 질문드립니다 (3) | 참이 | 2025-07-05 |
2700452 | c언어에서... 자료형 구분.... (3) | 시내 | 2025-07-05 |
2700422 | 버전에 관해 질문 | 라온제나 | 2025-07-04 |
2700393 | mysql이 갑자기!!!!!!!!!!!!!!!에러가;; (2) | 소미 | 2025-07-04 |
2700359 | 3.0 ) SimpleButton 상태 강제 변경 (3) | 희선 | 2025-07-04 |
2700304 | ie8 전용핵 문의 (3) | 여자 | 2025-07-03 |
2700281 | 이런경우 어떻게 코딩해야 표준에 따르는건가요? (6) | 늘솜 | 2025-07-03 |