728x90
반응형

C#/C# 교과서 34

[C# 교과서] 35~37. 생성자, 소멸자, 메서드와 매개변수

생성자 단어 그대로 개체를 생성하면서 무엇인가를 하고자 할 때 사용되는 메서드 생성자 이름이 클래스 이름과 동일 클래스 내에서 클래스 이름과 동일한 이름을 갖는 메서드는 모두 생성자 메서드와 마찬가지로 클래스에 매개변수를 달리하여 생성자를 여러개 만들 수 있음, 이를 생성자 오버로드 또는 오버로딩이라고 함 this 키워드를 사용해서 다른 생성자를 호출할 수도 있음 생성자도 메서드(함수)임 하지만 메서드와 달리 반환 형식을 지정 못함 또 static 생성자는 매개변수를 포함할 수 없으며, 매개변수를 사용하여 필드를 초기화할 때는 istance 생성자인 public 생성자를 사용해야 함 this() 생성자로 다른 생성자 호출하기 생성자에서 this()는 자신의 또 다른 생성자를 의미 this() 생성자로 매..

C#/C# 교과서 2023.01.11

[C# 교과서] 33~34. 네임스페이스, 필드 만들기

네임스페이스 프로그램 규모가 커질 때 클래스 이름이 충돌하는 것을 방지하도록 클래스를 모아서 관리하는 개념 using 지시문을 사용하여 클래스 파일의 위쪽에 선언 서로 관련 있는 클래스, 구조체, 열거형 등의 형식과 또 다른 네임스페이스 등을 묶어 관리해 주는 개념 클래스 이름이 중복되는 것을 방지하는 역할 클래스를 계층형으로 묶어 관리 가능 네임스페이스는 패키지란 단어와 의미가 비슷, 관련 있는 형식의 묶음 namespace 네임스페이스 이름 { // 클래스 등 정의가 들어옴 } using System; namespace Foo { public class Car { public void Go() => Console.WriteLine("[1] Foo 네임스페이스의 Car 클래스 호출"); } } name..

C#/C# 교과서 2023.01.10

[C# 교과서] 31~32. 알고리즘과 절차 지향 프로그래밍, 개체 만들기

알고리즘 문제를 해결하는 일련의 절차나 방법을 공식으로 표현한 풀이법 프로그래밍을 할 때 생긴 문제의 해결 방법을 체계적으로 정리한 것 ‘문제 해결 능력’ 입력(input) → 처리(process) → 출력(output) 중 처리 단계가 알고리즘 단계 입력 : 자료구조에서 담당하는 영역. 간단히 변수 및 배열의 데이터를 사용하고 나아가서는 컬렉션, 파일, 데이터베이스의 데이터를 사용하는 영역 처리 : 알고리즘 처리 영역 출력 : 화면에 보이는 UI를 담당하는 영역 근삿값 알고리즘 using System; using System.Linq; using static System.Console; class Program2 { static void Main() { // 절댓값 구하기 로컬 함수 : Math.Abs..

C#/C# 교과서 2023.01.09

[C# 교과서] 28~29. 제네릭 사용하기, 널(null) 다루기

제네릭 특정 형식을 지정하여 컬렉션에 저장하고 사용할 수 있음 다른 데이터 형식을 추가할 수 없도록 형식 안정성을 적용 데이터 형식 변환 등 작업이 따로 필요하지 않음 Cup를 형식 매개변수인 T에 따른 Cup 클래스의 개체를 생성하는 것 Cup of T 넘어오는 데이터 형식에 따라 해당 개체 성격을 변경하는 구조를 제네릭이라 함 Stack과 제네릭 클래스 사용 일반 클래스 Stack과 제네릭 클래스인 Stack는 하는 일이 동일함 다만 Stack 클래스는 데이터 object를 다루고, Stack 클래스는 T로 지정한 데이터로 다룸 object로 만든 데이터를 실제 사용하려는 string과 같은 형식으로 표현할 때는 중간에 변환 과정을 거치기 때문에 이 부분에서 추가 작업을 진행하는 비용이 발생함 그래서..

C#/C# 교과서 2023.01.05

[C# 교과서] 26~27. 예외 처리, 컬렉션 사용하기

try~catch~finally 구문 try { // 예외가 발생할 만한 코드 작성 } catch { // 예외가 발생할 때 처리해야 할 코드 블록 } finally { // 예외가 발생하거나 정상일 때 모두 처리해야 할 코드 블록 } Exception 클래스로 예외처리 닷넷에서 모든 예외에 대해 처리할 주요 기능을 담아 놓은 클래스가 Exception Exception 클래스의 주요 속성에는 Message가 있는데, 현재 예외 설명을 출력 FormatException 클래스 형식의 예외받아 처리 Exception 클래스와 마찬가지로 FormatException 같은 클래스들은 각각 고유의 예외가 발생했을 때 해당 예외 정보를 담고 있음 using System; using static System.Con..

C#/C# 교과서 2023.01.03

[C# 교과서] 25. 문자열 다루기

문자열 다루기 Length : 문자열 길이 값 반환 ToUpper() : 문자열을 모두 대문자로 변환 ToLower() : 문자열을 모두 소문자로 변환 Trim() : 문자열 양쪽 공백을 잘라 냄 Replace(원본문자열,대상문자열) : 원본 문자열을 대상 문자열로 변경 Substring(문자열인덱스, 길이) : 지정된 문자열 인덱스부터 길이만큼 반환 메서드 체이닝 메서드를 여러 번 점(.)을 찍어 구분하면서 호출하는 방법 메서드 체이닝, 메서드 체인, 파이프 라인이라고 부름 ToCharArray() 문자열을 문자 배열로 변환하는 방법 Split() 문자열 분리 StringBuilder 클래스 Append() 메서드로 문자열 연결 String 변수로 묶는 작업과 달리 StringBuilder를 사용했을 ..

C#/C# 교과서 2023.01.02

[C# 교과서] 24. 클래스 사용하기

클래스 클래스는 지금까지 작성한 모든 예제에서 기본이 되는 C#의 핵심 코드 “클래스는 개체를 생성하는 틀(템플릿)” “클래스는 무엇인가를 만들어 내는 설계도” 속성 : 데이터 메서드 : 로직 클래스 선언 public class 클래스이름 { // 클래스 내용 구현 } 클래스를 여러 개 사용할 때는 public 키워드를 써야 함 public 키워드가 붙은 클래스는 클래스 외부에서 해당 클래스를 바로 호출해 사용할 수 있도록 공개되었다는 의미 반대 의미는 private 키워드를 사용 using System; namespace codingstudy { class Program2 { static void Run() { Console.WriteLine("ClassNote 클래스의 Run 메서드"); } stat..

C#/C# 교과서 2023.01.02

[C# 교과서] 22~23. 구조체 사용하기, 열거형 형식 사용하기

구조체 는 이름 하나로 데이터를 묶어 관리하는 역할 변수와 배열을 확장하여 이름 하나로 데이터 형식을 1개 또는 여러 개 보관하는 그릇 역할을 하는 것이 바로 구조체 struct 구조체이름 { 데이터형식변수1; 데이터형식변수2; 데이터형식변수3; } using System; struct Point { public int X; public int y; } namespace codingstudy { class Program2 { static void Main() { Point point; // Point 구조체 형식의 변수 선언 point.X = 100; point.y = 200; Console.WriteLine($"X: {point.X}, Y: {point.y}"); } } } 구조체변수이름.멤버이름=값;..

C#/C# 교과서 2022.12.29

[C# 교과서] 19. 함수 사용하기

함수 또는 메서드는 재사용을 목적으로 만든 특정 작업을 수행하는 코드 블록 함수 란 어떤 값을 받아서 그 값을 가지고 가공을 거쳐 어떤 결과값을 반환시켜주는 코드 함수는 프로그램 코드 내에서 특정한 기능을 처리하는 독립적인 하나의 단위 또는 모듈 내장함수 : C#이 자주 사용하는 기능을 미리 만들어서 제공하는 함수로, 특정 클래스의 함수로 표현 사용자 정의 함수 : 프로그래머가 필요할 때마다 새롭게 기능을 추가하여 사용하는 함수 함수이름(); 함수이름(매개변수); 결괏값 = 함수이름(매개변수); using System; namespace codingstudy { class Program { static void Main(string[] args) { Show(); } static void Show() {..

C#/C# 교과서 2022.12.27
728x90
반응형