Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- HTML
- JSP
- Ajax
- 배포
- JavaScript
- SQL
- EC2
- RDS
- Spring
- docker
- 도커
- Cookie
- AWS
- node.js
- Servlet
- autowired
- 블록체인
- model1
- CSS
- websocket
- 비트코인
- 알고리즘
- 암호화
- jQuery
- PL/SQL
- 웹게임
- tiles.xml
- express
- phaser
- 웹소켓
Archives
- Today
- Total
記錄
JAVA) 다형성 메모리 구조와 다형성 이점 본문
class Pbase {
}
class Cbase extends Pbase { // 같은 부모
String str = "abc";
}
class Dbase extends Pbase { // 같은 부모
}
public class Ex11_Inherit_Poly {
public static void main(String[] args) {
Cbase c = new Cbase();
Pbase p = c;
c.str = ""; // visible
p.str = ""; // invisible <-- error
}
}
부모 클래스로 선언한 변수로는 자식 주소값을 받는다 할지라도
그 주소를 통해서는 부모 클래스 자원만 볼 수 있다
Q) 다형성을 왜 쓰나?
다형성은 부모 타입으로 자식 객체의 주소값들을 받을 수 있다는 특징을 말한다. 이는 반복이나 검색 등을 돌릴때 다양한 자료들을 위해 따로따로 이런 기능수행을 위한 함수를 만들어줄 필요가 없이 다형성을 이용해 설정해둔 부모타입을 이용해서 하나의 함수 및 처리로 모든 data의 핸들링을 할 수 있다는 것을 의미한다. 이것이 다형성을 사용하는 핵심적인 이유라고 할 수 있다.
이것과 연관하여 중요한 것이 계층구조에 대한 파악이다. 사람이 작성한 코드 뿐만 아니라 컬렉션 프레임워크와 같은 것의 인터페이스 계층 구조를 잘 알면 코드를 작성할 때에 다형성을 고려하여 더 효율적이고 유지, 보수가 용이한 코드를 작성할 수 있다.
'Computer language > JAVA' 카테고리의 다른 글
JAVA) String과 주소값 (0) | 2018.02.08 |
---|---|
JAVA) 예외처리(throw , throws) (0) | 2018.02.08 |
JAVA) 다운캐스팅과 메모리 (0) | 2018.02.07 |
JAVA) 다차원 배열과 메모리구조 (0) | 2018.02.01 |
JAVA) 리터럴(literal) 이란? (0) | 2018.01.24 |
Comments