본문 바로가기
유니티/C#

5. C# 기초 수업 -5

by 찡사랑방 2023. 3. 24.
728x90
728x90

5번째 수업 필기

 

1.
1)class Item 
{ 
    //필드 
    public string name; 
    public string explain; 
    public int price; 

    //메소드 
     public void use()  
    { 
        Console.WriteLine("{0}:{1}",name,price); //= Console.WriteLine($"{name}:{price}"); 
        
    } 

    //생성자 ->초기값 정의 (new를 꼭 써야함)
} 

internal class Program 
{ 
    private static void Main(string[] args) 
    { 
        Item hpItem=new Item(); 
        hpItem.name = "hp"; 
        hpItem.explain = "체력회복"; 
        hpItem.price = 50; 
        hpItem.use();

2) 간단 버전

  public Item(string name, string explain, int price)      
    { 
        this.name = name;  
        this.explain = explain;  
        this.price = price;    
    }
private static void Main(string[] args) 
    {
 Item speedItem=new Item("speedItem","속도향상",100); 
        speedItem.use();
    }

2
//C#언어 -> 객체지향 프로그램 언어 ->객체(속성+기능)의 모음 
//속성->이름, 나이, 출생년도.... 
//기능->말한다, 달린다, 먹는다 ... 
//게임->아이템->설계도면 => class(type) 
//게임속에 아이템이 몇개일까? 

class Item 
{ 
    //클래스필드(멤버) 
    public static int count; //정적. 프로그램속에 오직 하나만 존재가능 
    //인스턴스필드 
    public string name; 
    public string explain; 
    public int price; 

    //메소드 
    public void use() 
    { 
        Console.WriteLine("{0}:{1}", name, price); //= Console.WriteLine($"{name}:{price}"); 

    } 

    //생성자 ->초기값 정의  
    public Item() //기본생성자 
    { 

    } 
    public Item(string name, string explain, int price) 
    { 
        this.name = name; 
        this.explain = explain; 
        this.price = price; 
    } 
} 

internal class Program 
{ 
    private static void Main(string[] args) 
    { 
        Item.count = 0; 
        Item hpItem = new Item(); 
        hpItem.name = "hp"; 
        hpItem.explain = "체력회복"; 
        hpItem.price = 50; 
        hpItem.use(); 
        //  hpItem.count++; 
        Item.count++; 

        Item speedItem = new Item("speedItem", "속도향상", 100); 
        //  speedItem.count++; 
        Item.count++; 
        // Console.WriteLine(speedItem.count); 
        Console.WriteLine(Item.count); 
    } 
}

3
//☆상속 -> 학원관리프로그램 ->학생, 강사,과목, 강의실 


class person 
{ 
    public int Id; 
    public string Name; 
    public virtual void Talk() 
    { 
        Console.WriteLine($"{Name} : Talk"); 

    } 

} 
class Student : person 
{ 
    public int age; 
    public string email; 
    public override void Talk() 
    { 
        base.Talk(); // this -> 나, base -> 부모 
        Console.WriteLine("질문한다."); 
    } 
} 
class Teacher : person 
{ 

    public int career; 
    public string major; 
    public override void Talk() 
    { 
        base.Talk(); 
        Console.WriteLine("강의한다."); 
    } 
} 


internal class Program 
{ 
    private static void Main(string[] args) 
    { 
        Student st1 = new Student(); 
        Teacher te1 = new Teacher(); 
        st1.Name = "홍길동"; 
        st1.Talk(); 
        te1.Name = "허균"; 
        te1.Talk(); 
        //person[] array = { st1, te1 }; 

        //person p1 = new person(); 
        //st1 = p1 as Student; //as 형변환  
    } 
}
728x90

'유니티 > C#' 카테고리의 다른 글

7. C# 기초 수업 -7  (0) 2023.03.28
6. C# 기초 수업 -6  (0) 2023.03.27
4. C# 기초 수업 -4  (0) 2023.03.23
3. C# 기초 수업 -3  (0) 2023.03.22
2. C# 기초 수업 -2  (0) 2023.03.21