집 >백엔드 개발 >C#.Net 튜토리얼 >C# 인터뷰 질문 및 답변
유형이 안전하고 관리되는 언어입니다. 많은 운영 체제에서 이를 사용하므로 이 언어를 잘 이해해야 합니다. 수요가 많고 다양성으로 인해 다양한 운영 체제를 지원할 수 있습니다.
드디어 C#에서 꿈의 직업을 찾았지만 2023년 C# 면접을 통과하는 방법과 예상되는 C# 면접 질문이 무엇인지 궁금합니다. 면접마다 다르고, 업무 범위도 다릅니다. 이를 염두에 두고 성공적인 인터뷰에 도움이 되도록 가장 일반적인 C# 인터뷰 질문 및 답변을 설계했습니다.
첫 번째 부분에서는 기본적인 C# 인터뷰 질문과 답변을 다룹니다.
정답:
관리 코드는 .Net 플랫폼에서 실행됩니다. 해당 플랫폼을 기반으로 하는 모든 애플리케이션 코드에 CLR(Common Language Runtime)을 사용합니다. 애플리케이션이 실행되면 메모리, 보안, 성능 등의 요소를 관리하는 역할을 담당합니다. 이는 인터뷰에서 기대할 수 있는 주요 C# 인터뷰 질문 중 하나입니다.
정답:
C#에는 네 가지 유형의 클래스가 있습니다. 그 내용은 다음과 같습니다.
1) 정적 클래스: 이 클래스는 상속을 허용하지 않습니다. 이 클래스 내의 멤버는 정적이며 "static"이라는 키워드로 식별됩니다.
2) 추상 클래스: 이 클래스는 키워드 abstract로 표시됩니다. 이러한 클래스의 개체는 인스턴스화할 수 없습니다. 이 클래스는 상속만 가능하며 적어도 하나의 메소드를 포함해야 합니다.
3) 봉인된 클래스: 이 클래스는 상속될 수 없습니다. 접근하려면 이 클래스의 객체를 생성해야 합니다. Sealed라는 키워드를 사용하여 제작되었습니다.
4) 부분 클래스: "partial" 키워드를 사용하면 클래스를 "partial"로 지정하여 해당 멤버를 여러 .cs 파일로 나누거나 공유할 수 있습니다.
다음 C# 인터뷰 질문으로 넘어가겠습니다.
정답:
C#은 생성, 삭제, 열기, 닫기 등과 같은 다양한 작업을 수행하는 클래스로 구성된 System.IO 네임스페이스를 사용합니다. 일반적으로 사용되는 I/O 클래스는 다음과 같습니다.
정답:
이 두 클래스는 모두 System.IO 네임스페이스에 속합니다. StreamReader 클래스에는 close(), read(), Readline()과 같은 멤버가 포함됩니다. StreamWrier 클래스에는 close(), write(), writeline()과 같은 멤버가 포함됩니다.
class Program1 { using(StreamReader sr = new StreamReader("C:\ReadMe.txt") { //----------------code to read-------------------// } using(StreamWriter sw = new StreamWriter("C:\ReadMe.txt")) { //-------------code to write-------------------// } }
정답:
Boxing은 값을 참조 유형으로 변환하는 것입니다.
예:
int value -= 20; //-----------Boxing------------// Object boxValue= value;
여기서 boxValue는 '값'을 참조합니다.
언박싱은 참조 유형을 다시 값 유형으로 명시적으로 변환하는 프로세스입니다.
예:
//————UnBoxing——————// int UnBoxing = int (boxedValue);
Unboxing은 원래 값으로 되돌아가는 것을 참조합니다.
이제 고급 C# 면접 질문을 살펴보겠습니다.
정답:
주어진 입력 집합과 일치하는 정규식 패턴을 템플릿으로 변환합니다. 이러한 패턴에는 연산자, 문자 리터럴, 기호 등이 포함될 수 있습니다. 개발자는 일반적으로 정규식(regex)을 사용하여 문자열을 구문 분석하거나 문자열 내의 특정 문자를 바꿉니다. 정규식을 사용하면 개발자는 주어진 입력 파일이나 문자열에서 모든 패턴을 검색할 수 있으므로 텍스트 기반 데이터를 처리하는 강력한 도구가 됩니다.
예:
static void Main(string[] args) { string[] lang = { "C#", "Python", "Java" }; foreach(string s in lang) { if(System.Text.RegularExpressions.Regex.IsMatch(s,"Python")) { Console.WriteLine("Match found"); } } }
이 코드 예제는 Python을 활용하여 배열 내에서 특정 언어를 검색합니다. 이 방법을 사용하면 개발자는 정규식을 사용하여 입력 내에서 특정 일치 항목을 찾을 수 있습니다.
정답:
다양한 유형의 대표자는 다음과 같습니다.
답변: 람다 식은 C#에서 무명 메서드를 정의하는 간결한 방법입니다. LINQ 쿼리와 대리자 또는 이벤트 처리기를 정의하는 데 자주 사용됩니다. 람다 표현식은 코드를 더욱 읽기 쉽고 표현력 있게 만듭니다.
답변: 대리자는 특정 매개변수 목록과 반환 유형이 있는 메서드에 대한 참조를 나타내는 유형입니다. 대리자는 콜백 메서드를 정의하고 이벤트 처리를 구현하는 데 사용되며 C# 이벤트 및 콜백의 기본 부분입니다.
답변: 박싱은 값 유형을 참조 유형으로 변환하는 프로세스이고, 언박싱은 박싱된 값을 다시 값 유형으로 변환하는 역과정입니다. 박싱 및 언박싱은 성능에 영향을 미칠 수 있으므로 신중하게 사용해야 합니다.
위 내용은 C# 인터뷰 질문 및 답변의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!