본문 바로가기

전체 글49

C# 정리 ) Equals Equals 메서드는 값을 비교한 결과를 bool 형으로 반환한다. using System; namespace Project1 { class Class1 { public static void Main(String[] args) { int n = 5; if (n.Equals(5)) { Console.WriteLine("n은 5 입니다!"); } else { Console.WriteLine("n은 5 가 아닙니다!"); } } } } 출력 결과 : n은 5 입니다! Equals 는 비교 대상이 [값 형식]과 [참조 형식] 에 대해 달라진다. [값 형식]에 대해서는 해당 인스턴스가 소유하고 있는 값을 대상으로 비교한다. [참조 형식]에 대해서는 할당된 메모리 위치를 가리키는 [식별자]의 값이 같은지를 비교한다.. 2021. 11. 28.
C# 정리 ) GetType C# 에서는 개발자가 class 로 타입을 정의하면 내부적으로 해당 class 타입을 가지고 있는 System.Type [인스턴스]를 보유하게 되고, 바로 그 [인스턴스] 를 가져올 수 있는 방법이 GetType 이다. 잘 이해가 안된다면 코드부터 보자. using System; namespace Project1 { class Computer { } class Notebook : Computer { } class Class1 { public static void Main(String[] args) { Computer computer = new Computer(); Type type = computer.GetType(); Console.WriteLine(type.FullName); Console.Write.. 2021. 11. 28.
C# 정리 ) ToString ToString 메서드를 호출하면 해당 인스턴스가 속한 클래스의 전체 이름(FQDN) 을 리턴한다. using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace Project1 { class 클래스이름 { } class Class1 { public static void Main(String[] args) { 클래스이름 test = new 클래스이름(); Console.WriteLine(test.ToString()); } } } 위 코드의 실행 결과는 Project1.클래스이름 이다. 하지만 항상 이런것은 아니다. ToString 은 자식 클래.. 2021. 11. 28.
C# 정리 ) System.Object 클래스를 정의할 때 부모 클래스를 명시하지 않는다면 C# 컴파일러는 기본적으로 object 라는 타입에서 상속을 받는다고 가정하고 코드를 자동적으로 생성한다. 따라서 class one { } class one : Object { } 다음 코드는 동일하게 취급된다. 그런데 부모 클래스를 지정하더라도, 그 부모 클래스 또한 상속을 받았을 것이다. 부모 클래스를 명시하지 않았다면 해당 클래스 또한 object 타입을 상속받는다. using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace Project1 { class desktop { bool p.. 2021. 11. 28.