본문 바로가기

이것이 c#이다14

이것이 C# 14장 연습문제 풀이 1번 문제 10 + 30 * 2 = 70 2번 문제 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 using System; using System.Collections; using System.Linq; using System.Text; using System.Threading.Tasks; using static System.Console; using System.IO; namespace Practice2 { class MainApp { static void Main(string[] args) { int[] array = { 11, 22, 33, 44, 55 }; int result = 0; Action acti.. 2019. 12. 20.
이것이 C# 13장 연습문제 풀이 1번 문제 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 using System; using System.Collections; using System.Linq; using System.Text; using System.Threading.Tasks; using static System.Console; using System.IO; namespace Practice2 { delegate int MyDelegate(int a, int b); // 익명메소드 선언 class MainApp { static void Main(string[] args) { MyDelegate Callback.. 2019. 12. 19.
[C#] 추상 클래스 추상 클래스 - 인터페이스와 달리 구현을 가질 수 있으나, 클래스와는 달리 인스턴스를 가질 수 없는 클래스. 선언 추상 클래스는 클래스에 더 가깝다(접근성). 인터페이스에서는 모든 메서드가 public으로 선언되는 반면, 클래스는 한정자를 명시하지 않으면 모든 메서드가 private로 선언된다. 추상 클래스는 인스턴스를 만들 수 없다는 점 외에도 클래스와 다른 점은 추상 메서드를 가질 수 있다는 것이다. 추상 메서드 - 추상 클래스가 인터페이스의 역할도 할 수 있게 해주는 장치. 구현을 갖지는 못하지만 파생 클래스에서 반드시 구현하도록 강제하기 때문이다. 다시 말해, 추상 클래스를 상속하는 클래스들이 반드시 이 메서드를 갖고 있을 거라는 "약속"인 것이다. 추상 클래스의 접근성 추상 클래스나 클래스는 그.. 2019. 9. 12.
[C#] 분할 클래스 분할 클래스 - 여러 번에 나눠서 구현하는 클래스를 말합니다. 분할 클래스는 그 자체로 특별한 기능을 하는 것은 아니며, 클래스의 구현이 길어질 경우 여러 파일에 나눠서 구현할 수 있게 함으로써 소스 코드 관리의 편의를 제공하는데 그 의미가 있습니다. 선언 분할 클래스는 위와 같이 partial 키워드를 이용해서 작성할 수 있습니다. 클래스 말고도 인터페이스와 구조체에서도 사용 가능해요. 또한 클래스를 분할할 때는 클래스 이름은 동일해야 합니다. 첫 번째 정의에서는 Method1()과 2() 메서드만을 정의하고, 두 번째 정의에서는 Method3()과 4()를 정의합니다. 이때 컴파일러는 이렇게 분할 구현된 코드를 하나의 MyClass로 묶어 컴파일 합니다. 몇 개로 나눠 분할 구현했는지 또는 묶어서 구.. 2019. 8. 11.
[C#] 구조체 구조체 - 구조체는 데이터를 담기 위한 자료 구조이다. 클래스와 상당 부분 비슷한 데이터 형식인데, 간단한 데이터를 구조화해서 다룰 경우에는 클래스보다 구조체가 좀 더 적합하다. 또한 구조체는 클래스와 마찬가지로 메서드, 프로퍼티 등 거의 비슷한 구조를 가지고 있지만 상속은 할 수 없으며 값 형식이고 인터페이스는 구현 가능하다. 선언 클래스 VS 구조체 특징 클래스 구조체 키워드 class struct 형식 참조 형식 값 형식 복사 얕은 복사 깊은 복사 인스턴스 생성 new 연산자와 생성자 필요 선언만으로도 생성 생성자 매개 변수 없는 생성자 선언 가능 매개 변수 없는 생성자 선언 불가능 상속 가능 모든 구조체는 System.Object 형식을 상속하는 System.ValueType으로부터 직접 상속 받.. 2019. 5. 18.
[C#] 중첩 클래스 중첩 클래스 - 클래스 안에 선언되어 있는 클래스를 말한다. 선언하는 문법은 매우 간단하다. 클래스 안에 클래스를 선언하는 것이 전부이기 때문이다. 중첩 클래스가 다른 클래스와 다른 점이 있다면, 자신이 소속되어 있는 클래스의 멤버에 자유롭게 접근할 수 있다는 것이다. private 멤버에도 접근 가능하다. 선언 위와 같이 중첩 클래스를 선언하는 문법은 매우 간단하다. 클래스 안에 클래스를 선언하는 것이다. 객체를 생성하거나 객체의 메서드를 호출하는 방법도 보통의 클래스와 다르지 않다. 중첩 클래스에서 자신의 소속 클래스 멤버의 접근하는 예제이다. 중첩 클래스를 이용하는 이유 클래스 외부에 공개하고 싶지 않은 형식을 만들고자 할 때 현재의 클래스의 일부분처럼 표현할 수 있는 클래스를 만들고자 할 때 다른.. 2019. 5. 18.