자바 소스 해석좀 해주세요..

자바 소스 해석좀 해주세요..

작성일 2008.06.12댓글 1건
    게시물 수정 , 삭제는 로그인 필요

학교 숙제 때문에 그러는데요, 자바 소스 코드하고 답이 있는데 이해를 못하겠네요; 소스 해석좀 해주세요.

 

문제 : 다음 PersonMain 클래스는 Person형 데이터와 Customer형 데이터를 people 배열에 저장하여 제공하고 출력하는 클래스이다. Person 클래스와 Customer 클래스를 만들어 보자.

- Person 클래스 : 이름, 주민등록번호, 주소 속성을 가진 클래스.

- Customer 클래스 : Person 클래스를 상속 받아 이름, 주민등록번호, 주소, 아이디, 패스워드를 가진 고객 클래스.

 

public class PersonMainTest{

            private Person[] people = new Person[5];

            private int index = 0;

 

            public void add(Person person){

                          people[index++] = person;

            }

 

            public Person[] list(){

                        return people;

            }

            public static void main(String[] args){

                        PersonMainTest pm = new PersonMainTest();

                        Person p = new Person();

                        p.setName("홍길동");

                        p.setJumin("111111-1111111");

                        p.setAddress("용산구");

                        pm.add(p);

                        Customer c = new Customer();

                        c.setId("sunrin");

                        c.setPasswd("123456");

                        c.setName("고주몽");

                        c.setJumin("222222-2222222");

                        c.setAddress("강남구");

                        pm.add(c);

 

                        c = new Customer("moon", "1234");

                        pm.add(c);

 

                        c = new Customer("a", "b", "c", "d", "e");

                        pm.add(c);

 

                        Person[] people = pm.list();

                        System.out.println("*** Data List ***");

                        for( int i = 0; i < people.length; i++)

                        System.out.println(people[i]);

            }

}

 

<실행결과>

Person Constructor

Person Constructor

Customer Constructor

Person Constructor

Person Constructor

*** Data List ***

Person : 홍길동

Customer : sunrin : 고주몽

Customer : moon : null

Customer : a : c

null

 

<해답>

1) Person.java

public class Person

{

            protected String name;

            protected String jumin;

            protected String address;

            public Person(){

                        System.out.println("Person Constructor");

            }

            public void setName(String name){

                        this.name = name;

            }

            public String getName(){

                        return name;

            }

            public void setJumin(String jumin){

                        if(jumin == null || jumin.equals("")){

                                    System.out.println("주민번호를 입력바람");

                                    return;

                        }

                        this.jumin=jumin;

            }

            public String getJumin(){

                        return jumin;

            }

            public void setAddress(String address){

                        this.address = address;

            }

            public String getAddress(){

                        return address;

            }

            public String toString(){

                        return "Person : " + name;

            }

}

 

2) Customer.java

public class Customer extends Person{

            private String id;

            private String passwd;

 

            public Customer(){

                        this("","");

                        System.out.println("Customer Constructor");

            }

            public Customer(String id, String passwd){

                        setId(id);

                        setPasswd(passwd);

            }

            public Customer(String id, String passwd, String name, String jumin, String address){

                        setId(id);

                        setPasswd(passwd);

                        setName(name);

                        setJumin(jumin);

                        setAddress(address);

            }

            public void setId(String id){

                        this.id = id;

            }

            public String getId(){

                        return id;

            }

            public void setPasswd(String passwd){

                        this.passwd = passwd;

            }

            public String getPasswd(){

                        return passwd;

            }

            public String toString(){

                        return "Customer :" + id + ":" + name;

            }

}

 

========================================================================================

여기까지 입니다 -_-;

 

문제 소스 해석은 필요 없구요, 해답 소스 해석만 해주세요.

 

각각 줄마다 주석 달아주시면 감사하겠습니다. 급한데 제발 빨리 해주세요 ㅠㅠ 부탁입니다.


#자바 소스코드 #자바 소스파일 제출 #자바 소스코드 예제 #자바 소스코드 제출 #자바 소스 #자바 소스파일 확장자 #자바 소스 분석 툴 #자바 소스파일 #자바 소스코드 압축 #자바 소스파일 위치

profile_image 익명 작성일 -

1)Person.java

public class Person

{

            protected String name;

            protected String jumin;

            protected String address;

            public Person(){                             //생성자

                        System.out.println("Person Constructor");

            }

            public void setName(String name){  //이름 저장 메소드

                        this.name = name;

            }

            public String getName(){                 //이름 반환 메소드

                        return name;

            }

            public void setJumin(String jumin){  //주민번호 저장 메소드

                        if(jumin == null || jumin.equals("")){    //입력값이 null이거나 ""일때 프린트문 실행후 종료

                                    System.out.println("주민번호를 입력바람");

                                    return;

                        }

                        this.jumin=jumin;

            }

            public String getJumin(){                     //주민번호 반환 메소드

                        return jumin;

            }

            public void setAddress(String address){   //주소 저장메소드

                        this.address = address;

            }

            public String getAddress(){                       //주소 반환 메소드

                        return address;

            }

            public String toString(){                              //문자열 Person : 이름 으로 반환

                        return "Person : " + name;

            }

}

 

2) Customer.java

public class Customer extends Person{           //Customer는 Person클래스를 상속 받는다.

            private String id;

            private String passwd;

 

            public Customer(){                                 //무인자생성자

                        this("","");

                        System.out.println("Customer Constructor");

            }

            public Customer(String id, String passwd){  //생성자(인수가 있는 생성자)

                        setId(id);

                        setPasswd(passwd);

            }

            //생성자(인수가 있는 생성자)

            public Customer(String id, String passwd, String name, String jumin, String address){

                        setId(id);

                        setPasswd(passwd);

                        setName(name);

                        setJumin(jumin);

                        setAddress(address);

            }

            public void setId(String id){       //id저장 메소드

                        this.id = id;

            }

            public String getId(){             //id반환 메소드

                        return id;

            }

            public void setPasswd(String passwd){     //passwd저장 메소드

                        this.passwd = passwd;

            }

            public String getPasswd(){                         //passwd반환 메소드

                        return passwd;

            }

            public String toString(){                             //문자열 Customer : ID : 이름으로 반환

                        return "Customer :" + id + ":" + name;

            }

}

 

2번에 보시면 생성자가 총 3개가 있는데 이것은 인수가 다르면 여러개를 쓸수 있는건데요...

더 궁금 하시면 쪽지로 연락 주세염..... 답변확정 부탁 드릴꼐요 ^^

자바 소스 해석좀 해주세요..

학교 숙제 때문에 그러는데요, 자바 소스 코드하고 답이 있는데... 소스 해석좀 해주세요. 문제 : 다음 PersonMain 클래스는...

자바 소스 해석 좀 해주세요~ please~

아래 있는 것이 문제의 자바 소스 구요. 이미지를... 이 소스에 주석을 달아주시거나 설명 좀 해주세요~ 특히 filter라는 클래스는 몇 번이나...

자바 소스 해석 좀 해주세요

휴 ㅠㅠ 아직 자바를 너무 모르겠어요 ㅠ... 이 소스가 어떻게 어떤 순서로 어떻게 실행이 되는지 설명 좀 해주세요 ㅠ class Dog...

자바소스 해석해주세요 !! [내공검]

자바소스 해석좀 해주세요 !! 부탁입니다 ㅜㅜ 좀더 설명을 하자면 처음 문자열 하나를 읽고 pos값이 1씩 증가하면서 0.1초마다 글자수를 하나씩 늘려가면서...

자바 소스 해석좀요...

자바 소스 해석좀 해 주세요... input 형 팝업 카렌다 소스중 호출하는 부분이군요. 이미지를 누르면 GetDate('FromDate')라는 자바스크립트 함수를 호출하게 되는데...

자바 소스해석좀 해주세요

... 소스 해석이 하나도 안됩니다 ㅠㅠ 도와주세요 흠....이미 b=a; 입니다. 저런식으로 해놔서 조금헷갈리시겟네요 public class Ex37 { public...