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

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

비디오: [초보자를 위한 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뿐입니다. 수업.

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

편집자의 선택

플립 비디오 인형 치트 시트 - 인형

플립 비디오 인형 치트 시트 - 인형

플립 비디오 캠코더는 가장 사용하기 쉬운 캠코더입니다. 세계. 플립 비디오를 사용하면 비디오를 가리키고 촬영 한 다음 컴퓨터로 비디오를 복사 할 수 있습니다. 몇 번의 클릭 후, 당신은 Facebook, MySpace 및 YouTube에서 귀하의 작품을 과시하고 있습니다. Flip의 버튼을 해독함으로써 비디오를 고통없이 촬영하는 방법을 찾으십시오. 알아보기 ...

귀하의 디지털 필름에 대한 개인 상영 - 인형

귀하의 디지털 필름에 대한 개인 상영 - 인형

오늘, DSLR 필름 심사. HD가 장착 된 정교한 대형 스크린 TV는 여러 스피커의 서라운드 사운드 스테레오와 함께 아주 좋은 간식을 제공합니다. 따라서 영화 밤을 장소에서 쉽게 주최 할 수 있으며 영화관에 갈 수도 있습니다. ...

디지털 영화에 정적 제목을 추가하는 방법 - 인형

디지털 영화에 정적 제목을 추가하는 방법 - 인형

초연 요소는 다양한 선택을 제공합니다 DSLR 영화의 타이틀 선택 항목, 하위 3 분의 1 로케이터 정보. 로케이터 정보는 뉴스 세그먼트 및 다큐멘터리에서 장면의 사람이나 장소를 설명하는 데 사용되는 ID와 같습니다. 사람의 경우 이름과 설명이라는 두 줄로 구성됩니다. 예를 들어, Charles Dickens / Writer, ...

편집자의 선택

관계 속의 분노를 다루는 - 인형

관계 속의 분노를 다루는 - 인형

우리 모두는 때때로 파트너들과 화를 낸다. 분노가 당신과 당신의 관계에 미치는 파괴적인 영향을 최소화하는 데 도움이되는 다음 요령을 시도하십시오. 당신이 분노의 징후를 처음 알기 시작할 때, 당신의 파트너에게 무슨 일이 일어나는지 물어보십시오. 화가 난 사람을 상처 입히려 고합니다.

자폐증 진단의 영향 - 인형

자폐증 진단의 영향 - 인형

자폐아를 찾는 것이 매우 어렵습니다. 앞으로의 길은 쉬울 것이라고 아무도 말할 수 없습니다. 자녀의 생년월일과 본인의 생년월일에 관한 스크립트를 다시 작성해야 할 수도 있습니다. 당신은 지금 다루어야 할 새로운 쟁점, 압박 및 결정들을 가지고 있습니다. 그리고 주변 사람들은 ...

당신이 종속인지 결정하기 - 인형

당신이 종속인지 결정하기 - 인형

다음 증상 목록에서 확인하십시오. 당신은 모두가 공손 할 필요는 없으며, 코펜던트의 심각성 정도가 있습니다. 치료를하지 않으면 시간이 지남에 따라 코드 종속성이 악화되지만 도움을 받아 복구 할 수 있고 작업에서 훨씬 더 효과적 일 수 있습니다 ...

편집자의 선택

짧은 명상 묵상 시도 - 인형

짧은 명상 묵상 시도 - 인형

당신의 마음을 집중할 수있는 능력은 마음 챙김 명상을 통해 가장 강력하게 개발됩니다. Mindfulness 명상 중 하나는 호흡의 mindfulness입니다. 이것은 숨을 의식적으로 인식하는 것입니다. 명상을 스스로 시도하려면 다음 단계를 따르십시오. 자신의 호흡 감을 알아야합니다. 변경할 필요가 없습니다 ...

마음가짐의 세 측면 - 인형

마음가짐의 세 측면 - 인형

마음가짐은 세 가지 측면으로 주의 깊은 인식. 이 목록을 인쇄하여 핀이 무엇인지 생각 나게하십시오. 의도 - 당신의 의도는 당신이 마음가짐을 연습함으로써 얻고 자하는 것입니다. 스트레스를 줄이고 감정적 인 균형을 유지하거나 발견 할 수 있습니다.

다른 명상을 시도하십시오 - 인형

다른 명상을 시도하십시오 - 인형

명상 확장이라는 인식은 명상 확장의 중심에 있습니다. Mindfulness 명상 연습. 앉는 자리는 수천 년 동안 명상을 위해 그리고 정당한 이유로 사용되었습니다. 어떻게 평소에 앉아 있니? 당신이 대부분의 사람들과 비슷하다면, 아마 의자 나 소파 뒤에 기대어집니다. 네가 괜찮다면 ...