[JAVA] Class, Object, instance, 접근제한자

닥개·2024년 5월 4일

공부

목록 보기
2/23

클래스 (Class)

객체를 정의하는 틀, 설계도
자바에서는 클래스로 여러 객체를 생성하여 사용
field: 객체의 **상태**를 나타냄, 클래스에 포함된 변수(variable)
method: 객체의 **행동**을 나타냄, 명령문의 집합
	

선언하기: 클래스를 만들고 그 안에 변수,상수, 함수 등 프로그램 요소 작성

public class Hello{

}

객체 (Object)

객체지향프로그래밍에서는 모든 데이터를 객체로 취급

객체의 상태(state)와 행동(behavior)을 구체

인스턴스 (Instance)

클래스를 사용하기 위해서는 해당 클래스 타입의 객체(object)를 선언
인스턴스화: 클래스로부터 객체를 선언하는 과정
인스턴스: 해당 클래스 타입의 객체 = 메모리에 할당된 객체

접근제한자 (Access Modifier)

클래스와 인터페이스를 다른 패키지에서 사용하지 못하도록 함
접근제한대상접근
public클래스, 필드, 생성자, 메소드외부 클래스가 자유롭게 사용
protected필드, 생성자, 메소드같은 패키지 또는 자식클래스
default클래스, 필드, 생성자, 메소드같은 패키지만
private필드, 생성자, 메소드클래스

접근제한클래스 내부동일 패키지하위 클래스그 외
public
protected
default
private
 
class A { } //default
	//생성자를 선언하지않으면 컴파일러에 의해 자동으로 기본 생성자 추가됨

public class B { } 

//B에서 A로 접근 가능! 같은 패키지이기 때문

필드선언과 메소드 선언

//필드 선언
[ public | protected | ptivate ] [ static ] 타입 필드;

//메소드 선언
[ public | protected | private ] [ static ] 리턴 타입 메소드() { }
	//public static void main() {}

클래스 > https://www.tcpschool.com/java/java_class_intro
자바 접근제한자 > https://hongong.hanbit.co.kr/%EC%9E%90%EB%B0%94-%EC%A0%91%EA%B7%BC-%EC%A0%9C%ED%95%9C%EC%9E%90%EC%9D%98-%EC%A2%85%EB%A5%98%EC%99%80-%EC%B0%A8%EC%9D%B4public-protected-private/

profile
발바닥부터 시작하는 코딩공부

0개의 댓글