09. JAVA 클래스 / 객체 생성 및 사용 / 접근지정자 / 전역, 지역 변수 / static : 네이버 블로그

2020. 6. 8. 13:37·개발/JAVA
728x90
반응형
 

09. JAVA 클래스 / 객체 생성 및 사용 / 접근지정자 / 전역, 지역 변수 / static

밀쥬

2019. 4. 10. 18:19

통계
 

1. 클래스

- 여러 타입의 데이터를 저장할 수 있는 자료형 (내가 만든 자료형)

- 객체의 설계도를 칭하며, 이 설계도로 만들어 낸 것을 객체 라고 한다

- 클래스의 멤버로는 멤버변수와 메소드등을 갖는다

ex)

접근지정자 [modifier] class 클래스명() {
// 클래스명은 대문자로 시작
접근지정자 자료형 멤버변수명;
접근지정자 반환형 메소드;
};

2. 객체의 생성 및 사용

* 객체 : 행동 + 성질(상태) => 메소드 + 변수

- 객체의 생성 (new 사용)

클래스명 변수명 = new 생성자();

3. 접근지정자

* 클래스와 클래스 간에 access 범위를 지정하는 기능

- 접근지정자를 붙일 수 있는 곳

접근지정자 [modifier] class 클래스명
접근지정자 final 자료형 멤버상수 = 초기값 : 접근지정자와 modifier는 순서는 상관없다
final 접근지정자 자료형 멤버상수=초기값
 
접근지정자 [modifier] 자료형 멤버변수;
접근지정자 [modifier] 반환타입 메소드명;
단, class 앞에 붙일 수 있는 접근지정자는 public과 생략형만 붙일 수 있다.

- 접근지정자 범위 : private > package(생략형) > protected > public

ㄴ private : 자기 클래스 내에서만 접근 가능 (완전 접근 불가능 한건 아니지만 간접적으로 사용가능)

ㄴ package : 생략이 가능하며 같은 패키지 안에서만 접근 가능

ㄴ protected : 같은 패키지는 물론 다른 패키지여도 상속 관계가 있으면 접근가능

ㄴ public : 어디서나 접근 가능 (단, 다른 패키지에 있는경우 import를 해줘야 접근 가능하다


4. 전역 / 지역변수

* 전역 변수 (Global Variable)

- 자바에서 전역 변수는 클래스의 멤버변수와 같다

- 클래스 안에 main 메소드가 있기 때문에 클래스 안에서는 어디서든 사용 가능

- 별도의 초기화를 하지 않을 경우 default값으로 초기화 되어있음

(참조형 : null, 정수형 : 0. 실수형 : 0.0, 논리형 : false)

- 해당 클래스 안의 모든 메소드에서 사용가능

​

* 지역 변수 (Local Variable)

- 특정지역 (중괄호로 구분)에서 선언되어 그 지역에서만 사용되는 변수

- 메소드의 매개변수도 지역 변수에 해당

- 자동으로 초기화가 되지 않고 사용시 초기화 먼저 해야한다

- modifier 중에 final 만 붙일 수 있다


5. static

* 정적 멤버

- 정적 멤버는 클래스 명으로 접근 할 수 있다

- static의 메모리는 JVM에서 클래스를 로드하는 시점에 생긴다 (인스턴스형 보다 먼저 생성됨)

- 공통으로 사용할시 지정

​

- 접근 방법

class A {
static double PI = 3.14; // 정적멤버
}
 
public class B {
// 여기에서 PI로 접근하고 싶을때
// 인스턴스화 접근
A a = new A(); // 인스턴스화
a.PI
 
// 클래스 명으로 접근
A.PI
}

* 여러번 사용이 되어야 하는경우 인스턴스화를 진행하면 좋다 (메모리 사용률)


* 인스턴스형 멤버

- static이 붙지 않은 멤버는 인스턴스형 멤버

- 인스턴스화 해야 사용가능

- static도 불러올수 있지만 권장하지 않음

728x90
반응형
저작자표시 (새창열림)

'개발 > JAVA' 카테고리의 다른 글

11. JAVA String Basic / String Method / StringBuffer  (0) 2020.06.08
10. JAVA static블락 / wrapper클래스 : 네이버 블로그  (0) 2020.06.08
08. JAVA 제어문 - 조건문(IF, SWITCH) / 반복문(FOR, WHILE) / 중첩  (0) 2020.06.08
07. JAVA의 연산자 (Operator)  (0) 2020.06.08
06. JAVA 변수의 자료형(Data Type) / 상수(Conastant) / 형변환(Type Casting) / 이스케이프(Escape) / 형식 문자열  (0) 2020.06.08
'개발/JAVA' 카테고리의 다른 글
  • 11. JAVA String Basic / String Method / StringBuffer
  • 10. JAVA static블락 / wrapper클래스 : 네이버 블로그
  • 08. JAVA 제어문 - 조건문(IF, SWITCH) / 반복문(FOR, WHILE) / 중첩
  • 07. JAVA의 연산자 (Operator)
joolog
joolog
  • joolog
    JOO
    joolog
  • 전체
    오늘
    어제
    • 분류 전체보기 (165)
      • 개발 (83)
        • JAVA (29)
        • PYTHON (9)
        • AWS (15)
        • DOCKER (2)
        • PERCONA (2)
        • ORACLE (14)
        • MYSQL (1)
        • 알고리즘 (0)
        • 기타 (11)
      • 툴 (5)
        • MARKDOWN (1)
        • GIT (1)
        • DOCKER (1)
        • PyCharm (2)
        • IntelliJ (0)
      • 일상 (35)
        • 맛집 (6)
        • 카페 (2)
        • 요리 (4)
        • 글씨 연습 (2)
        • 그저 일상 (7)
        • 내돈 내산 (11)
        • 홍보 (1)
      • 국내 여행 (1)
      • 해외 여행 (15)
        • 체코-오스트리아 (10)
        • 일본 (5)
      • 암 일지 (26)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
    • 글쓰기
    • 관리
    • 티스토리 홈
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    잘츠부르크
    글씨연습
    오블완
    Oracle
    자바
    저요오드식
    jdbc
    동위원소
    히로시마
    재발
    오스트리아
    성모샘쉼터
    mysql
    티스토리챌린지
    갑상선 암
    요양병원
    오라클
    체코
    오닉스 리프3
    자바JDBC
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.0
joolog
09. JAVA 클래스 / 객체 생성 및 사용 / 접근지정자 / 전역, 지역 변수 / static : 네이버 블로그
상단으로

티스토리툴바