목록창고/C# (16)
도드넷
C# 공부 16화 FileStream 클래스 1. FileStream 클래스- 파일을 위한 스트림 제공. - 클래스가 인풋값을? : 위의 예제에서는 3가지 인풋(아규멘트)값을 받아서 만들어지고 있다. 클래스도 인풋값을 가질수있다. 함수같은 형태는 아니지만 그 아래 속해있는 변수들을 아규멘트로 받아서 활용할수있다. (이걸 이제알다니!) 2. 스트림 Steam 이란?연속적 바이트 표현 3. WirteByte() : 바이트 쓰기 - ReadByte() : 바이트 읽기 4. (byte)i : 인트를 바이트로 형변환하고있음
C# 공부 15화 Regex Replace, Throw 키워드 1.\\s+- 공백 스페이스바를 가리키는 특수스트링.- Regex 클래스의 매개변수로 사용. 2. Replace 함수- Regex 클래스 내장함수로 Replace(원본스트링, 대체할스트링)의 형식으로 쓰인다. 1. 사용자 정의 Exception- 사용자 정의 오류메시지 -_- 아니 이딴걸 왜하는지. 위에서는 있지도않은 TempIsZeroException 이라는 사용자 정의 Exception을 만들어서 사용하고 있다. 2. Message 키워드- 이것도 키워드인데 -_-;; 아마 Exception 안에 들어간 스트링을 가리키는것 같다. 3. ApplicationException 클래스 을 derived 해서 사용하는 TempIsZeroExcep..
C# 공부 14화 Exception try catch finally 키워드 1. exception- 한마디로 "에러" 2. try catch finally 키워드try - exception 발생여부를 알아보기위한 구간 catch - try에서 수행한 명령중 DivideByZeroException 라는 클래스 에러발생시 e에 내용저장finally - exception 이 발생했든 안했든 실행되는 부분 담당
C# 공부 13화 foreach문 그리고 RegularExpressions 내장엔진 1. foreach- 반복문의 일종으로 배열이나 오브젝트 콜랙션을 연료(?)로 구동된다. - 형식은 : 타입 요소(이름) in 배열(이름) 2. Text.Regular Expressions- 레귤러 익스프레션. C# 내장 엔진으로 "글자찾는 역할하는거?" 모아놓은 네임스페이스인듯 - Regex : Regular Expressions 내장 클래스 위같은경우 Matches 라는 내장함수를 사용하고있다.- Matches : Regex 클래스 소속 함수로 비교해서 찾는 기능을 한다. 파라미터는 (타겟스트링, 특수스트링)으로 받는다. - MatchCollection : 일종의 집합. Matches에 의해 반환되는 값들을 저장하는 ..
C# 공부 12화 네임스페이스, 프로세서 다이렉티브 1. 네임스페이스- 이름과 이름을 분리하는 공간 2. using 키워드- 네임스페이스를 프로그램에 추가하는 역할- 이걸쓰지않으면 네임스페이스.클래스.오브젝트로 접근해야한다. 3. 네스티드 네임스페이스- 네임스페이스안에 존재하는 이중 네임스페이스로 접근은 네임스페이스.네임스페이스.클래스.오브젝트로 하게 된다. 4. 프리프로세서 다이렉티브즈 - 컴파일이 시작되기전 미리(프리) 컴파일러에게 알려주는 정보.- #으로 시작되는 키워드- ; 세미콜론 안씀 5. #define- 심볼을 정의 6. #if, #elseif, #endif- 심볼이 정의 되었는지 검사하는 프리프로세서 다이렉티브즈. 7. 심볼이란?- 상징
C# 공부 11화 인터페이스 1. 인터페이스란?인터페이스는 구문적 계약 (syntactical contract)으로, 모든 상속하는 클래스가 따라야하는 인터페이스로 정의된다. 인터페이스는 구문적 계약에서 WHAT 부분을 정의한다. 그리고 파생되는 클래스는 HOW 부분을 정의한다. 인터페이스는 프로퍼티, 메소드, 이벤트를 정의하는데 이는 인터페이스의 맴버들이다. 인터페이스는 이 맴버들의 선언만 담고 있다. 맴버들을 정의하는것은 파생되는 클래스들의 일이다. 파생되는 클래스들에게 사용할 기본 스트럭쳐를 제공하면 도움이 되기도 한다. 앱스트랙트(Abstract) 클래스도 인터페이스와 비슷한 역할을 한다. 하지만 앱스트랙트 클래스는 적은 수의 함수가 기본 클래스(Abstract)에서 정의되고 이후 파생된 클래스에..
C# 공부 10화 비교 연산자 오버로딩, 1. 비교연산자 오버로딩- 형식 : - "==" 라는 같음을 비교하는 비교연산자를 오버로딩하고 있다. 비교연산자 오버로딩에서는 operator 라는 오버로딩 키워드 말고도 클래스명이 아닌 bool 이라는 특수키워드를 붙여줬다. 이렇게 오버로딩된 == 는 Box3 Box4 라는 인풋값을 받으면 보통 == 연산이 아닌 위와같이 재정의된 비교 프로씨저에 들어간다.
C# 공부 9화 오버로드, operator 키워드 1. operator overloading - 오퍼레이터란? + - == =! 같은 기호들. 사실 메소드랑 동일하다. - 오버로딩이란? 같은 이름, 다른 동작! public static Box operator + (Box b, Box c) ← 오버로딩의 산현장... "+" 라는 오퍼레이터가 오버로딩됬다. public -> 접근허용static -> 토백이Box -> 오버로딩 할 메소드이름 operator -> 오퍼레이터 오버로딩 명령어+ -> 오버로딩 당할 오퍼레이터 (Box b, Box c) -> 오퍼레이터에 사용될 파라미터, 동시에 b와 c라는 두 Box 오브젝트 새로정의. ▲ 클라이막스... box1은 Box b로써 전해지고 box2는 Box c로써 ..
C# 공부 8화 base 키워드, abstract 키워드, virtual 키워드, override 키워드. 1. base 키워드와 base 클래스 - derived된 클래스에 접근하기 위한 용도, derived된 클래스를 base 클래스라고 함. 위와같은 경우는 Rectangle이 base 클래스. 2. abstract 키워드- 해당 클래스는 오직 base 클래스로써 사용될것을 암시하는 키워드. ▲ 원본, 파생될 클래스에서의 원형 ▲ 클래스가 다른 클래스에서 상속, 파생된후 override 된 모습 ▲ 클래스가 다른 클래스에서 상속, 파생된후 override 된 모습(2) 3. virtual 키워드와 override 키워드- Class Inheritance(상속) + Polymorphism(한 이름으로 ..
C# 독학 7화 enum 1. enum이란? 정수변수의 집합. 각 변수들은 기본적으로 순서순으로 0,1,2,3... 의 값을 가짐. enum { enumeration list }; 2. 상속 Inheritance / derived class- 상속, derived class 생성하는 방법 -> 클래스 클래스이름 : 다른클래스- 클래스끼리 merge, 연결하고 합친다라고 봐도된다. 아래 메인함수를 살펴보면 Rectangle을 인스턴스화한 Rect 이라는 이름으로 Shape 클래스쪽 함수를 사용하고 있는것을 발견할 수 있다.