목차
1. Overloading
2. Overriding
2. Overriding
본문내용
n
'기본Class(Person)에 PersonAge라는 함수가 존재를 하는데도
'그 값이 변경이 됩니다.
Overrides Function PersonAge() As Integer
Return 19 + Temp_Age
End Function
End Class
Sub Main()
Dim MyPerson As New PersonA
Console.WriteLine("내 나이는 " & MyPerson.PersonAge())
Console.ReadLine()
End Sub
End Module
자세히 봐야 할 점이 2곳이 있습니다.
바로 Class Person의 PersonAge함수와 Class PersonA PersonAge함수입니다.
기본 Class(Person)에 있는 함수(PersonAge)는 Overridable 키워드가 있습니다.
이는 Override를 할 수 있는 상태로 메서드를 선언을 해줘야 Override를 할 수 있습니다.
Override를 할 Class(PersonA)에 있는 함수(PersonAge)도 Overrides키워드를 넣어 주면 비로써 주는 놈과 받는 놈 모두 Override를 할 수 있게 되는 것입니다.
각 Class의 함수에 한개라도 빼 먹으면 파랑색 밑줄(문법 에러)이 보일 겁니다.
기본 Class인 Person Class에 있는 PersonAge함수는 '19'이란 숫자를 리턴합니다. PersonA Class에는 Person이란 Class를 상속 받았는데도 불구하고 동일한 이름의 PersonAge함수에서는 '29'이란 숫자를 리턴이 되는데 이것이 바로 Override인 것입니다.
'기본Class(Person)에 PersonAge라는 함수가 존재를 하는데도
'그 값이 변경이 됩니다.
Overrides Function PersonAge() As Integer
Return 19 + Temp_Age
End Function
End Class
Sub Main()
Dim MyPerson As New PersonA
Console.WriteLine("내 나이는 " & MyPerson.PersonAge())
Console.ReadLine()
End Sub
End Module
자세히 봐야 할 점이 2곳이 있습니다.
바로 Class Person의 PersonAge함수와 Class PersonA PersonAge함수입니다.
기본 Class(Person)에 있는 함수(PersonAge)는 Overridable 키워드가 있습니다.
이는 Override를 할 수 있는 상태로 메서드를 선언을 해줘야 Override를 할 수 있습니다.
Override를 할 Class(PersonA)에 있는 함수(PersonAge)도 Overrides키워드를 넣어 주면 비로써 주는 놈과 받는 놈 모두 Override를 할 수 있게 되는 것입니다.
각 Class의 함수에 한개라도 빼 먹으면 파랑색 밑줄(문법 에러)이 보일 겁니다.
기본 Class인 Person Class에 있는 PersonAge함수는 '19'이란 숫자를 리턴합니다. PersonA Class에는 Person이란 Class를 상속 받았는데도 불구하고 동일한 이름의 PersonAge함수에서는 '29'이란 숫자를 리턴이 되는데 이것이 바로 Override인 것입니다.