본문 바로가기

Java Programming - 의존관계(Dependency), Final Final : 변수, 메소드(instance), class - 변경이 되지 않는다.- 메소드 - 하위 클래스에서 overriding을 할 수 없다.- class - 하위 클래스를 가질 수 없다.- 변수 - 변수의 상수화 → 한 번 값이 대입되면 다른 값을 대입할 수 없다. ⑴ Instance 변수 - 묵시적인 초기화가 없다. → 값 대입 : 명시적 대입(명시적 초기화), 생성자에서 대입⑵ static 변수 – 선언시 값 대입 ex) public static final ⑶ 지역변수(Local Variable) - 사용 전까지 대입- final 변수의 이름 관례 : 대문자 ex) TAX_RATE 의존관계(Dependency) - 하나의 Class가 다른 Class를 사용하는 관계- Has a 관계 : Att.. 더보기
Java Programming - 다형성(Polymorphism), Heterogeneous Collection 다형성(Polymorphism) - 부모Type의 변수에 자식Type 객체를 대입 primitive typeshort s;byte b;int i;long l;l = s; l = b;l = i;l = 30l;-> 다형성은 객체에 관한 것이지만 long type의 l에 다른 type인 short, byte, int의 데이터를 대입할 수 있다는 개념이 다형성이다. But, primitive type에서는 다형성이라고 하지 않는다. Animal eat() Dog Catcry()Animal a = new Animal();a = new dog();a = new cat();a = new Human();Animal c = new Cat();c.eat();c.cry(); →컴파일 에러(type check) 변경 Anim.. 더보기
Java Programming - 상속, 메소드 오버라이딩, super 상속(Inheritance)- 기존의 class에 정의된 변수나 메소드를 재사용하여 새로운 class를 만드는 것- Java는 class간의 상속에서는 단일상속을 지원, 다른 객체지향언어는 주로 다중상속을 지원- 상속의 사용 ex) public class Animal { } public class Human extends Animal : [제한자]class 식별자 extends 부모class이름 { }- 상위 클래스의 객체와 하위 클래스의 객체는 동일한 곳에 생성되는 것이 아니라 상위클래스 객체 따로 하위클래스 객체 따로 생성되며 하위 클래스는 상위 클래스의 속성과 메소드를 상속 받을 수 있도록 링크가 되어있어 상위 클래스의 속성과 메소드를 호출 할 수 있다.- super는 상위 클래스의 생성자 호출 또.. 더보기