!youtubezGrTT4k1-ycC>초기 C- CCCCLR은 JIT컴파일(Just-In-Time)에 컴파일을 수행하여 CLI코드를 기계어 명령으로 변환한다.
(1) using system; : using지시문을 사용하면 네임스페이스를 지정하지 않고도 사용할 수 있다. using system;은 c - 만약 using system; 문장을 생략하면 System.Console.WriteLine(...)으로 변경되야 컴파일 됨.
c- System 네임스페이스의 Console 클래스의 WriteLine() 메서드System.Console.WrireLine(); Console.WroteLine()은 개행(\\n)이 되지만 Console.Write()는 개행이 되지 않는다. using System을
표준 입력 Console.ReadLine(); 콘솔에서 한줄 단위로 입력을 받는다. 즉 엔터키가 눌러질 때까지 입력받은 문자열을 리턴한다. 문자열을 숫자로 변환할 때 |메서드 이름|설명| |-------|-------| |int.Parse()|다른 자료형을 int
|형식|크기|범위
GetType() 메서드 : 자료형을 출력C//오류 발생\_int = "hello";\_string = \_int;데이터 손실이 일어나지 않는 범위에 한해서 자동으로 자료형을 변경해줌
컴퓨터과학에서 효율적인 접근 및 수정을 가능케하는 자료의 조직, 관리, 저장을 하는 구조배열, 리스트, 스택, 큐, 트리, 힙, 그래프와 같은 자료형연속된 자료를 저장하고, 접근하기 좋은 자료구조로 첨자형태로 접근할 수 있어 자료를 접근하는데 시간이 짧게 걸린다자료형\
일반적인 배열은 동적으로 크기 조절이 안되지만 List는 동적으로 크기 조절이 가능한 자료구조배열은 크기가 선언된 이후에는 값을 추가할 수 없지만 list는 값을 추가하고 삭제할 수 있다.리스트를 사용하면 값을 삽입, 삭제할 수 있고 정렬과 같은 다양한 메소드들을 제공
해시테이블 해시 테이블은 (Key, Value)식으로 데이터를 저장하는 자료구조 중 하나로 key를 통해 평균 O(1)에 value를 검색할 수 있는 자료구조CDictionary<Key 타입, Value 타입> 변수명 = new Dictionary<Key 타
!youtubecg1xvFy1JQQ절차지향 프로그래밍은 영문 표기 Procedural Programming을 우리말로 번역하면서 절차지향 프로그래밍이라는 말을 쓰게 되는데 정확하게는 프로시저 또는 함수형 프로그래밍으로 해석하는 것이 맞다. 즉 프로그램을 설계할 때 함수
객체지향의 4가지 특성 중 하나 객체 지향이란 이 세상에 존재하는 사물, 개념 등을 추상화해 이를 프로그래밍에 적용하는 과정추상화란 현실에 존재하는 사물, 개념의 속성과 행위를 추출해 모델링하는 것추상화의 결과인 속성과 행위의 모음을 클래스라 한다. 대상화하려는 객체를
인스턴스를 생성할 때 자동으로 호출되는 메서드인스턴스 생성자는 다음과 같은 조건이 있다.이름은 클래스 이름과 같아야 한다.접근 제한자는 public이어야 한다.반환(return)과 관련된 선언을 하지 않는다.human 클래스를 정의하고 인스터스를 생성한 뒤 랜덤으로 입
static 필드는 특정 인스턴스에 속하는 변수가 아니라 형식 자체에 속하는 정적 필드를 선언할 수 있다. 필드를 선언할 때 static이라는 키워드를 붙여주면 된다.static으로 선언된 필드는 static이라는 메모리 영역에 저장되어 프로그램이 종료될 때까지 메모리
메서드의 이름은 같고 메서드의 매개변수는 다른 메서드를 만드는 것이 오버로딩이라고 한다.
객체지향 프로그래밍에서 캡슐화는 다음 두가지 측면이 있다.객체의 필드와 메서드를 하나로 묶는다객체의 필드와 메서드를 숨기는 역할을 한다.두 가지 측면을 세부적으로 살펴보면 먼저,객체의 필드와 메서드를 하나로 묶는다.메서드의 코드를 직접 호출자의 코드로 사용할 수 있지만
다음과 같은 코드가 있다.몬스터의 에너지를 음수값으로 입력할 수 없다. 프로그래머가 실수로 입력값을 잘못 입력할 수 있기 때문에 원천적으로 막을 필요가 있다.몬스터 생성자를 정의할 때 값 필드에 직접 접근하지 못하게 private 접근제한자로 접근제한을 걸고, 생성자에
자동 구현 속성은 속성 선언을 더욱 간결하게 만드는 방법으로 별도의 변수를 선언하지 않고 속성 만으로 사용할 수 있다.이렇게 입력하면 속성을 사용하는 것이나, 변수를 사용하는 것이나 큰 차이가 없다. public 필드와 자동 구현 프로퍼티 비교 분석 : https&#x
클래스 설계 👨Player 필드값 이름 hp 공격력 수비력 골드
객체 지향 프로그래밍에선 부모 클래스와 자식 클래스가 있는데, 부모 클래스는 자식 클래스의 기반이 된다 하여 기반 클래스라고 부르기도 하고, 자식 클래스는 부모 클래스로부터 파생되었다고 해서 파생 클래스라고도 부르기도 한다.부모 클래스는 자식 클래스에게 부모 클래스의
하나의 클래스가 여러 형태로 변환될 수 있는 성질특수한 타입(좁은 번위)에서 일반적인 타입(넓은 범위)로 형변환 될 때 별도의 표실흘 하지 않아도 자동으로 형변환을 해주는 방식예를 들어 정수형의 경우 long자료형이 int자료형보다 더 넓은 범위의 정수를 포함하고 아래
특정한 영역에서 이름이 겹쳐서 다른 변수를 가리는 것을 섀도잉이라고 표현한다.아래 프로그램을 참고하자부모 클래스와 자식 클래스 사이에 동일한 이름으로 멤버를 만들거나 메서드를 정의할 때 하이딩이라고 부른다.위 코드에서 부모의 SayHello()메서드는 정상적인 동작을
sealed 키워드는 클래스와 메서드 앞에 적용하는 키워드로 클래스에 적용하면 절대 상속하지 말라는 의미가 되고, 메서드에 적용하면 더 이상 오버라이딩하지 말라는 의미클래스 앞에 sealed 키워드를 붙이면 상속하지 말라는 뜻이다. sealed 키워드를 메서드 앞에 붙
열거형은 숫자를 쉽게 열거하기 위해 숫자에 이름을 붙인 것프로그래밍에서 상태를 숫자로 표현하는 경우가 많은 데, 예를 들어 몬스터 타입을 1은 슬라임, 2는 스켈레톤, 3은 드래곤이고 정한 경우 숫자를 코드에 그대로 입력하면 숫자가 무엇을 의미하는 지 알기 힘들다.이
제네릭은 클래스를 선언할 때 int, float과 같은 데이터 타입을 정하지 않고, 데이터 타입을 형식 매개변수(Type Parameter)로 받아들이도록한다. 제네릭은 클래스, 인터페이스, 매서드 등에 < T >와 같은 파라미터를 붙여 구현한다. 제네릭으
😁 인터페이스 > 인터페이스는 클래스에서 반드시 구현해야 하는 기능에 대한 정의가 포함된 개념으로 흔히 규격을 만들 때 사용한다 인터페이스는 추상 클래스와 매우 유사한 구조이다. 추상 클래스가 자식 클래스에서 반드시 재정의를 해야되는 것 처럼 인터페이스도 자식 클래
인터페이스는 특정한 클래스를 만들 때 사용하는 규약이다. IComparable 인터페이스를 상속받은 클래스는 반드시 CompareTo() 메서드를 구현하여야 한다는 규약을 가지고 있다. 아래와 같은 클래스가 있다. Person이라는 자료형을 리스트에 넣고 정렬을 시키고
class Student { public static int count = 0; private int id; private string name; private int kor; private int eng; private int math; public int Id { get { ret...
디버거나 잡지 못하고 프로그램이 실행 중에 발생하는 오류를 예외(Exception)이라고 부른다. 또한 이런 예외를 대처할 수 있게 하는 것을 예외 처리(Exception Handling)이라고 한다.실행 중 오류가 발생하는 상황은 다음과 같다.0으로 나눌 경우배열의
현대 프로그래밍 언어들은 메서드를 변수처럼 활용하는 기능이 있다. 메서드를 변수처럼 활용하게 된다는 것은 메서드 자체를 매개변수로 전달하거나 반환할 수 있다는 말이고, 연산자까지 활용할 수 있게 된다는 의미인데, 이러한 기능이 델리케이트(대리자)이다.\[접근 제한자]