728x90
728x90
델리게이트(delegate) - 대리자(메소드 참조형) - 메소드의 틀을 만들어 소통 - 클래스간 통신에 활용 - 문법 : delegate 리턴형 식별자(파라미터); using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace _116_delegate { delegate int DelegateFunc(int a); class Program { static int Add(int a) { Console.WriteLine("Add"); return a + a; } static void Main(string[] args) { DelegateFunc ..
try ~ catch 키워드 - 프로그램의 안정성 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace _111_try_catch { class Program { static void Main(string[] args) { int inputNum = 0; bool isCorrect = false; while(!isCorrect) { Console.WriteLine("입력문자 : "); string readStr = Console.ReadLine(); try { inputNum = int.Parse(readStr); isCorrect =..
일반화(Generic) - 클래스, 함수 일반화 가능 - 키워드 - Boxing, UnBoxing을 줄일 수 있음 - 불필요한 오버로딩을 줄일 수 있음 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace _103_GenericFunc { class Program { static void GenericPrint(T data) { Console.WriteLine("data : {0}", data); } static void GenericPrint(T[] arrData) { for(int i = 0; i < arrData.Length; i..
컬렉션(Collection) - 데이터 저장, 검색, 기타 데이터 처리 특화 - 자료구조(Data Structure) - 선언 방법, 참조 방법, 중요 메소드 ArrayList - 배열과 비슷 - 크기가 유동적(동적) using System; using System.Collections; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace _095_ArrayList { class Program { static void Main(string[] args) { ArrayList arrList = new ArrayList(); //Add 함수는 어떤 데이터형도 다..
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace CheckPoint04 { class Army { protected int _HP; protected int _MP; protected int _Speed; protected int _Attack; public virtual void Run() { Console.Write("{0}의 속도로", _Speed); } public virtual void Attack() { Console.WriteLine(); if (this is Healer) { Console.Write("[마법 공격력..
인터페이스 - 메소드, 이벤트, 인덱서, 프로퍼티, 필드 불가 - 구현부 없음(정의) - 인스턴스 생성 불가(참조 가능) - 다중 상속 시 인터페이스는 좋은 대안 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace _089_Interface { interface IAA { //public int a; //에러(필드 불가) //private void IPrint() { } //에러(private) //public void IPrint(); //에러(public) int A { get; set; } //프로퍼티 가능 void IAAPri..