본문 바로가기
728x90
반응형

분류 전체보기287

C#] Benefits of Polymorphism, 다형성 장점 아래 예로 살펴보자. abstract class Animal // Base class (parent) { // Abstract method (does not have a body) public abstract void animalSound (); } class Pig : Animal // Derived class (child) { public override void animalSound() { Console.WriteLine("The pig says: wee wee"); } } class Dog : Animal // Derived class (child) { public override void animalSound() { Console.WriteLine("The dog says: bow wow"); .. 2022. 7. 27.
C#] Inheritance, Polymorphism, Abstraction, Interface Inheritance 자식 클래스 Derived Class (child) - the class that inherits from another class 부모 클래스 Base Class (parent) - the class being inherited from To inherit from a class, use the : symbol new class 생성 시, existing class의 method, fields를 재사용하기 위한 목적이다. class Vehicle // base class (parent) { public string brand = "Ford"; // Vehicle field public void honk() // Vehicle method { Console.WriteLine("Tuu.. 2022. 7. 21.
ASP.NET MVC] Web.config transform file Web.config transform file deploy시, Web.config 파일이 어떻게 수정되는지 지정하는 XML file이다. Transformation action은 XML-Document-Transform namespace에서 정의된 XML attribute(xdt prefix, Locator, Transform)를 사용하여 지정한다. XML attributes 1) Locator : Web.config element 지정, optional 2) Transform : Locator attribute가 찾은 element로 무엇을 할지 지정 Locator Attribute Syntax 1) Condition 2) Match 3) XPath Transform Attribute Syntax 1).. 2022. 7. 21.
C#] LINQ - Projection Linq에서 projection은 지속 사용할 properties만 담긴 새로운 object를 생성하는 작업이다. projection operations 1. Select 2. SelectMany class Bouquet { public List Flowers { get; set; } } static void SelectVsSelectMany() { List bouquets = new() { new Bouquet { Flowers = new List { "sunflower", "daisy", "daffodil", "larkspur" }}, new Bouquet { Flowers = new List { "tulip", "rose", "orchid" }}, new Bouquet { Flowers = new .. 2022. 7. 20.
C#] 반복자(Iterator), yield keyword yield Iterator는 yield라는 keyword를 사용한다. yield는 colleciton, array를 순회하며 호출한 함수에 element를 하나씩 반환한다. yield break를 사용하여 반복기를 종료할 수 있다. public static IEnumerable Fibonacci(int length) { int a = 0, b = 1; for (int i = 0; i < length; i++) { yield return a; //이 시점의 a가 반환된다. int c = a + b; a = b; b = c; } } static void Main(string[] args) { // Display the Fibonacci sequence up to the tenth number. foreach.. 2022. 7. 19.
C#] Delegates, Anonymous Methods and Lambda Expressions Delegates Anonymous functions (Anonymous methods & Lambda expressions) Delegates class Program { //Delegate defines the signature (return type and parameters) delegate void ArithmeticOperation(double operand1, double operand2); static void Addition(double number1, double number2) { Console.WriteLine($"{number1} + {number2} = {number1 + number2}"); } public static int RunAnotherMethod(ArithmeticO.. 2022. 7. 18.
728x90
반응형