นามธรรมและการห่อหุ้มเป็นคุณลักษณะที่เกี่ยวข้องในการเขียนโปรแกรมเชิงวัตถุ นามธรรมช่วยให้มองเห็นข้อมูลที่เกี่ยวข้องและการห่อหุ้มช่วยให้โปรแกรมเมอร์สามารถใช้ระดับนามธรรมที่ต้องการได้
นามธรรมสามารถทำได้โดยใช้คลาสนามธรรมใน C # C# อนุญาตให้คุณสร้างคลาสนามธรรมที่ใช้เพื่อจัดเตรียมการใช้งานคลาสบางส่วนของอินเทอร์เฟซ การใช้งานจะเสร็จสิ้นเมื่อคลาสที่ได้รับสืบทอดมาจากคลาสนั้น คลาสนามธรรมประกอบด้วยเมธอดนามธรรมซึ่งใช้งานโดยคลาสที่ได้รับ คลาสที่ได้รับมีฟังก์ชันพิเศษมากกว่า
ต่อไปนี้เป็นประเด็นสำคัญบางประการ -
-
คุณไม่สามารถสร้างอินสแตนซ์ของคลาสนามธรรมได้
-
คุณไม่สามารถประกาศวิธีการที่เป็นนามธรรมนอกคลาสนามธรรมได้
-
เมื่อคลาสถูกประกาศปิดผนึก จะไม่สามารถสืบทอด คลาสนามธรรมไม่สามารถประกาศปิดผนึกได้
ตัวอย่าง
using System;
namespace Demo {
abstract class Shape {
public abstract int area();
}
class Rectangle: Shape {
private int length;
private int width;
public Rectangle( int a = 0, int b = 0) {
length = a;
width = b;
}
public override int area () {
Console.WriteLine("Rectangle class area :");
return (width * length);
}
}
class RectangleTester {
static void Main(string[] args) {
Rectangle r = new Rectangle(20, 15);
double a = r.area();
Console.WriteLine("Area: {0}",a);
Console.ReadKey();
}
}
} ผลลัพธ์
Rectangle class area : Area: 300