본문 바로가기

Study/C#5

[C#] Internal Class 비주얼 스튜디오를 사용하면서 궁금증이 생겼다. 새 스크립트를 생성하면  Program 클래스가 다음과 같이 internal class 로 생성이 된다.직접 코드를 작성할 때엔 public이나 private로 선언하여 쓰는데internal class로 그냥 써도 되는건지? 어떤 경우에 쓰이는지 궁금했다. 접근제한자더보기클래스, 필드, 메서드 등의 접근 가능한 범위를 지정. 지금까지 내가 알던 접근 제한자는 public, private, protected 세가지이다 public은 어디서든 접근 가능private는 클래스나 구조체 내에서만 접근 가능protected는 클래스나 구조체 & 상속받은 자식 클래스에서만 접근 가능 그러나 접근제한자에는 internal이라는 제한자도 존재한다고 한다!  Internal.. 2024. 4. 29.
[C#] 데이터 저장 C# 게임 저장- 앱을 껏다 켜도 사용되던 정보 유지- 파일 저장 & 파일 불러오기 Newtonsoft.Json을 사용하여 구현하였다. Newtonsoft.Json 설치 방법프로젝트 -> NuGet 패키지 관리 -> 찾아보기 -> Newtonsoft.Json 검색 & Install 코드 설명using Newtonsoft.Json;설치 후 위 구문을 통해 Newtonsoft.Json을 사용할 수 있다.  public static string path = "C:\\UnityProjects\\SpartaDungeon\\SpartaDungeon\\SpartaDungeon\\Json";먼저 내 컴퓨터에 Json 데이터 파일들을 저장할 폴더 경로를 설정한다.  bin > Debug  > net 8.0 위치에 생성되.. 2024. 4. 25.
[C#] 인터페이스 인터페이스- C#은 다중 상속 지원 X     -> 인터페이스는 다중 상속을 지원해줌- 이름 정의시 앞에 I를 붙이는 규칙을 가짐- 다른 클래스에서 해당 인터페이스를 구현하여 동일한 기능을 공유     -> 코드의 양이 많아질수록 효율성 증가interface IMyInterface{ void Method1(); int Method2(string str);}class MyClass : IMyInterface{ // 반드시 클래스 내에서 구현해주어야함 public void Method1(){} public int Method2(string str){return 0;}}static void Main(string[] args){ IMyInterface object = new My.. 2024. 4. 24.
[C#] 구조체, 클래스, 상속, 제너릭 1. Snake 게임 만들기 SnakeGame | Notion콘솔 기반의 간단한 뱀 게임을 구현. 기본적인 동작 방식은 아래와 같다stitch-wallet-120.notion.site GitHub - JeongEunJi1127/SnakeGame: 콘솔 기반의 간단한 뱀 게임콘솔 기반의 간단한 뱀 게임. Contribute to JeongEunJi1127/SnakeGame development by creating an account on GitHub.github.com 2. 블랙잭 게임 만들기 BlackJackGame | Notion콘솔 기반의 간단한 뱀 게임을 구현.stitch-wallet-120.notion.site 3. 구조체 vs 클래스- 구조체는 값 형식, 스택에 할당,복사될 때 값이 복사.- .. 2024. 4. 23.
[C#] Random, Collection, 메서드 1. Visual Studio 자동 완성 기능- Visual Studio에서 코드를 작성할 때, 자동으로 나머지 코드가 보이는데 이때 Tab 키를 누르면 완성됨- 자동 완성이 안뜨거나 잘못 눌러서 끝났을 때 ->  Ctrl + Space를 눌러 해당 코드 관련 정보 확인 가능 2. C# randomRandom random = new Random();// num1 = 임의의 숫자 int num1 = random.Next();// num2 = 0,1,2 중 임의의 숫자int num2 = random.Next(0,3); 3. C# Collection- System.Collections.Generic 네임스페이스 추가하여 사용- 크기가 가변적 ( 배열)- List, Dictionary, Stack, Queue.. 2024. 4. 22.