산업 제조
산업용 사물 인터넷 | 산업자재 | 장비 유지 보수 및 수리 | 산업 프로그래밍 |
home  MfgRobots >> 산업 제조 >  >> Industrial programming >> C 언어

C# 추상 클래스 자습서 예제:추상화란?

C#의 추상 클래스란 무엇입니까?

추상 클래스 인스턴스화할 수 없으며 키워드 abstract로 표시됩니다. 추상 클래스에는 0개 이상의 추상 메서드가 포함되어 있습니다. 추상 클래스는 기본 클래스 역할을 하며 해당 메서드를 구현하거나 재정의하는 하위 클래스에 상속되도록 설계되었습니다.

아래의 예제를 통해 C#의 추상 클래스를 배워봅시다. 아래는 'Animal'이라는 클래스의 정의입니다. 'Animal' 클래스를 정의할 때, 그것이 개든 고양이든 동물에 대해 알려진 것이 없습니다. description이라는 메서드는 클래스에 대해 정의된 일반적인 메서드일 뿐입니다.

이제 Animal이 정확히 무엇인지 알았을 때 기본 클래스를 상속하는 또 다른 클래스를 만듭니다. 동물이 실제로 Dog라는 것을 알고 있으면 기본 기본 클래스를 상속하는 Dog 클래스를 만듭니다. 여기서 주요 차이점은 Dog 클래스가 Animal 클래스의 Description 메서드 정의를 변경할 수 없다는 것입니다. Dog-Description이라는 자체 C# 추상 메서드를 정의해야 합니다. 이것이 C# 추상 클래스의 기본 개념입니다.

C#에서 추상 클래스 만들기

C# 추상 클래스를 포함하도록 코드를 변경하는 방법에 대한 실시간 예제와 함께 C#의 추상 클래스를 살펴보겠습니다. C# 추상화 클래스를 사용하여 실행할 수 있는 것이 없기 때문에 코드를 실행하지 않습니다.

1단계) 첫 번째 단계로 추상 클래스를 만들어 보겠습니다. 이 클래스는 Tutorial이라고 하며 하나의 메서드만 있습니다. 모든 코드는 Program.cs 파일에 작성해야 합니다.

코드 설명:-

  1. 먼저 추상 클래스를 정의합니다. abstract 키워드의 사용에 유의하십시오. 이것은 클래스가 추상 클래스임을 나타내는 데 사용됩니다.
  2. 다음으로 아무 작업도 수행하지 않는 메서드를 정의합니다. 메서드에는 virtual이라는 키워드가 있어야 합니다. 즉, 자식 클래스에서 메서드를 변경할 수 없습니다. 이것은 모든 추상 클래스의 기본 요구 사항입니다.

2단계) 이제 자식 클래스를 추가해 보겠습니다. 이 코드는 Program.cs 파일에 추가됩니다.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace DemoApplication
{
 abstract class Tutorial
 {
  public virtual void Set() 
  {
      
  }
 }
  class Guru99Tutorial:Tutorial
  {
   protected int TutorialID; 
   protected string TutorialName;
   
   public void SetTutorial(int pID,string pName) 
   {
    TutorialID=pID;
    TutorialName=pName;
   }
   
   public String GetTutorial()
   {
    return TutorialName;
   }
  
  static void Main(string[] args) 
  {
   Guru99Tutorial pTutor=new Guru99Tutorial();
   
   pTutor.SetTutorial(1,".Net");
    
   Console.WriteLine(pTutor.GetTutorial());
    
   Console.ReadKey(); 
  }
 }
}

이 코드에는 예외가 없습니다. 추상 Tutorial 클래스를 상속하는 'Guru99Tutorial'이라는 클래스를 정의하기만 하면 됩니다. 그런 다음 이전에 사용했던 것과 동일한 방법을 정의합니다.

참고:
여기서 Tutorial 클래스에 정의된 Set 메서드의 정의를 변경할 수 없습니다. Tutorial 클래스에서 'Set'(public virtual void Set())이라는 메서드를 정의했습니다. 메서드는 추상 클래스 C#의 일부였으므로 Guru99Tutorial 클래스에서 Set 메서드를 다시 정의할 수 없습니다.

요약

C 샤프의 추상 클래스는 클래스가 어떻게 생겼는지에 대한 매우 기본적인 요구 사항이 있는 기본 클래스입니다. 자식 클래스는 기본 클래스의 메서드를 상속할 수 없습니다.


C 언어

  1. C# 추상 클래스 및 메서드
  2. 예제가 있는 C++의 연산자:정의, 유형 및 프로그램
  3. 예제가 있는 C++ 구조체
  4. 예제가 있는 C++의 std::list
  5. 구조체와 클래스의 차이점:C++ 예제로 설명
  6. C# 추상 클래스 자습서 예제:추상화란?
  7. Java의 인터페이스 대 추상 클래스:차이점은 무엇입니까?
  8. 자바 - 추상화
  9. C++의 데이터 추상화
  10. C++의 인터페이스(추상 클래스)