मेरे पास मूल सार Goods
वर्ग है और विरासत Book
कक्षा है।सार वर्ग फ़ील्ड रिडंडेंसी सी #
abstract class Goods
{
public decimal weight;
string Title, BarCode;
double Price;
public Goods(string title, string barCode, double price)
{
Title = title;
BarCode = barCode;
Price = price;
}
}
abstract class Book : Goods
{
protected int NumPages;
public Book(string title, string barCode, double price, int numPages)
: base(title, barCode, price)
{
NumPages = numPages;
weight = 1;
}
public override void display()
{
base.display();
Console.WriteLine("Page Numbers:{0}", NumPages);
}
}
मैं लिखने चाहिए title
, barCode
, price
कि दो बार Goods
कक्षा में मौजूद हैं? क्या मैं इस
public Book(string title, string barCode, double price, int numPages)
: base(title, barCode, price)
को कम अनावश्यक निर्माण के साथ प्रतिस्थापित कर सकता हूं?
बस एक नोट। आपके पास ** फ़ील्ड ** है और ** ** गुण ** नहीं हैं। गुणों को 'get' और/या' set' होना चाहिए। –
कीमतों का प्रतिनिधित्व करने के लिए कृपया 'डबल' के बजाय' दशमलव' (या पूर्णांक) का उपयोग करें। – CodesInChaos
मैं एक इंटरफ़ेस द्वारा अमूर्त वर्ग को बदलने पर विचार करता हूं। – CodesInChaos