티스토리 뷰

웹 개발 공부하기

[01.09] 클래스(Class)

jooya-1009 2025. 1. 12. 18:22

💥 클래스(Class)

 - 사전적인 의미로는 '학급'이라는 뜻을 가지고 있다.

 - 사용자 정의 데이터타입이다.

 - 데이터와 메소드를 사용자인 내가 새로 정의한 데이터타입이기 때문에 클래스를 추상적인 데이터타입이라고 한다.

 - 클래스의 본질은 데이터타입(Data Type)이라는 점이다.

 - 구조체와 비슷하고, 멤버 변수와 멤버 함수로 구성된다.

💥 클래스의 구성

 - 사물의 특성을 정리하여 필드와 메소드로 표현하는 과정이 추상화이다.

 - 추상화된 결과를 하나의 클래스에 포함시키고 스스로 보호하는 것이 캡슐화이다.

사물 상태(필드) 행동(메소드)
사람 피부색, 키, 나이, 성별, 이름, ... 생각한다, 공부한다, 말한다, ...
배기량, 차종, 연료의 종류, ... 달린다, 멈춘다, 짐을 싣는다, ...
노트북 CPU, 메모리 크기, 하드디스크 용량, ... 부팅한다, 충전한다, CD-ROM 읽는다, ...

💥 클래스의 선언 형식

 - 클래스 선언 시, class 키워드를 쓰고 그 뒤에 클래스 이름을 붙인다.

 - 클래스의 요소로는 생성자, 멤버 변수, 메소드 등이 있다.

💥 접근 지정자

접근 지정자 의미
public 누구나 접근 가능하다.
protected 상속 관계에 있을 때, 상속 받은 자식 클래스에서 접근이 가능하다. 그 외에는 접근이 불가능하다.
internal 같은 어셈블리(프로젝트) 내의 모든 클래스가 접근 가능하다.
protected internal protected와 internal의 의미를 모두 포함한다.
private 내 클래스 내부에서만 접근 가능하고, 외부에서는 절대 접근할 수 없다.

💥 객체의 선언

 - 클래스의 본질은 데이터타입이다.

 - 데이터타입을 통해 변수를 선언할 수 있다. 변수 선언한다.

 - 클래스를 통해 선언한 변수를 객체라고 한다.

Dog a = new Dog();

💥 클래스 실습 해보기( C# )

using System;

class Dog {
    private int eyes, nose, mouse, ears;
    public void bark(){Console.WriteLine("멍멍");}
}

class HelloWorld {
  static void Main() {
      Dog a = new Dog();
      a.bark();
  }
}

 - Dog 라는 이름의 class를 만든다.

 - 멤버로 4개의 변수(eyes, nose, mouse, ears)와 1개의 메소드(bark())를 만든다.

 - 객체를 하나 생성한다.

 - 그 객체를 통해서 bark 라는 메소드를 호출한다.

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/01   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함