विधि कॉल के साथ '।()' वैकल्पिक होने के संयोजन (जैसा कि ऊपर वर्णित Wysawyg) का संयोजन है और नामकरण विधियों के लिए आप जो भी पात्र पसंद करते हैं (लगभग) का उपयोग करने की क्षमता, स्केल में विधियों को लिखना संभव बनाता है जो दिखता है ऑपरेटर अधिभार की तरह। आप अपने स्वयं के ऑपरेटरों का आविष्कार भी कर सकते हैं।
उदाहरण के लिए, मेरे पास एक प्रोग्राम है जो 3 डी कंप्यूटर ग्राफिक्स से संबंधित है।
class Vector(val x: Double, val y: Double, val z: Double) {
def +(v: Vector) = new Vector(x + v.x, y + v.y, z + v.z)
// ...etc.
}
मैं भी एक विधि **
(ऊपर नहीं दिखाया गया है) द्वारा निर्धारित किए गए दो की cross product वैक्टर गणना करने के लिए: मैं एक 3D सदिश का प्रतिनिधित्व करने के लिए अपने ही वर्ग Vector
है।यह बहुत सुविधाजनक है कि आप स्कैला में अपने स्वयं के ऑपरेटर बना सकते हैं, कई अन्य प्रोग्रामिंग भाषाओं में यह लचीलापन नहीं है।
किसी ने भी ", अभी तक – ziggystar
@ziggystar को समझाया है, यह प्रश्न समापन उद्धरण गायब था। यह कोड का हिस्सा नहीं है। –
मैं एक के लिए सोचता हूं कि श्री ओडरस्की को प्रतीकों की भ्रमित भीड़ से बचना चाहिए और बदनामी लिखना चाहिए एएससीआईआई में बाहर। कम से कम, मैं वही कर रहा हूं। –