본문 바로가기

워크/C# 기본 문법

C#의 기본 문법의 예시 코드

아래는 C#의 기본 문법에서 예시로 설명한 예시 코드만 나열하였습니다.

using System;
using System.Collections.Generic;
using System.Linq;

namespace CSharpExample
{
    class Program
    {
        static void Main(string[] args)
        {
            // 변수와 자료형
            int age = 30;
            string name = "John";

            // 상수
            const double PI = 3.14159;

            // 배열
            int[] numbers = { 1, 2, 3, 4, 5 };

            // 조건문
            if (age >= 20)
            {
                Console.WriteLine("Adult");
            }
            else
            {
                Console.WriteLine("Not Adult");
            }

            // 반복문
            for (int i = 0; i < 5; i++)
            {
                Console.WriteLine(numbers[i]);
            }

            // 함수 호출
            SayHello(name);

            // 클래스와 객체
            Person person = new Person();
            person.Name = "Alice";
            person.Age = 25;

            // 접근 제어자
            // person.salary // 접근 불가능, private 멤버

            // 상속
            Employee employee = new Employee();
            employee.Name = "Bob";
            employee.Age = 35;
            employee.Salary = 50000;

            // 다형성
            Animal animal = new Dog();
            animal.MakeSound();

            // 인터페이스
            Rectangle rect = new Rectangle(10, 5);
            Console.WriteLine("Area of Rectangle: " + rect.CalculateArea());

            // 제네릭
            MyGenericClass<int> myInt = new MyGenericClass<int>(10);
            myInt.ShowType();

            // 예외 처리
            try
            {
                int result = 10 / 0;
            }
            catch (DivideByZeroException ex)
            {
                Console.WriteLine("Exception: " + ex.Message);
            }
            finally
            {
                Console.WriteLine("Finally block executed");
            }

            // 람다 식
            List<int> evenNumbers = numbers.Where(n => n % 2 == 0).ToList();
            foreach (var number in evenNumbers)
            {
                Console.WriteLine(number);
            }

            // LINQ
            var adults = from p in new List<Person> { person, employee }
                         where p.Age >= 20
                         select p;

            foreach (var p in adults)
            {
                Console.WriteLine(p.Name);
            }
        }

        // 함수 정의
        static void SayHello(string name)
        {
            Console.WriteLine("Hello, " + name);
        }
    }

    // 클래스 정의
    class Person
    {
        public string Name { get; set; }
        public int Age { get; set; }
        private double salary; // private 멤버
    }

    class Employee : Person
    {
        public double Salary { get; set; }
    }

    interface IShape
    {
        double CalculateArea();
    }

    class Rectangle : IShape
    {
        private double length;
        private double width;

        public Rectangle(double length, double width)
        {
            this.length = length;
            this.width = width;
        }

        public double CalculateArea()
        {
            return length * width;
        }
    }

    class MyGenericClass<T>
    {
        private T genericMember;

        public MyGenericClass(T value)
        {
            genericMember = value;
        }

        public void ShowType()
        {
            Console.WriteLine("Type of genericMember is: " + typeof(T));
            Console.WriteLine("Value of genericMember is: " + genericMember);
        }
    }

    class Animal
    {
        public virtual void MakeSound()
        {
            Console.WriteLine("Some sound");
        }
    }

    class Dog : Animal
    {
        public override void MakeSound()
        {
            Console.WriteLine("Bark");
        }
    }
}

변수와 자료형, 상수, 배열, 조건문, 반복문, 함수, 클래스와 객체, 접근 제어자, 상속, 다형성, 인터페이스, 제네릭, 예외 처리, 람다 식, LINQ를 사용하여 작성되었습니다.

'워크 > C# 기본 문법' 카테고리의 다른 글

LINQ  (0) 2023.09.06
람다 식  (0) 2023.09.06
예외 처리  (0) 2023.09.06
제네릭  (0) 2023.09.04
인터페이스  (0) 2023.09.04