분류 전체보기

C#/기본기

[C#]클래스와 생성자

클래스 이 세상에서 객체라고 할만한 모든 것이 갖고 있는 두가지 : 속성과 기능 C#의 객체 : 속성 -> 데이터, 기능 ->메소드 필드 : 클래스 안에 선언된 변수들 멤버: 필드와 메소드를 비롯하여 프로퍼티, 이벤트 등 클래스 내에 선언된 요소들 Cat kitty = new Cat(); Cat()은 생성자라고 하는 특별한 메소드. 클래스의 이름과 동일한 이름을 가지며 객체를 생성하는 역할 new 키워드는 생성자를 호출해서 객체를 생성하는 데 사용하는 연산자 생성자와 new키워드는 바늘과 실 같은 존재 kitty는 참조. kitty자체에 메모리가 할당되는 것이 아니고 생성자가 힙에 생성한 객체를 가리키는 주소다 모든 클래스는 복합 데이터 형식(기본데이터들이 모여서) 그리고 복합 데이터 형식은 참조형식이다..

C#/기본기

[C#]메소드 오버로딩과 가변개수의 인수(Params) & 명명된 인수

메소드 오버로딩 하나의 메소드 이름에 여러 개의 구현을 올리는 것 (과적하다 = Overloading) 코드를 일관성 있게 유지가능 높은 생산성 매개변수의 개수와 형식이 다른 경우에 사용 int Plus(int a, int b) { return a + b; } double Plus(double a, double b) { return a + b; } . . . int result1= Plus(1, 2); //int Plus(int,int)호출 double result2 = Plus(3.1, 2.4) // double Plus(double,double)호출 가변 개수의 인수(Params + 배열) 매개변수의 개수가 다를 때 사용 매개변수의 개수가 유한하게 정해져 있다면 가변 개수의 인수보단 메소드 오버로딩을..

C#/기본기

[C#] 출력 전용 매개변수(out키워드)

원래 메소드는 return으로 결과를 하나로만 반환한다 여러개 반환하고 싶다면? 출력전용매개변수 out 사용 출력 전용 매개변수 out 매개변수를 목록화 할 수 있어 복수개 반환 가능 out대신 ref키워드를 똑같은 위치에 똑같이 써줘서 구현할 수 있지만, out을 사용하면 안전한 방법으로 같은 일을 할 수 있음 안전한 방법으로라는 말은 ref를 사용할 시 해당 매개변수에 결과를 저장하지 않아도 컴파일러가 경고를 하지않지만, out은 에러메세지 출력 사용방법 메소드 선언시 접근한정자 반환형식 메소드이름(매개변수1, 매개변수2, ....매개변수n, out int 출력전용매개변수이름, out int 출력전용매개변수2이름....) 메소드 호출 시 메소드이름( 인자1, 인자2, out int 변수1이름, out..

C#/기본기

[C#] Pass by Value와 Pass by Reference

Pass by Value using System; using static System.Console; namespace thistiscsharp { class Calculator { public static int Plus (int a, int b) { Console.WriteLine("Input : {0}, {1}", a, b); int result = a + b; return result; } } class MainApp { public static void Main(string[] args) { int x=3; int y=4; int result = Calculator.Plus(x, y); } } } 서론 호출하는 입장인 MainApp클래스의 x, y = 인수 (Arguments)이고 호출되는 메소..

C#/기본기

[C#] 점프문(break, continue, goto, return, throw)

break break: '반복문' 이나 'switch'문의 실행을 중단하고자 할 때 사용, 그저 중단시키고자 하는 지점에 입력해두면 됨 continue continue : 반복문을 아예 멈추게 하는 break와 달리, continue는 '한 회 건너 뛰어' 반복을 계속 수행하게 하는 기능 i가 3일 경우 현재 실행중인 반복을 건너뛰고 다음 반복으로 넘어가는 예제 for (int i = 0; i

C#/기본기

[C#] 조건문/반복문(if, switch, switch식, do while, foreach)

if문 if 문에서 사용하는 조건식은 bool형식 if -> else if -> else if-> .... ... ... -> else if 문 안에 return; : 현재 메소드를 종결하는 점프문으로서의 기능 if 문 안에 retrun : 값 반환 switch문 switch (조건식) { case 상수 1: -> 조건식 == 상수1일 case (==이 생략됐다고 보자) //실행할 코드 break; -> break : 조건식과 일치할 경우 switch문 바깥으로 이동 case 상수 2: //실행할 코드 break; case 상수 N: //실행할 코드 break; defalut: -> 조건식이 어떤 경우와도 맞지 않은 경우 //실행할 코드 -> 생략가능 break; switch문에 사용되는 조건식 : 정수..

티스토리

티스토리 코드블럭 디자인 변경, highlight.js 적용 안될 때 해결방법

highlight.js 방법 찾아서 했는데 정상적으로 적용이 안될 경우 아래 6번 8번 과정을 참고하세요 highlights.js 적용방법 티스토리 코드블럭의 디자인을 바꾸기 위해선 highlight.js 적용이 필요하다 적용 후엔 아래 코드블럭처럼 디자인을 바꿀 수 있다 using System; namespace jihun { class MainApp { static void Main(string[] args) { // } } } 방법 1. 홈페이지로 이동, 197 languages and 248 styles 클릭 https://highlightjs.org/ highlight.js Version 10.7.2 This is a patch release. The only change is that depr..

C#/기본기

[C#] null 조건부 연산자(?.)와 null병합 연산자(??)

null조건부 연산자 • C# 6.0부터 도입 • 객체의 멤버에 접근하기 전에 해당 객체가 null인지 검사하여 그 결과가 참이면 null을 반환하고, 그렇지 않은 경우에는 뒤에 지정된 멤버를 반환 • ?. 와 ?[] ArrayList a = null; a?.Add("야구"); //a가 null을 반환하므로 Add()는 호출되지 않음- ?. WriteLine($"{a?[0]}"); //a?.가 null을 반환하므로 아무것도 호출되지 않음 //만약 null이 아니라면, 뒤에 지정된 멤버 Add("야구")가 호출됨 //여기서 그냥 a[0]을 하면 a가 null이기 때문에 애초에 컴파일 에러 //a?[0]를 해줘야 함 - ?[] null 병합 연산자 • null 조건부 연산자(?.)처럼 프로그램에서 종종 필요..

파워지훈
'분류 전체보기' 카테고리의 글 목록 (8 Page)