개인 재정 자바 프로그래밍 : 서브 클래스 만들기 - 더미

자바 프로그래밍 : 서브 클래스 만들기 - 더미

비디오: [초보자를 위한 Java Programming] 6.2 상속 실습하기 2024

비디오: [초보자를 위한 Java Programming] 6.2 상속 실습하기 2024
Anonim

Java에서 객체 지향 프로그램을 작성할 때 데이터에 대해 생각하기 시작합니다. 당신은 계정에 관해 쓰고 있습니다. 그럼 계좌가 뭐니? 버튼 클릭을 처리하는 코드를 작성하고 있습니다. 단추가 뭐니? 직원에게 급여 수표를 보내는 프로그램을 작성 중입니다. 직원은 무엇입니까?

이 예에서 직원은 이름과 직책을 가진 사람입니다. 물론 직원에게는 다른 특징이 있지만 지금은 기본 원칙에 충실합니다. 이 목록의 코드는 직원이된다는 것이 무엇을 의미하는지 정의합니다.

가져 오기 정적 자바. 랭. 체계. 아웃; 공용 클래스 Employee {private String name; 개인 문자열 jobTitle; public void setCommand (String nameName) public void setCommand (String name);}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}} 이중 금액 지불) {out. printf ("% s 주문으로 지불", 이름); 아웃. printf ("(% s) *** $", jobTitle); 아웃. printf ("%,.2fn", amountPaid);}}

목록에서 Employee 클래스가 정의됩니다. 여기에서 정의한 것을 사용하고 정의를 확장하여보다 전문화 된 새 클래스를 만들 수 있습니다. 따라서 다음 목록에서는 FullTimeEmployee 클래스 인 새 클래스를 정의합니다.

public class FullTimeEmployee Employees를 확장합니다. {private double weeklySalary; 개인 배당금 공제; public double getBenefitDeduction () {return benefitDeduction;} public double findPaymentAmount () () {}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}) {return weeklySlyary - benefitsDeduction;}}

목록을 보면 FullTimeEmployee 클래스의 각 인스턴스에 weeklySalary 및 benefitsDeduction의 두 필드가 있음을 알 수 있습니다. 그러나 각 FullTimeEmployee 인스턴스에있는 유일한 필드입니까? 아니야, 그들은 그렇지 않아.

첫 번째 줄에는 FullTimeEmployee 클래스가 기존 Employee 클래스를 확장한다고 나와 있습니다. 즉, weeklySalary 및 benefitsDeduction을 갖는 것 외에도 각 FullTimeEmployee 인스턴스에는 name 및 jobTitle이라는 두 개의 다른 필드가 있습니다. 이 두 필드는 첫 번째 목록에서 찾을 수있는 Employee 클래스의 정의에서옵니다.

두 번째 목록에서 마술 단어는 확장됩니다. 한 클래스가 기존 클래스를 확장하면 확장 클래스는 기존 클래스에 정의 된 기능을 자동으로 상속합니다.따라서 FullTimeEmployee 클래스 는 이름 및 jobTitle 필드를 상속합니다. FullTimeEmployee 클래스는 또한 seteeName, getName, setJobTitle, getJobTitle 및 cutCheck와 같이 Employee 클래스에 선언 된 모든 메서드를 상속합니다. FullTimeEmployee 클래스는 Employee 클래스의

하위 클래스 입니다. 즉, Employee 클래스는 FullTimeEmployee 클래스의

수퍼 클래스 입니다. 혈연 관계에 대해서도 이야기 할 수 있습니다. FullTimeEmployee 클래스는 Employee 클래스의 자식 이며 Employee 클래스는 FullTimeEmployee 클래스의 부모 입니다. FullTimeEmployee 클래스가이 목록의 코드에 의해 정의 된 것처럼 거의 (그러나별로는 아닙니다). 이 코드는 가짜이지만 유익합니다.

import static java. 랭. 체계. 아웃; 공용 클래스 FullTimeEmployee {전용 문자열 이름; 개인 문자열 jobTitle; 주간 2 회 개인석; 개인 배당금 공제; public void setJobTitle (String jobTitleIn) {String getJobTitle () {return jobTitle;} 공공 무효 setName (문자열 nameIn) {이름 = 이름} double double getBenefitDeduction () {return benefitDeduction;} public double findPaymentAmount () {return weeklySalaryIn} {주 weeklySalaryIn} 주 {} 주간 샐러리 (주) - benefitDeduction;} public void cutCheck (이중 금액 지불) {out. printf ("% s 주문으로 지불", 이름); 아웃. printf ("(% s) *** $", jobTitle); 아웃. printf ("%,.2fn", amountPaid);}}

이 목록이 가짜 코드 인 이유는 무엇입니까? 이 목록과 이전 목록의 상속 상황의 주요 차이점은 다음과 같습니다. 하위 클래스는 상위 클래스의 비공개 필드를 직접 참조 할 수 없습니다. 부모 클래스의 private 필드를 사용하여 작업하려면 자식 클래스가 부모 클래스의 접근 자 메서드를 호출해야합니다.

두 번째 목록으로 돌아가서 setName ("Rufus") 호출은 합법적이지만 코드 이름 = "Rufus"는 그렇지 않습니다. 마지막 목록에서 읽은 것을 모두 믿는다면 FullTimeEmployee 클래스의 코드가 name = "Rufus"를 수행 할 수 있다고 생각할 것입니다. 글쎄, 그건 안돼.

직원이 필요하지 않습니다. java 파일을 하드 드라이브에 복사하여 Employee 클래스를 확장하는 코드를 작성하십시오. 필요한 파일은 Employee뿐입니다. 수업.

자바 프로그래밍 : 서브 클래스 만들기 - 더미

편집자의 선택

Photoshop Elements 11 - Stone

Photoshop Elements 11 - Stone

을 사용하여 Stone Out을 조각하는 방법 Photoshop Elements 11의 도구를 입력하여 텍스트와 같은 모양의 선택 영역을 만든 다음 이미지 자체를 해당 유형의 채우기로 사용합니다. 예를 들어 꽃 테마 웹 페이지를 만드는 경우 꽃 그림을 텍스트 채우기로 사용할 수 있습니다. 유형 선택을 사용하면 모든 부분을 잘라낼 수 있습니다.

Photoshop Elements 9에서 여러 파일을 일괄 처리하는 방법 - 여러 개의 인형이있는 경우

Photoshop Elements 9에서 여러 파일을 일괄 처리하는 방법 - 여러 개의 인형이있는 경우

여러 파일에 공통적으로 적용 할 편집 기능을 사용하면 Photoshop Elements에서 이러한 변경 사항을 일괄 적으로 처리 할 수 ​​있습니다. 단일 메뉴 명령을 사용하여 파일 형식을 변경하고 파일 속성을 변경하고 공통 파일 기본 이름을 추가 할 수 있습니다. 파일 이름 바꾸기는 내보내기 명령의 일부일 수도 있고 사용할 수도 있습니다.

편집자의 선택

승마 2012 런던 하계 올림픽 - 인형

승마 2012 런던 하계 올림픽 - 인형

승마 (말의 화려한 이름) 경쟁 런던 2012 하계 올림픽은 조련사, 이벤트 및 점프의 세 가지 분야로 구성됩니다. 각 분야는 팀과 개인 메달을위한 기회를 제공합니다. 대회는 7 월 28 일부터 31 일까지 개최됩니다. 조련사 경연 대회는 8 월 2 일부터 9 일까지 개최됩니다. 점프 대회는 ...

동계 올림픽에서의 자유형 스키 - 인형

동계 올림픽에서의 자유형 스키 - 인형

프리 스타일 스키는 동계 올림픽의 X 게임 이벤트 중 하나입니다. . 자유형 스키에서는 경쟁자가 언덕 꼭대기에서 바닥까지 다양한 행사를 수행합니다. 프리 스타일 스키는 기술 스키의 가장 중요한 부분을 차지하며 스노우 보드에서 트릭을 만들어내는 기술과 결합되어 있습니다.

필드 2012 런던 하계 올림픽의 이벤트 - 인형

필드 2012 런던 하계 올림픽의 이벤트 - 인형

스프린트, 릴레이 및 도로 경주 이외에도 2012 런던 하계 올림픽 육상 경기에는 점프 및 던지기 경기가 포함됩니다. 남자와 여자는 높은 점프, 긴 점프, 트리플 점프, 장대 높이뛰기 등의 4 가지 점프 이벤트와 총구, 원반, 창 던지기 및 망치와 같은 네 가지 투구 이벤트에서 경쟁합니다. 필드 이벤트 ...

편집자의 선택

Excel의 유용한 범위 객체 메소드 2016 VBA 프로그래밍 - VBA 메소드가 수행하는

Excel의 유용한 범위 객체 메소드 2016 VBA 프로그래밍 - VBA 메소드가 수행하는

엑셀 2016의 액션. Range 객체는 수십 개의 메소드를 가지고 있지만, 이들 중 대부분은 필요하지 않습니다. 여기서는 가장 일반적으로 사용되는 Range 객체 메소드를 찾습니다. Select 메서드 Select 메서드를 사용하여 셀 범위를 선택합니다. 다음 문은 ...

시나리오 관리자를 사용하여 대출 계산 모델링 방법 - 더미

시나리오 관리자를 사용하여 대출 계산 모델링 방법 - 더미

시나리오 관리자는 목표 탐색 데이터 탭의 가정 분석 섹션에 데이터 테이블이 있습니다. 다른 유용한 도구와 함께 그룹화하면 시나리오 관리자가 중요한 도구임을 믿게 될 것입니다. 그러나 유용한 이름과 좋은 회사가 있음에도 불구하고 ...

더 나은보고 모델을 위해 Power Query와 Power Pivot을 함께 사용 - Power Pivot을 사용하여 더미

더 나은보고 모델을 위해 Power Query와 Power Pivot을 함께 사용 - Power Pivot을 사용하여 더미

Power Query를 함께 사용하면 관리 및 유지 보수가 쉬운보고 모델을 만들 수 있습니다. 보고 모델은보고 메커니즘이 구축되는 기초를 제공합니다. 데이터를 가져오고, 변환하고, 모양을 만들고, 집계하는보고 프로세스를 작성하면 본질적으로보고 모델을 구축하게됩니다. 잘못 작성하는 중 ...