면접 대비 꾸준 실습 01. 객체와 한정자

유승아·2024년 7월 1일

내일배움캠프

목록 보기
66/69

💡 질문에 답해보고 직접 확인해보는 시간을 가집시다.

using System;

public class Car
{
    // 속성
    public string Make { get; set; }
    public string Model { get; set; }
    public int Year { get; set; }

    // 메서드
    public void DisplayInfo()
    {
        Console.WriteLine($"Car Make: {Make}, Model: {Model}, Year: {Year}");
    }
}

class Program
{
    static void Main(string[] args)
    {
        Car car1 = new Car();
        car1.Make = "Genesis";
        car1.Model = "G70";
        car1.Year = 2020;
        car1.DisplayInfo();

        Car car2 = new Car();
        car2.Make = "Hyundai";
        car2.Model = "Sonata";
        car2.Year = 2022;
        car2.DisplayInfo();
    }
}
  1. 위 예제 코드에서 Car는 무엇을 나타내나요? car1과 car2는 무엇을 나타내나요?

    • Car 클래스는 틀이며, car1과 car2는 Car 클래스에서 찍어낸 객체입니다.
  2. 위 코드에서 Car 클래스에 정의된 메서드를 호출할 때 car1과 car2를 사용해야 하는 이유는 무엇인가요?

    • 인스턴스 메서드는 객체를 통해 호출해야 합니다.
  3. 위 코드에 어떤 메서드를 추가하고 아래와 같이 사용했습니다.

    Car.SomeMethod();

    SomeMethod에는 static 한정자가 붙어있을까요? 그 이유는 무엇인가요?

    • static이 붙어있습니다. 클래스인 Car를 직접 호출하는 메서드이기 때문입니다.

💡 질문을 직접 설명해보고, 모르는 부분이 있다면 알아보는 시간을 가집시다.

  1. 객체란 무엇인가요? 클래스와 어떤 연관이 있나요?

    • 'Car'라는 추상적인 개념을 실체화 시켜놓은 것입니다. 클래스는 객체를 생성하기 위한 틀, 설계도 같은 것입니다. 클래스를 통해 객체를 만들 수 있습니다.
  2. 생성자에 대해 간단하게 설명해주세요.

    • 객체를 생성할 때 호출하는 메서드이며, 초기 데이터를 설정할 수 있습니다.
  3. 접근제한자란 무엇이며, 각각 어떤 차이가 있는지 비교해서 설명해주세요.

    • 클래스, 메서드, 변수 등을 어떤 범위까지 공유를 할 것인가 제한할 수 있습니다.
      public : 제한 없이 어디에서든 접근할 수 있습니다.
      private : 클래스 내에서만 접근할 수 있습니다.
      protected : private 범위를 포함하여 상속받은 클래스도 접근할 수 있습니다.
  4. static 한정자에 대해 설명해주세요.

    • static이 붙으면 한 객체를 유일한 존재라고 지정합니다. 그 객체는 전 범위에서 접근할 수 있게 됩니다.

0개의 댓글