본문 바로가기

발전/C#3

[C#] 기초 및 자바와 다른 점 (3) | 연산자 오버로딩(오버로드), ref, out 키워드 연산자 오버로딩 ​C#에서는 operator 키워드로 연산자 오버로딩을 지원한다. 규칙 1. 무조건 public 2. 무조건 static public static ComplexNumber operator+(ComplexNumber a, ComplexNumber b) { ... } 위처럼 선언하면 객체 a, b에 대한 + 연산을 정의할 수 있다. switch문 자바에서는 break문이 필수가 아니다. break문을 쓰지 않으면 다음 case가 실행된다. c#은 break문이 필수이다. 값 형식을 참조로 전달 ref, out ref -> 기존 변수 수정 매개변수로 사용되는 변수의 값을 영구적으로 변경 할 때 사용한다. 값 형식 매개변수에 ref 키워드를 지정하면 매개변수가 바깥 코드 변수에서 사용하던 실제 .. 2022. 6. 16.
[C#] 기초 및 자바와 다른 점 (2) | 프로그램 구조, 자료형 상수 자바와 C#의 프로그램 구조 차이를 알아보자 ​ (자바는 안다고 가정한다.) using System; using Rectangle = CompSci.Graphics.Rectangle; // 별칭 지정 namespace Sample { public class SampleClass { public static void Main(string[] args) { string name = "Wilson"; Console.WriteLine("Hello, " + name + "!"); } } // 한 줄 주석 /* 여 러 줄 주석 */ } namespace는 자바의 package 역할을 한다. 자바는 첫줄에 package를 선언하지만, C#은 namespace 키워드를 사용하고 블럭으로 묶는다. namespace는 한.. 2022. 6. 16.
[C#] 기초 및 자바와 다른 점 (1) 자바만 공부하고 C#은 자바랑 비슷해서 눈치껏 사용하다가 개념 및 차이점을 한 번 짚어보는게 좋겠다는 생각이 들어서 쓴다. ​ 배경 자바랑 문법이 매우 비슷하다. C# 공부를 안해도 눈치껏 유지보수 가능한 정도 자바랑 다른 것만 쏙쏙 구글링 하면 된다. ​ 자바가 JVM에서 돌 듯 C#은 .NET 플랫폼 내 CLR(Common Language Runtime) 상에서 돈다. 서버사이드 개발도 가능하지만 우리회사는 서버는 자바, UI는 C#으로 개발한다. ​ IDE 자바는 이클립스, 인텔리제이를 주로 사용한다면 C#은 마소작품답게 Visual Studio가 대표적이다. 무료이고 지원도 빵빵하다. (고 한다. 얼마 안써봐서 아직 기능도 다 모른다. ㅎ) ​ ​ ​ 상속, 문법 extends, implement.. 2022. 6. 16.