Witam,
Mam takie zadanie:
W swojej klasie Punkt2D zdefiniuj metodę ToString tak, by zwracała napis ze współrzędnymi
punktu. Ponieważ metoda ta jest już zdefiniowana dla System.Object, po którym dziedziczą
wszystkie inne klasy w .NET, masz możliwość przesłonięcia tej metody (override) lub napisania
nowej (new). Porównaj działanie obydwu wariantów dla obiektu klasy Punkt2D przypisanego do
zmiennej typu punkt i zmiennej typu Object. Porównaj to rozwiązanie z metodami abstrakcyjnymi w
C++.
i teraz chodzi mi o przedostatnie zdanie z przypisaniem tego obiektu typu Punkt2D do zmiennej typu punkt i typu Object.
Jak to ma wyglądać?
Tu jest mój kod do tego zadania:
te przypisania są w metodzie:
private void button2_Click(object sender, EventArgs e)
u mnie Punkt2D to Punkt2Dk
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Collections;
namespace zad43
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void richTextBox1_TextChanged(object sender, EventArgs e)
{
}
private void button2_Click(object sender, EventArgs e)
{
Punkt2Dk ob = new Punkt2Dk(2, 5);
richTextBox1.AppendText(ob.ToString() + "\n");
Punkt2Dk ob2;
Object ob3 = new Object();
richTextBox1.AppendText(ob2.ToString() + "\n");
}
}
class Punkt2Dk
{
public int x;
public int y;
public Punkt2Dk(int x1, int y1)
{
x = x1;
y = y1;
}
public new string ToString()
{
return ("Wspolrzedne punktu z metody z override: " + x + "," + y);
}
public new string ToString2()
{
return ("Wspolrzedne punktu z metody z new: " + x + "," + y);
}
}
}