목록데이터 엔지니어링 정복/JAVA & JSP (46)
지구정복
다형성은 사용방법은 동일하지만 다양한 객체를 이용해서 다양한 실행결과가 나오도록 하는 성질이다. 다형성을 구현하려면 메소드 재정의와 타입 변환이 필요하다. 자식 클래스들은 동일한 부모 클래스를 상속해서 기능은 같지만 성능은 다르다. ㅁ자동 타입 변환 타입 변환은 타입을 다른 타입으로 변환하는 행위를 말한다. 클래스의 변환은 상속 관계에 있는 클래스들 사이에서 발생한다. 자식은 부모 타입으로 자동 타입 변환이 가능하다. 이때 자동 타입 변환은 프로그램 실행 도중에 자동적으로 타입 변환이 일어하는 것을 말한다. 자동 타입 변환의 개념은 자식은 부모의 특징과 기능을 상속받기 때문에 부모와 동일하게 취급될 수 있다는 것이다. 또한 부모와 자식 사이에서 자식이 상속받는 부모가 바로 위에 부모가 아니더라도 자동 타..
상속은 부모가 자식에게 물려주는 행위를 말한다. 객체 지향 프로그래밍에서도 부모클래스의 멤버를 자식클래스에게 물려줄 수 있다. 프로그램에서는 부모 클래스를 상위 클래스, 자식 클래스를 하위 클래스라고 부른다. 상속은 이미 개발된 클래스를 재사용해서 새로운 클래스를 만들기 때문에 중복되는 코드를 줄여주고 부모 클래스의 수정으로 모든 자식 클래스들도 수정되는 효과를 가져오기 때문에 유지 보수 시간을 최소화한다. ㅁ클래스 상속 현실에서는 부모가 자식을 선택해서 상속하지만 프로그램에서는 자식이 부모를 선택한다. 자식 클래스를 선언할 때 어떤 부모 클래스를 상속받을 것인지 결정하고, 선택된 부모 클래스는 다음과 같이 extends를 기술한다. class 자식클래스 extends 부모클래스 { //필드 //생성자 ..
패키지는 폴더와 같다. 뿐만 아니라 클래스를 유일하게 만들어주는 식별자 역할도 한다. 자바는 클래스 이름이 동일하더라도 패키지가 다르면 다른 클래스로 인식한다. 구조는 다음과 같다. 상위패키지.하위패키지.클래스 ㅁ패키지 선언 클래스를 작성할 때 해당 클래스가 어떤 패키지에 속할 것인지를 선언하는 것을 패키지 선언이라고 한다. 또한 패키지는 클래스의 일부이다. 그 이유는 클래스만 따로 복사해서 다른 곳으로 이동하면 클래스를 사용할 수 없다. 패키지도 같이 복사해줘야 한다. 양식은 아래와 같다. package 상위패키지.하위패키지; public class CalssName { ... } *참고 만약 회사들 간에 협업해서 자바로 프로그램을 만든다고 하면 패키지명은 회사이름으로 하는 것이 관례이다. com.sa..
어떠한 객체의 필드값이 객체마다 다르다면 해당 필드를 각 객체마다 가지고 있어야 한다. 하지만 객체의 필드값이 모두 같다면 각 객체마다 해당 필드를 가지고 있는 것은 메모리 낭비이다. 이런 필드는 한 곳에 위치시키고 객체들이 공유하는 것이 효율적이다. 이때 객체마다 가지고 있는 멤버를 인스턴스 멤버 하나의 클래스에 위치되어서 공통되는 필드를 공유해주는 멤버를 정적 멤버라고 한다. ㅁ인스턴스 멤버와 this 인스턴스 멤버란 객체(인스턴스)를 생성한 후 사용할 수 있는 필드와 메소드를 말한다. 이들을 각각 인스턴스 필드, 인스턴스 메소드라고 부른다. ㅇ인스턴스 멤버 선언 아래 코드로 예시를 든다. gas와 setSpeed() 메소드는 인스턴스 멤버이기 때문에 외부 클래스에서 사용할 때에는 Car 객체를 생성..