다음을 통해 공유


다른 언어와 C# 비교

업데이트: 2007년 11월

C#은 다른 .NET Framework 프로그래밍 언어와 공통적인 여러 가지 기능을 제공하는 최신의 구성 요소 지향 언어입니다. C#에는 약 80개의 키워드만 있으며 그 대부분은 C, C++, Java, Visual Basic 등을 사용했던 개발자라면 이미 익숙한 것들입니다. 달라진 구문이 있지만 그 차이는 일반적으로 크지 않습니다.

Visual C# Express Edition 편집 환경에서는 IntelliSense를 사용하여 여러 가지 복잡한 작업을 자동으로 수행하므로 C#을 쉽게 배울 수 있습니다. C# 편집기에서는 사용자의 코드를 자동으로 깔끔하게 유지하고, 필요한 메서드나 기타 속성을 제시하며, 오류 가능성이 있는 부분을 코드 입력과 동시에 강조 표시합니다.

Hello, World!

C# 프로그램에 대한 개념을 빨리 파악할 수 있도록 아래에서는 유명한 "Hello, World!" 응용 프로그램을 서로 다른 여러 언어로 제시합니다.

// C# Hello, World! 
using System;

    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("Hello, World!");
        }
    }

// C++ Hello, World!
#include <iostream>
using namespace std;
static int main()
{
  cout << "Hello World!" << endl;
  return 0;
}

' Visual Basic.NET Hello, World!
Module Module1

    Sub Main()
        Console.WriteLine("Hello, World!")
    End Sub

End Module

// Java Hello, World!
class HelloWorldApp
{
    public static void main(String[] args)
    {
        System.out.println("Hello, World!");
    }
}

다른 언어에 익숙한 프로그래머를 위해 다음 단원에서는 C#의 가장 중요한 차이점을 설명합니다.

C#과 C 및 C++ 비교

  • 메모리는 가비지 수집 시스템에서 관리합니다. new에 대한 호출을 실행 취소하기 위한 delete 메서드가 없습니다.

  • 헤더 파일(.h)이 사용되지 않거나 필요하지 않습니다. 헤더 파일에 저장되던 정보는 이제 어셈블리의 일부로 저장됩니다.

  • C# 프로그램에서는 클래스 정의를 닫는 중괄호 뒤에 세미콜론을 사용할 필요가 없습니다.

  • Main 메서드가 대문자로 표시되고 정적 클래스의 멤버로 사용됩니다. Main은 int 또는 void를 반환합니다.

  • 모든 프로그램에는 Main 메서드가 있어야 합니다. 그렇지 않으면 프로그램이 컴파일되지 않습니다.

  • switch 문에는 break 문이 반드시 있어야 합니다.

  • 조건은 부울이어야 합니다.

  • 컴파일러에서 기본값을 할당합니다. 참조 형식의 기본값은 null이고, 값 형식의 기본값은 0입니다.

C#과 Visual Basic 비교

  • 줄 바꿈 대신 세미콜론이 사용됩니다.

  • C#은 대/소문자를 구분합니다. 예를 들어, Main 메서드는 대문자로 표시됩니다.

  • 조건은 부울이어야 합니다.

C#과 Java 비교

  • Main 메서드가 대문자로 표시됩니다.

  • 값과 참조 형식 사이에 boxing 및 unboxing 변환이 허용됩니다. 래퍼 형식을 만들 필요가 없습니다.

  • Java의 final 클래스는 C#에서 봉인 클래스입니다.

  • C#은 속성을 지원합니다.

  • C# 메서드는 기본적으로 비가상 메서드입니다.

  • C#은 컴파일러에 대한 추가 정보를 포함하기 위한 특성을 지원합니다.

참고 항목

작업

방법: 60초 안에 C# 응용 프로그램 빌드

개념

Visual C# Express 기능

C# 및 .NET Framework

기타 리소스

Visual C# Express

Visual C# Express 시작