백지부터 시작하는 이세계 코딩 생활

생성자 (클래스) 선언 및 호출 본문

JAVA/Class & Object

생성자 (클래스) 선언 및 호출

조아덕 2020. 8. 9. 17:26

package s0508;

class Point {

         int x, y;

         // 생성자

         // 없다면 컴파일러가 자동으로 만들어서 넣어주기도 함.

         // 생성자 오버로딩을 하면, 컴파일러는 더이상 생성자를 만들지 않음.

        

         public Point() {

                 System.out.println("Call ofPoint class's default");
               
         }

         public Point(int x, int y) {

                 this.x =x;

                 this.y =y;

         }

         @Override

         public java.lang.String toString() {

                 return "Point[x=" + x + ", y=" + y + "]";

         }


         // 모든 클래스의 부모 클래스는 Object 임.

}

public class Ch12Ex04 {

         public static void main(String[] args) {

                 Point p1 = new Point();

                 p1.x = 1;

                 p1.y = 199;

                 System.out.println(p1.toString());


                 Point p2 = new Point(200,250);

                 System.out.println("p2 is\t"+p2);

         }// end main

}// end css

<결과확인>





 

<생성자(클래스) 선언 및 호출 연습>
         -객체 생성과 호출
package s0508_Ch12Ex01;
class Point{      // 일종의 설계도와 같은 의미.
         // 클래스 맴버 필드 선언
         // 접근지정자 설정 : 일반적으로 필드의 접근지정자는 private, 매소드는 public 으로 함.
         
         private int x;
         private int y;
         //가져옴 : setters 메서드.
         public void setX(int x) {
                 this.x = x;                //this 를 붙여놓은 것이 필드에 해당함. this 는 객체 자신의 참조변수다.        (주의 : 클래스 자체는 this 없음)               
         }
         //내보냄: getters 매서드.
         public int getX() {
                 return x;
         }
         //setter
         public void setY(int y) {
                 this.y = y;
         }
         //getter
         public int getY() {
                 return y;
         }
}
public class class생성 {
         public static void main(String[] args) {
                 // 클래스를 이용한 객체 생성.          
                 Point pt;
                 
                 //클래스를 이용한 객체 생성.
                 pt = new Point(); //설계도를 바탕으로 만들어진 객체를 의미.        //this가 가르키고 있음.
                 
                 // 멤버 필드에 값 넣는 방법. (포인트 연산자 활용 ~.x=10;)
                 pt.setX(100);
                 pt.setY(150);
                 
                 
                 
                 //맴버 필드에 접근하는 방법.
                 System.out.println("pt.setX is: "+pt.getX()+"\t pt.setY: "+pt.getY());
                 
                 //make class
                 
         }//end main
}//end css
Comments