C# 클래스

PHPz
풀어 주다: 2024-09-03 15:26:02
원래의
569명이 탐색했습니다.

이번 글에서는 C# 클래스에 대해 알아보겠습니다. 클래스는 생성되는 객체의 청사진입니다. 실시간 시나리오에서 Car가 클래스라고 가정해 보겠습니다. 따라서 자동차에는 모양, 속도, 인테리어, 색상 및 기타 여러 가지 특성이 있습니다.  그래서 많은 회사들이 이러한 요구 사항을 충족하는 자동차를 만듭니다. 예를 들어 Maruti, Hyundai의 모든 자동차에는 이러한 개체가 있습니다. car라는 클래스를 정의하고 자동차의 특성에 따라 객체를 생성할 수 있습니다. 마찬가지로 OOP 또는 객체 지향 프로그램에서 클래스에는 이벤트, 메서드, 필드 등과 같은 많은 속성이 있습니다.  클래스를 사용하면 프로그래머는 요구 사항에 따라 사용자 정의 유형의 객체를 만들 수 있습니다.

구문:

the class라는 키워드와 우리가 결정할 클래스 이름을 중괄호로 묶어 클래스를 정의할 수 있습니다.

Class Test {  }
로그인 후 복사

C# 클래스 구현 예시

아래는 구현 방법을 보여주는 예시입니다

예시 #1

추상클래스

코드:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
public abstract class Animals
{
public abstract void aml ();      // abstract class method
}
public class Cat : Animals     // inheritance
{
public override void aml()
{
Console.WriteLine("This is first animal");
}
}
public class Dog : Animals   // another class inheritance
{
public override void aml()
{
Console.WriteLine("This is second animal");
}
}
public class main_method
{
public static void Main()      // main method
{
Animals a;
a = new Cat();
a.aml();
a = new Dog();
a.aml();
Console.ReadLine();
}
}
로그인 후 복사

설명: 위의 예에는 추상 메소드 aml()을 사용하는 추상 클래스 Animals가 있습니다. 동물 클래스는 하위 클래스 'Cat'과 또 다른 하위 클래스 'Dog'에 내재되어 있습니다. 기본 메소드에서 'a'는 인스턴스화할 수 없는 Animals 클래스의 객체입니다. 상속시 생성자와 소멸자를 포함하는 추상 클래스가 사용됩니다. Override 키워드는 자식 클래스를 상속하는 추상 메소드 이전에 반드시 필요한 키워드입니다.

출력:

C# 클래스

예시 #2

밀폐수업

코드:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
public class Animal
{
public virtual void sleep()
{
Console.WriteLine("Animals are sleeping");
}
public virtual void eat()
{
Console.WriteLine("Animals are eating");
}
}
public class Cat : Animal    // inheritance
{
public override void sleep()
{
Console.WriteLine("Cat is sleeping");
}
public sealed override void eat()  // sealed method
{
Console.WriteLine("Cat is eating");
}
}
public class Dog : Cat  // inheritance
{
public override void Sleep()
{
Console.WriteLine("Sleeping");
}
public override void eat()
{
Console.WriteLine("Eating");
}
}
public class TestSealed
{
public static void Main()    // main method
{
Dog d = new Dog();
d.eat();
d.fly();
}
}
로그인 후 복사

설명: 위의 예에는 다른 클래스가 상속되지 않도록 하기 위해 사용되는 봉인된 메서드가 있습니다. 따라서 이 경우에 봉인된 클래스를 상속하려고 하면 컴파일러는 봉인된 키워드를 읽고 오류를 발생시킵니다. 따라서 재정의할 수 없습니다.

출력:

C# 클래스

예시 #3

정적 클래스

코드:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
class Office
{
public static string Name;          // static fields
public static string Location;
static Office()        // constructor
{
Name = "Microsoft";
Location = "Hyderabad";
}
}
class Program
{
static void Main(string[] args)
{
Console.WriteLine(Office.Name);
Console.WriteLine(Office.Location);
Console.Read();
}
}
로그인 후 복사

설명: 위의 예에는 정적 클래스가 있고 정적 클래스에 static 키워드가 사용되어 클래스를 인스턴스화할 수 없게 만듭니다. 정적 멤버의 이름과 위치로 구성됩니다. 기본 메서드에서는 학급 사무실의 정적 데이터 멤버에 액세스합니다. 정적 클래스에 대한 개체를 만들 수 없습니다. 정적 클래스는 다른 클래스에서 상속될 수 없습니다.

출력:

C# 클래스

예시 #4

부분수업

코드:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
// partial class1.cs
public partial class Class1
{
private string EmpName;
private int EmpId;
public Class1(string a, int t)
{
this.EmpName = a;
this.EmpId = t;
}
}
// partial class2.cs
public partial class Class1
{
public void Display()
{
Console.WriteLine("Employee name is : " + EmpName);
Console.WriteLine("Employee Id is : " + EmpId);
}
}
public class Class
{
private string EmpName;
private int EmpId;
public Class(string a, int t)
{
this.EmpName = a;
this.EmpId = t;
}
public void Display()
{
Console.WriteLine("Employees name is : " + EmpName);
Console.WriteLine("Employee Id is : " + EmpId);
}
}
로그인 후 복사

설명: 위의 예에서는 부분 클래스가 구현되었습니다. 장시간 수업을 할 때 사용할 수 있습니다. 따라서 코드를 쉽게 하기 위해 여러 파일을 정의할 수 있습니다. Partial은 이러한 유형의 클래스에 사용되는 키워드입니다. 따라서 부분 키워드를 사용하는 방법으로 구성된 여러 파일로 분할될 수 있습니다. 이 부분 class1.cs와 부분 class2.cs는 컴파일러에 의해 단일 파일로 결합됩니다.

출력:

C# 클래스

참고: 액세스 지정자는 클래스 자체뿐만 아니라 멤버에도 액세스하는 데 도움이 됩니다.

결론

클래스 멤버에 액세스하려면 점 연산자를 사용해야 합니다. 점 연산자는 개체 이름을 회원 이름에 연결하는 데 도움이 됩니다. 클래스 내부에 메소드, 생성자, 소멸자를 정의할 수 있습니다.

위 내용은 C# 클래스의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:php
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿