Java Academy · पाठ

डिज़ाइन

पदानुक्रम की योजना बनाइए: abstract base चुनिए, concrete shapes की सूची बनाइए, fields और methods चुनिए और सरल polymorphic operations परिभाषित कीजिए

पाठ 1, कुल 3 में से8 चरण

डिज़ाइन, CoddyKit पर Java Academy का एक निःशुल्क पाठ है। यह 3 में से 1वाँ पाठ है। आप नीचे पूरा पाठ निःशुल्क पढ़ सकते हैं—फिर अंतर्निहित कोड संपादक और 24/7 एआई ट्यूटर के साथ ब्राउज़र में इसका व्यावहारिक अभ्यास कर सकते हैं। यह Java Academy सीखने के मार्ग का हिस्सा है और आपकी प्रगति वेब तथा CoddyKit ऐप पर सिंक होती रहती है। Java Academy पाठ्यक्रम में कुल 3 पाठ शामिल हैं।

लक्ष्य और दायरा

लक्ष्य: abstract आधार Shape और कुछ ठोस आकृतियों, Circle और Rectangle, के साथ एक छोटा आकृति-वंशक्रम बनाना। पहले हम सामान्य क्रियाओं का डिज़ाइन बनाएँगे, फिर छोटे कोड नमूनों से योजना की पुष्टि करेंगे।

आकृतियाँ और फ़ील्ड

आकृतियाँ: Circle (त्रिज्या), Rectangle (चौड़ाई, ऊँचाई)। फ़ील्ड वहीं रखें जहाँ उनका संबंध हो: त्रिज्या Circle में और चौड़ाई/ऊँचाई Rectangle में। आधार वर्ग में हर फ़ील्ड रखने के बजाय व्यवहार के अनुबंध होने चाहिए।

क्रियाएँ और बहुरूपता

सामान्य क्रियाएँ: area() और perimeter()। हम इन्हें Shape में घोषित करते हैं, ताकि कोई भी Shape इन कॉल का उत्तर दे सके। इसके बाद Shape की एक सूची में मिले-जुले Circle और Rectangle ऑब्जेक्ट रखे जा सकते हैं और उन पर एकसमान ढंग से काम किया जा सकता है।

कोड: एपीआई की रूपरेखा

नमूना 1: area और perimeter वाली Shape और एक सरल Circle परिभाषित करें। इससे जाँच होती है कि साझा एपीआई एक ठोस प्रकार के लिए काम करता है।

public class Main {
  // Minimal API sketch to validate the design
  static abstract class Shape {
    abstract double area();
    abstract double perimeter();
  }

  static class Circle extends Shape {
    double radius;
    Circle(double r) { radius = r; }
    double area() { return Math.PI * radius * radius; }
    double perimeter() { return 2 * Math.PI * radius; }
  }

  public static void main(String[] args) {
    Shape s = new Circle(2.0);
    System.out.println("area=" + s.area());
    System.out.println("perimeter=" + s.perimeter());
  }
}

संग्रह और रिपोर्ट तैयार करना

बाद में हम आकृतियों को एक सूची में रखेंगे और प्रकार, area तथा perimeter जैसे सारांश प्रिंट करेंगे। एक छोटा फ़ॉर्मैटर मोबाइल पर आउटपुट को पढ़ने योग्य रखता है: हर पंक्ति में एक आकृति और संख्याएँ दो दशमलव तक पूर्णांकित होंगी।

कोड: आकृतियों की सूची

नमूना 2: Shape की एक ही सरणी में Circle और Rectangle को मिलाएँ और प्रत्येक को प्रिंट करें। आधार विधियाँ एकसमान ढंग से काम करने की सुविधा देती हैं (बहुरूपता)।

public class Main {
  static abstract class Shape {
    abstract double area();
    abstract double perimeter();
    String info() {
      // default helper for neat printing
      return String.format("area=%.2f, per=%.2f", area(), perimeter());
    }
  }
  static class Circle extends Shape {
    double radius;
    Circle(double r) { radius = r; }
    double area() { return Math.PI * radius * radius; }
    double perimeter() { return 2 * Math.PI * radius; }
    public String toString() { return "Circle " + info(); }
  }
  static class Rectangle extends Shape {
    double w, h;
    Rectangle(double w, double h) { this.w = w; this.h = h; }
    double area() { return w * h; }
    double perimeter() { return 2 * (w + h); }
    public String toString() { return "Rectangle " + info(); }
  }

  public static void main(String[] args) {
    Shape[] arr = { new Circle(2.0), new Rectangle(3.0, 4.0) };
    for (int i = 0; i < arr.length; i = i + 1) {
      System.out.println(arr[i]);
    }
  }
}

आधार डिज़ाइन की जाँच

त्वरित जाँच: इस परियोजना के लिए abstract Shape आधार वर्ग में कौन-से तत्व होने चाहिए?

पुनरावलोकन

पुनरावलोकन: आधार वर्ग area और perimeter घोषित करता है। उपवर्ग आकृति-विशिष्ट डेटा रखते हैं और गणना लागू करते हैं। Shape की सूचियाँ हमें एक ही लूप से मिली-जुली आकृतियाँ प्रिंट करने देती हैं।

शुरुआत निःशुल्क

एआई शिक्षक के साथ Java सीखें — निःशुल्क

अपने ब्राउज़र में वास्तविक कोड लिखें और चलाएँ, चौबीसों घंटे एआई शिक्षक से तुरंत सहायता पाएँ, और वेब या ऐप पर वहीं से शुरू करें जहाँ आपने छोड़ा था।

पाठ्यक्रम
104
पाठ
374

अक्सर पूछे जाने वाले प्रश्न

क्या “डिज़ाइन” पाठ निःशुल्क है?

हाँ—“डिज़ाइन” का पूरा पाठ यहाँ वेब पर निःशुल्क पढ़ा जा सकता है। इंटरैक्टिव अभ्यास (अंतर्निहित कोड संपादक और 24/7 एआई ट्यूटर) करने और Java Academy पाठ्यक्रम का बाकी हिस्सा अनलॉक करने के लिए CoddyKit PRO लें। Java Academy पाठ्यक्रम में कुल 3 पाठ शामिल हैं।

“डिज़ाइन” में मैं क्या सीखूँगा?

पदानुक्रम की योजना बनाइए: abstract base चुनिए, concrete shapes की सूची बनाइए, fields और methods चुनिए और सरल polymorphic operations परिभाषित कीजिए आप ब्राउज़र में सीधे चलाए जाने वाले व्यावहारिक कोड के साथ Java Academy का अभ्यास करते हैं, और पाठ पूरा करते समय 24/7 एआई ट्यूटर आपके प्रश्नों के उत्तर देता है।

क्या Java Academy शुरू करने के लिए मुझे किसी अनुभव की आवश्यकता है?

पहले के अनुभव की आवश्यकता नहीं है। CoddyKit पर Java Academy शुरुआती से लेकर उन्नत शिक्षार्थियों तक सभी के लिए व्यवस्थित किया गया है, इसलिए आप यहीं से या शुरुआत से सीखना शुरू कर सकते हैं और अपनी गति से आगे बढ़ सकते हैं। यह 3 में से 1वाँ पाठ है।

“डिज़ाइन” पाठ पूरा करने में कितना समय लगता है?

CoddyKit का अधिकांश पाठ लगभग 5–10 मिनट में पूरा हो जाता है। हर पाठ छोटा और संवादात्मक है, इसलिए आप लगातार प्रगति करते हैं और वेब या ऐप पर वहीं से सीखना जारी रख सकते हैं जहाँ आपने छोड़ा था।

क्या मैं इस Java Academy पाठ में कोड लिख और चला सकता हूँ?

हाँ। हर Java Academy पाठ में एक अंतर्निर्मित कोड संपादक शामिल है, जिससे आप सीधे अपने ब्राउज़र में वास्तविक कोड लिख और चला सकते हैं और तुरंत एआई प्रतिक्रिया पा सकते हैं—स्थानीय सेटअप की आवश्यकता नहीं है।

इस पाठ्यक्रम के सभी पाठ

  1. डिज़ाइन
  2. कार्यान्वयन
  3. बहुरूपी व्यवहार
← Java Academy पर वापस जाएँ