(Java) 다형성 : 업캐스팅, 다운캐스팅, 추상클래스, 인터페이스, 오버라이딩, 오버로딩
다형성 : 겉 껍떼기는 같은데 다양한 형태를 가질 수 있는 성질. 업캐스팅 : 부모클래스, 인터페이스형 참조변수가 자식클래스, 인터페이스가 구현된 클래스의 인스턴스를 참조할 수 있다. 이 때, 참조범위는 부모 클래스, 인터페이스형 참조변수 ⊆ 자식클래스, 인터페이스가 구현된 클래스 이기 때문에 명시적으로 형변환을 하지 않아도 자동 형 변환이 된다. 한 형의 참조변수가 다양한 형의 객체를 참조할 수 있으므로, 이는 다형성에 해당된다. 하지만, 이 참조변수를 사용해 사용할 수 있는 참조당하는 객체의 속성은 참조변수형에 해당하는 속성들이다. 다운캐스팅 : 자식 클래스형의 참조변수가 부모클래스의 인스턴스를 참조하는것은 일반적으로 불가능하다. 왜냐하면 참조변수의 참조범위가 참조당하는 객체 형의 범위보다 넓기 때문..
2020. 9. 18.
(Java) 클래스란?
보통 객체를 위한 설계도라고 한다. 자바는 객체 지향 프로그래밍 언어이다. 객체란, 어떤 실체 라고 생각할 수 있다. 고유의 속성(필드)과 동작(메소드)을 갖고있는 하나의 실체(다른것과 구별되는 고유한 것)를 말한다. 클래스는 이 각각의 객체들의 설계도, 틀이다. 예를들어, 동물을 위한 클래스가 있다고 하자. 동물의 속성은 나이, 키가 있다. 동작은 이동하기, 잠자기, 먹기가 있다. 그러면, 동물 클래스의 속성(필드)는 나이, 키가 되고, 동작(메소드)는 이동하기, 잠자기, 먹기가 될 수 있다. 이 동물 클래스(설계도, 틀)에 해당하는 객체(인스턴스: 실제 예)(실제 어떤 것)를 생각해보면, 고양이A, 고양이B, 강아지A, 강아지B, 사람A, 사람B, 사람C가 있을 수 있다. 이들은 모두 동물이며, 각각..
2020. 9. 18.