자바 보충# 생성자, 객체 배열

codePark·2020년 5월 16일
0

Java-보충편

목록 보기
2/4
post-thumbnail

각종 테스트와 실습 문제를 푸는 과정에서 이해도가 부족한 부분을 여럿 발견했다. 우선 이들에 관해 리서칭해 보고, 이해에 도움이 되는 글을 찾게 되면 이 곳에 링크를 공유한 후 내용을 정리해 보기로 한다.

  1. 생성자(Constructor)
    1-1. 생성자 공식:

    //Main(실행 파일에서)
    Calculator c1 = new Calculator(10, 20);
    //객체명 인스턴스명(객체의 변수명) = new(연산자) 생성자명(파라미터값1, 파라미터값2);
    c1.sum();
    c1.avg();
    //인스턴스명.메소드명();
    //인스턴스명.메소드명();

    //Calculator (본 파일에서)
    class Calculator { //클래스 명 = 생성자 명
    int left, right; //필드 변수 선언

    public Calculator (int left, int right){ //파라미터 생성자
    this.left = left; // =필드의 left가 파라미터의 left이다.라는 뜻
    this.right = right; // =필드의 right가 파라미터의 right이다. 라는 뜻
    }

  2. Object Array(객체 배열)
    2-1. 객체 배열의 초기화

    //Main(실행 파일에서)
    TV tvArray [] = new TV[3];
    //객체명 배열명[] = new연산자 생성자명(=객체명)[배열의 크기];

    tvArray[0] = new TV("_INFINIA", 1500000, "LED TV")_;
    tvArray[1] = new TV(_"XCANVAS", 1000000, "LCD TV"_);
    tvArray[2] = new TV(_"CINEMA", 2000000, "3D TV"_);
    //배열명[인덱스] = new연산자 생성자명(파라미터1, 파라미터2, 파라미터3);

    2-2. 객체배열을 통해 값 불러오기

    //TV (본 파일에서)
    public String toString() { //기능 구현을 위한 메소드, String 리턴타입
    return getName()+"\t"+getPrice()+" "+getDescription()+"\n"; }

    //가장 실수하기 쉬운 부분!
    //기능 메소드를 통해서 값을 받아오려면, 반드시 필드 변수명이 아닌 getter를 사용해야 한다. 만약 getName()이 아닌 name을 적으면 의도한대로 값이 리턴되지 않는다!!!

    //Main(실행 파일에서)
    for(int i=0; i<tvArray.length; i++) {
    System.out.print(tvArray[i].toString());
    //위의 2-1, 2-2를 참고하여 반복문을 사용한다면 정상 출력된다!

    //Console 결과:

참고한 글:
https://opentutorials.org/course/1223/5519 (생활코딩 생성자편)
https://www.youtube.com/watch?v=GSVbcmVw1i0 (자바의 정석 객체배열편)

profile
아! 응애에요!

0개의 댓글