public class Notation : MonoBehaviour
{
string myName; // 카멜 표기법
string my_name; // 스네이크 표기법
string strMyName; // 헝가리안 표기법
string s_myName; // 헝가리안 표기법
}
: 코드의 지역성 설정
#namespace 설정
namespace NamespaceExample{
}
#특정 namespace(NamespaceExample) 내부의 코드를 사용할 수 있도록 설정
using NamespaceExample
: 속성(데이터)와 기능의 집합, 자유롭게 조합할 수 있는 하나의 데이터 구조체
-> 객체 지향 프로그래밍의 기초
클래스 안에 함수와 변수를 정의
class 클래스명 : MonoBehaviour{
}
class NPC : MonoBehaviour
{
public string npcName;
public int npcAge;
}
public class NPCManager : Monobehaviour
{
void Start()
{
NPC npc1 = new NPC();
npc1.npcNmae = "상인";
npc1.npcAge = 50;
Debug.Log(npc1.npcName);
Debug.Log(npc1.npcAge);
}
}
상인
50
: 메모리 상에 공간을 확보하고 생성한 객체를 저장
: 속성(데이터)ㅣ와 기능의 집합, 자유롭게 조합할 수 있는 하나의 데이터 구조체
-> Class와 매우 비슷하지만 메모리 상에 저장하는 방식이 다름
-> 상속을 받지 못한다
public struct Car{
float price;
int years;
string name;
}
: 기능 처리를 위한 작업의 단위
void 함수명()
{
}
: 함수 실행에 필요한 추가 데이터 -> 함수 실행의 재료
void Start()
{
num1 = 10;
num2 = 5;
AddNumber1();
AddNumber2(20,10); //Argument(인자)
}
//매개변수가 없는 함수
public void AddNumber1()
{
int result = num1 + num2;
}
//매개변수가 있는 함수
public void AddNumber2(int num3, int num4) // Parmeter 매개변수값이 존재하는 함수
{
int result = num3 + num4;
}
: 데이터를 저장할 수 있는 공간
public class ExampleVariable : MonoBehaviour
{
// 맴버 변수
int iNum;
float fNum;
double bNum;
bool isYesNo;
char c;
string str;
void Start()
{ // 지역 변수
int startNum;
bool isStart;
}
}
: 메모리에 저장되는 데이터 형식

: 변하지 않는 수(불변 값) -> 변수를 상수로 설정하는 키워드
const float PI1 = 3.1415f;
readonly float PI2 = 3.1415f;
: 변수나 함수의 접근 권한을 설정 -> Access할 수 있는 보안 수준
private : 자신의 클래스만 접근 가능
protected : 자신의 클래스, 자신의 클래스를 상속받은 클래스만 접근 가능
public : 모든 클래스에서 접근 가능
: ' . '을 찍어서 내부로 접근 가능
public class ScriptA
{
public int num1 = 1; // public 맴버변수
int num2 = 2; // private 맴버변수
private int num3 = 3; // private 맴버변수
[SerializeField] private int num4 = 4; // private 맴버변수
protected int num5 = 5; //protected 맴버변수
void Start(){
int num6 = 6; // 지역변수
}
}
public class ScriptB
{
public ScriptA scriptA;
void Start(){
scriptA.num1 = 10;
scriptA.num2 = 10;
scriptA.num3 = 10;
scriptA.num4 = 10;
scriptA.num5 = 10;
scriptA.num6 = 10;
}
}
num1 = 10만 적용
: 일반적인 변수
private int num1; //private 필드 : 자신의 클래스만 접근 가능
public int num2; //public 필드 : 다른 클래스에서 접근 가능