대외활동/starters 부트캠프 feat.웅진씽크빅
유데미 스타터스 취업 부트캠프 유니티 1기 3주차 학습 일지 -2
Heeyeon Choi
2022. 7. 10. 14:08
728x90
728x90
클래스란?
: 어떤 문제를 해결하기 위한 데이터를 만들기 위해 추상화
속성(attribute) = 변수 ==> 명사
행위(behavior) = 메서드 ==> 동사
변수?
public int _lv = 1;
public int _hp = 650;
public int _mp = 0;
메소드?
public void Move () // 접근한정자 반환형(리턴형) 메서드이름 매개변수
{
// 뭐할지 적자!
}
1. 메소드의 활용
// Example 1 메소드 활용
public int Add(int a, int b) // 접근한정자 반환형(리턴형) 메서드이름 매개변수
{
return a + b;
}
public void MyLog(string logMsg)
{
Debug.Log("Time : " + DateTime.Now + "/ Msg:" + logMsg);
//return; << 생략
}
2. 오버로딩
// Example 2 오버로딩
public float Add(float a, float b)
{
return a + b;
}
public double Add(double a, double b)
{
return a + b;
}
3. 한정자 public, private
public int GetHp()
{
return _hp;
SetLvUp();
}
private void SetLvUp()
{
_lv++;
}
4. 생성자
public Champion(int hp, int mp)
{
_hp = hp;
_mp = mp;
Debug.Log("챔피언이 생성되었습니다.");
}
5. 소멸자
~Champion()
{
Debug.Log("Free");
_hp = 0;
_mp = 0;
}
6. 속성(Property)
public int HP
{
get
{
return _hp;
}
set
{
if (value < 0)
{
value = 0;
}
_hp = value;
}
}
-> visual studio 에서 "props" 작성하고 tab 두 번 누르면, 자동완성 됩니다.
7. virtual
-> virtual 키워드는 메서드, 속성, 인덱서 또는 이벤트 선언을 수정하고 파생 클래스에서 재정의하도록 허용하는 데 사용
public class Shape
{
public const double PI = Math.PI;
protected double _x, _y;
public Shape()
{
}
public Shape(double x, double y)
{
_x = x;
_y = y;
}
public virtual double Area()
{
return _x * _y;
}
}
public class Circle : Shape
{
public Circle(double r) : base(r, 0)
{
}
public override double Area()
{
return PI * _x * _x;
}
}
cf. json 파일 사용하기
c# -> unity Jsonutility -> 최소한 기능 제공
NewtonsoftJson
LitJson
Json.Net
직렬화 -> serializable
: 직렬화는 객체의 필드에 저장된 값을 메모리에 저장 가능하도록 바꾸는 것
(0과 1인 이진 형식, JSON, XML, 등 텍스트 형식도 가능)
[Serializable]
class MyClass
{
//
}
——————————————————————————
유데미코리아 바로가기 : https://bit.ly/3b8JGeD
본 포스팅은 유데미-웅진씽크빅 취업 부트캠프 유니티 1기 과정 후기로 작성되었습니다.
728x90