Programming/C#

728x90
반응형
Object 객체 객체 - class로부터 만들어진 자료, class에 정의 되어있는 모든 멤버 변수를 정의할 수 있음 int float등은 값만 가지지만, 객체는 멤버 변수 외에 class에 정의 되어있는 메소드를 함께 실행할 수도 있음 (데이터와 기능을 함께 가질 수 있음) 1. Character 정의 2. player enemy 객체 만들기 3. 멤버 변수에 값 설정하기 .name .hp .damage 4. 객체들이 가지고 있는 기능 이용하기 TakeDamage 다른 방법 class를 만들고 class에 생성자를 정의해서 값을 바로 초기화 이 class로부터 player enemy boss라는 객체를 만들어서 기능 사용 Character에 값을 전달해서 사용자 정의 생성자를 호출할 수도 있고 그냥 ..
Class 클래스 클래스 - 관련있는 기능 데이터 하나로 묶어서 관리할 수 있는 것 연관된 자료들, 연관된 데이터들 그리고 그 데이터를 가지고 할 수 있는 어떤 동작, 기능을 묶어둔 것 public class Character { // 먼저 멤버 변수 정의 // 동작 메소드는 클래스 밑에다 정의 // 공통적인 정보 name hp damage - 멤버 변수 // this.변수 - 여기에 있는 값 사용하겠다 public string name; // 멤버 변수 public int hp; // 멤버 변수 public int damage; // 멤버 변수 public void TakeDamage(int damage) { // 전달 값이 있으면 외부에서 전달받은 값 사용(damage) this.hp -= damag..
Method 메소드 메소드 - 어떤 코드가 실행되는 전체 영역 (void Start, void Update 등) void 메소드이름() {} 쓰는 이유 하나의 영역 내에서 코드를 계속 작성하면 보기 힘듦 비슷한 동작 하는 코드 비슷하게 호출하는 식으로 사용 void - 아무것도 없다 비어있다 메소드이름 - 대문자로 시작하는 영어 단어 조합 코드 public class _13_Method : MonoBehaviour { void StartGame() { Debug.Log("Game Start"); } void EnemyTakeDamage(string name){ Debug.Log(name + " takes damage."); } void PlayerTakeDamage(string name, int hp, ..
Access Modifier 접근제한자 Access Modifier 접근제한자에는 private, public 두 가지가 있다. private은 Inspector에서 값을 수정할 수 없고, public은 Inspector에서 값을 수정할 수 있다. 다음과 같이 사용한다. private int damage = 10; public int damage = 10; int damage = 10; // 적지 않으면 기본 값은 private이다. 코드 public class _12_AccessModifier : MonoBehaviour { // private int damage = 10; // 인스펙터에서 수정 불가 public int damage = 10; // 인스펙터에서 수정 가능 // int damage = ..
Array 배열 변수는 하나의 데이터를 저장하기 위한 공간이다. 배열을 사용해 똑같은 형태의 데이터를 여러 개 관리할 수 있다. int enemy1 = 10; int enemy2 = 20; int enemy3 = 30; Debug.Log(enemy1); Debug.Log(enemy2); Debug.Log(enemy3); 이러한 형태로 사용하는 것을 int[] enemies = {10, 20, 30}; Debug.Log(enemies[0]); // 0 Debug.Log(enemies[1]); // 20 Debug.Log(enemies[2]); // 30 이렇게 줄여서 사용할 수 있으며 반복문을 사용해서 아래처럼 사용할 수도 있다. 자료형[] 변수 = new 자료형[개수]; string[] character..
Continue / Break 반복문 흐름제어 반복문 흐름을 제어하는 방법은 Continue, Break 두가지가 있다. 반복문 for 이 실행될 때, 아래와 같이 if (i == 3) {continue;} 코드를 추가하면 i가 3이 됐을때 실행 구문을 건너뛰고 다음 회차로 넘어가며 if (i == 3) {Debug.Log("Boss is dead."); break;} 코드를 추가하면 i가 3이 됐을때 실행을 중단할 수 있다. for (int i = 1; i
Loop 반복문 반복문은 for, while, foreach 3가지가 있다. for은 선언; 조건; 산술;로 아래와 같은 형태로 사용한다. for (int i = 0; i < 5; i++) { coin += 1; Debug.Log("coin : " + coin); } 선언을 해놓고 어떤걸 기준으로 반복을 할 지 결정하고 참일 경우 반복하다가 거짓일 경우 빠져나온다. (횟수O) while은 조건이 참인 동안 계속해서 반복한다. (횟수X) foreach는 나중에 배열에서 제대로 사용할 때 정리. 코드 public class _09_Loop : MonoBehaviour { // Start is called before the first frame update void Start() { int coin = 0;..
If 분기문 분기문은 if, else if, else 3가지가 있다. 아래와 같이 사용한다. if 만약 (조건) {조건이 참일 경우 실행} else if (또 다른 조건) {또 다른 조건이 참일 경우 실행} else {전부 거짓일 경우 실행} if (coin >= item1) { Debug.Log("Item 1 purchased."); coin -= item1; } else if (coin >= item2) { Debug.Log("Item 2 purchased."); coin -= item2; } else { Debug.Log("Not enough coin."); 코드 public class _08_If : MonoBehaviour { // Start is called before the first fr..
String 문자열 String을 사용해 문자열 변수를 선언하고, 변수를 조합해서 문자를 출력할 수 있다. s1.Length // 글자 길이 s1.ToLower() // 소문자 변경 s1.ToUpper() // 대문자 변경 s1.IndexOf("m") // 0부터 몇번째인지 s1[2] // 2번째 인덱스에 해당하는 값 s1.Substring(2) // 글자 일부 삭제 // 문자열 비교 s1 == "Player" // True s2 == "Enemy" // False s2.Contains("Enemy") // True s3.StartsWith("En") // True s1.EndsWith("er") // True // 특수 문자 "Game\nOver" // new line 줄바꿈 \n "Game\t\t\t..
Operator 연산자 산술 연산자 + - * / (int로 / 사용시 소수점 이하는 버림) 1이 더해지는 결과가 나오는 코드 num = num + 1; num += 1; num++; 1이 빠지는 결과가 나오는 코드 num = num - 1; num -= 1; num--; compare 비교 연산자 >, =, 5; Debug.Log(compare); // True Debug.Log(10 = 5); // True Debug.Log(10
TypeCasting 형변환자 형변환자 - 서로 다른 자료형으로 바꾸는 것 (정수 실수 문자열로 각각) // 정수형 -> 실수형 // int to double double time_d = (double) time; // 실수형 -> 정수형 // double to int time = (int) time_d; // int는 소수점 버려짐 // 정수형, 실수형 -> 문자열 // int, double to string string time_str = time.ToString(); Debug.Log(time_str); // "8" string time_d_str = time_d.ToString(); Debug.Log(time_d_str); // "8.9" // 문자열 -> 정수형, 실수형 // string to ..
주석 주석 = 메모 = 무시 = 테스트할 때 코드를 임시로 막아둘 수도 있다. // 주석 /* 전체 코드 주석 */ 코드 public class _04_Comment : MonoBehaviour { // Start is called before the first frame update void Start() // 주석 = 메모 = 무시 = 테스트할 때 코드 임시로 막아둘 수도 있음 { Debug.Log("Three"); Debug.Log("Two"); Debug.Log("One"); Debug.Log("Start"); // Game Start? or Start? // Debug.Log("Go"); /* 전체 코드 주석 Debug.Log("Ready"); Debug.Log("Go"); */ } // Upd..
Variable 변수 변수 - 자료형 값들 저장하기 위한 공간 int 정수 float 실수 숫자끝에 f 붙여야 함, 소수점 몇 자리 안될 때, 선언하고 바로 값 넣기 double 같은 실수인데 광범위, 정밀도 높은 데이터 저장, f 필요 없음 string 문자열 char 문자 (캐릭터) bool Boolean true false 참 거짓에 사용 서로 다른 자료형에 대해서 변수를 만들고 그 변수에 값을 집어넣어서 출력하고 또 변수 값을 업데이트 해서 출력 변수명 규칙 - 언더바 영문자 시작 가능 숫자로 시작 안됨, 숫자가 들어가는건 가능, 띄어쓰기 들어가는거 불가, 영문자로 지으면 됨 코드 public class _03_Variable : MonoBehaviour { // Start is called be..
DataTypes 자료형 정수 1, 10, -20 실수 0.1, 3.141592, -10.24 문자열 "Text is Text.", "123" 문자 'A', 'C' Boolean true, false 코드 public class _02_DataTypes : MonoBehaviour { // Start is called before the first frame update void Start() { Debug.Log(1); // 정수 Debug.Log(10); Debug.Log(-20); Debug.Log(0.1); // 실수 Debug.Log(3.141592); Debug.Log(-10.24); Debug.Log("Text is Text."); // 문자열 Debug.Log("123"); Debug.Lo..
public class Practice : MonoBehaviour { // Start is called before the first frame update void Start() { Debug.Log("Normal"); Debug.LogWarning("Warning"); Debug.LogError("Error"); for (int i = 0; i < 100; i++){ Debug.Log("Same Log"); // 같은 로그 모아보려면 Console에서 Collapse } } // Update is called once per frame void Update() { } }
728x90
반응형
gameuiux
'Programming/C#' 카테고리의 글 목록