·메소드 재정의(method overriding): 서브 클래스가 필요에 따라 상속된 메소드를 다시 정의하는 것 @Override을 사용하면 재정의 한 메소드라는 것을 표시함으로써 함수 이름이 전에 선언되지 않았다면, 오류를 내어 사용자에게 재정의 함수이지만, 그 전에 정의되지 않았다는 것을 알려줌. (새로운 메소드로 선언되는것을 막아준다.) 오버로딩의 조건 : 같은 함수이름, 서로 다른 매개 변수 또는 매개 변수의 수 오버라이딩의 조건 : 같은 함수이름, 같은 매개 변수와 수 1. 모든 학생은 이름, 학번, 소속학과, 학년, 이수학점 수를 가진다. 추가적으로 학부생(undergraduate)은 소속 동아리명을 가지고 있고 대학원생(Graduate)은 조교 유형과 장학금 비율을 가진다. 조교 유형에는 교..
상속의 개념 상속의 장점 상속을 통하여 기존 클래스의 필드와 메소드를 재사용 기존 클래스의 일부 변경도 가능 상속을 이용하게 되면 복잡한 GUI 프로그램을 순식간에 작성 상속은 이미 작성된 검증된 소프트웨어를 재사용 신뢰성 있는 소프트웨어를 손쉽게 개발,유지 보수 코드의 중복을 줄일 수 있다. 상속 사용 연습문제 1. Person 클래스는 이름, 주소, 전화번호를 필드로 가진다. 하나 이상의 생성자를 정의하고 각 필드에 대해 접근자와 생성자 메소드를 작성하라. 이어 Person을 상속받아서 Customer 클래스를 작성해보자. Customer는 고객번호와 마일리지를 필드로 가지고 있다. 한 개 이상의 생성자를 작성하고 적절한 접근자 메소드와 설정자 메소드를 작성한다. 이들 클래스들의 객체를 만들고 각 객..
생성자(Contructor) 객체가 생성될 때에 필드에게 초기값을 제공하고 필요한 초기화 절차를 실행하는 메소드 c++과 다르게 JAVA는 소멸자가 없다. 시스템에서 자동으로 소멸시켜줌 생성자의 예 생성자가 한개라도 만들어졌다면 디폴트 생성자가 안만들어지지만 아무것도 없으면 디폴트생성자가 자동으로 한개 생긴다. 생성자는 처음에 초기값 설정 을 위해 사용 (그 이후에 그 안의 값을 변경하진 못한다. 정적 변수 인스턴스 변수(instance variable) : 객체마다 하나씩 있는 변수 정적 변수(static variable) : 모든 객체를 통틀어서 하나만 있는 변수 정적변수는 클래스 자체에 속해있다. Tip . 정적변수는 객체를 새로 생성해도 초기화되지 않는다. (지역변수는 새로 개체를 생성하면 초기화..
클래스(Class) : 객체를 만드는 설계도 클래스로부터 만들어지는 각각의 객체를 특별히 그 클래스의 인스턴스(instance)라고도 한다. ex 도면 == 클래스, 제품 == 객체 대표적 특징 캡슐화, 상속, 다형성 변수의 종류 필드(field) : 클래스 안에서 선언되는 멤버 변수, 인스턴스 변수라고도 한다. 지역 변수(local variable) : 메소드나 블록 안에서 선언되는 변수 매개 변수(parameter) : 메소드 선언에서의 변수 클래스를 설계할 때 전역변수를 가능한 줄이고 지역변수로 선언해야 안정성이 있다. 변수는 어디든 선언하면 작동한다. 일반적으로 Public == 모든 클래스에서 접근가능 (메소드) Private == 클래스 내에서만 접근가능 (변수) 사용한다. 접근 제어 같은 패..