본문 바로가기

JAVA/변수 및 객체, 기타

클래스의 변수

 클래스 : '필드'  + 생성자 + 메소드
  
  1. 필드 
   -전역변수: 클래스 영역에 작성하는 변수로 같은 클래스 내에서 어디서든 
   호출이 가능하다.
   -지역변수 : 메소드 실행시, 생성자, 제어문 등등, 클래스 영역을 제외한 특정한 구역({})
   안에 생성되어 그 지역에서만 사용할 수 있는 변수
   
 2. 전역변수
   -멤버변수(인스턴스 변수)
  생성 : new를 통해서 인스턴스(객체)생성시에 메모리 할당.
  소멸 : 객체(인스턴스)가 소멸시 소멸
  -클래스 변수(static 변수) : 클래스 영역에서 static이라는 예약어가 붙은 변수(static == 공유의 개념)
   따로 객체를 만들지 않아도 끄집어내서 사용가능(공유)
   
   생성 : 프로그램을 실행시에 static(정적 메모리 영역)에 할당 
   소멸 : 프로그램을 종료시
  
  
  
  3-1.지역변수: 다시 사용하기 위해서는 반드시 초기화가 되어야 한다.(출력시 초기화 값없으면 오류)
  생성:특정한 구역({}) 실행 시 메모리 영역에 할당(ex.메소드 실행 시)
  
  소멸:특정한 구역({}) 종료 시 소멸(메모리 영역에서 제거)

 

  3-2. 매개변수 (메소드의 괄호 안에 작성하는 변수 -> 일종의 지역변수)

       (자료형 변수명, 자료형 변수명,......)
      우선 선언만 해두는 것(나중에 메소드를 부를때 ()안에 자료형에 맞는 값을 넣어주면됨)
      여러 자료형, 여러 값을 넣을 수 있음(단 선언해준 만큼 넣어야됨)

 
  
  4.final(상수)
   하나의 값만 계속 저장해야 하는 변수에 사용
   final과  static은 같이 사용가능(예약어 중복 가능. 예약어끼린 위치 상관없음)
 
 5. static final(==final static)
  상수이면서 정적메모리에 보관하여 여러 객체가 공유할 목적으로 사용
  

 

public class 클래스() {    (클래스 영역 시작)

(필드)

     접근제한자 변수명; -> 멤버변수

     접근제한자 final 변수명; -> 상수

     접근제한자 static 변수명; -> 클래스변수(클래스 변수 역시 접근제한자에 따라 끌어다 쓸 수 있는 범위가 제한)

     접근제한자 static final (= final static) 변수명(대문자);

 

 

    접근제한자 클래스(){ <- 기본생성자

 

    }

 

    접근제한자 클래스(접근제한자 변수명){ 매개변수 생성자

         this.변수 = 변수   (this.변수 : 필드 변수/  = 뒤의 변수는 매개변수(지역변수)를 의미

    }

 this : 모든 인스턴스 메소드에 숨겨진 채 존재하는 레퍼런스로 할당된 객체를 가리킴. 함수 실행시 전달되는 객체의 주소를 자동으로 받음

 

 

    접근제한자 [예약어] 리턴형 메소드([자료형 변수명]){[=매개변수]

         자료형 변수명2; -> 지역변수

         자료형 변수명3 = 값;

 

        //기능정의

        System.out.println(변수명);  -> 메소드 실행시 매개변수로 넣은 값 출력

        System.out.println(변수명2); -> 초기화가 되어있지 않아서 오류

        System.out.println(변수명3); -> 값 출력

    }

} (클래스 영역 끝)

 

'JAVA > 변수 및 객체, 기타' 카테고리의 다른 글

메소드와 return, 오버로딩  (0) 2019.12.15
객체지향 3대 특성  (0) 2019.12.15
클래스  (0) 2019.12.15
객체란  (0) 2019.12.15
연산자  (0) 2019.12.13