728x90
반응형
WPF & C# - 예제 override ( 오버라이드 / 재정의 / 상속 / 다형성 ) |
MainWindow.xaml.cs
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 | public partial class MainWindow : Window { public MainWindow() { InitializeComponent(); } // 예제 : https://docs.microsoft.com/ko-kr/dotnet/csharp/programming-guide/classes-and-structs/knowing-when-to-use-override-and-new-keywords private void btn_Click(object sender, RoutedEventArgs e) { ClassA A = new ClassA(); ClassB B = new ClassB(); ClassA AB = new ClassB(); A.Method1(); // A A.Method2(); // B B.Method1(); // C B.Method2(); // D B.Method3(); // E AB.Method1(); // C AB.Method2(); // B } } class ClassA { public virtual void Method1() { MessageBox.Show("A"); } public virtual void Method2() { MessageBox.Show("B"); } } class ClassB : ClassA { public override void Method1() { MessageBox.Show("C"); } public new void Method2() { MessageBox.Show("D"); } public void Method3() { MessageBox.Show("E"); } } | cs |
개념은 알았지만 예제를 보는건 처음이다...
이해는 되지만 막상 써먹으려니 어디부터 손을 대야할지 좀 막막하다.
개념이 제대로 잡히고, 익숙해지면 정말 유용할거 같으니 앞으로 조금씩 써먹어야 겠다. ^^
728x90
반응형