C#でオーバーライドする
ランタイムポリモーフィズムには、動的バインディングまたは遅延バインディングとも呼ばれるメソッドオーバーライドがあります。これは、抽象クラスと仮想関数によって実装されます。抽象クラスには、派生クラスによって実装される抽象メソッドが含まれています。
ランタイムポリモーフィズムを実装し、オーバーライドで動作する抽象クラスの例を見てみましょう-
例
using System;
namespace PolymorphismApplication {
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(10, 7);
double a = r.area();
Console.WriteLine("Area: {0}",a);
Console.ReadKey();
}
}
} -
Pythonでのメソッドのオーバーライド
親クラスのメソッドはいつでもオーバーライドできます。親のメソッドをオーバーライドする理由の1つは、サブクラスに特別な機能または異なる機能が必要な場合があるためです。 例 #!/usr/bin/python class Parent: # define parent class def myMethod(self): print 'Calling parent method' class Child(Parent): # define child class def myMethod(s
-
JavaでtoString()メソッドをオーバーライドする目的
toString()の目的は何ですか Javaのメソッド? クラスのオブジェクトを文字列として表現する場合は、toString()を使用できます。 オブジェクトのテキスト表現を返すメソッド。 オブジェクトを出力すると、デフォルトでJavaコンパイラがtoString()を呼び出します。 オブジェクトのメソッド。したがって、toString()をオーバーライドすることによって メソッドでは、意味のある出力を提供できます。 次の例でこの概念を見てみましょう: toString()メソッドのオーバーライド package io.devqa.tutorials; public class T