• [자바] 클래스라는 틀과 객체 생성과의 기본적인 관계

    2022. 11. 4.

    by. 김홍원

    세상의 모든 요소들을 객체라고 칭할 수 있다.

    이런 객체를 만드는 틀이 바로 클래스인데 클래스의 구성요소와 객체 생성시의 관계에 익숙해져야한다.

    클래스는 멤버변수 (속성), 메서드 (기능), 생성자 등으로 구성되는데 각 속성의 명칭과 의미에 주의해야한다.

     

    public class Object{

     

    //클래스(객체를 만드는 틀의 개념)//

     

      public int number;

      public String color;

      public String box;

    //멤버변수(속성)//

     

      public Object() {

       System.out.println("Object constructor");

     }

    //생성자//

    *생성자는 클래스명과 같아서 마찬가지로 대문자로 시작하고 반환형이 없다.

    초반에 메서드()와 생성자를 헷갈려하는데 잘 구분하자.

    생성자 안에 코드는 생성시 필요한 기술이 있다면 입력하고 없다면 공란으로 {}중괄호만 쳐 놓는다. 

     

     

      public void buy () {

       System.out.println("==buy==");

     } 

     

      public void sold() {

       System.out.println("==sold==");

     }

     

    //메서드 (기능) //

     

    }

     

    메서드에서 반환값이 있는 경우와 반환값이 없는 경우로도 나뉜다.

    반환값이 없는 경우에는 void로 표현하지만 반환값의 자료형이 문자형일 경우에는 String으로 써서 return값으로 문자열을 출력해주면된다.

     

    이번에는 testProject라는 클래스를 만들어서 MainClass로 호출하는 생성자를 만드는 예시를 만들어보자.

     

    package testProject;

     

    public class Testpage;

      

      public int page;

      public String color;

      public String size;

     

      public Testpage() {

          System.out.println("Testpage constructor");

    }

     

    public void next(){

          System.out.println("nextPage");

    }

     

    public void back(){

          System.out.pringln("backPage");

    }

     

    라는 클래스를 만들고 생성자로 호출하는 코드는

     

    package testProject;

     

    public class MainClass{

     

      public static void main(string[] args{

     

        TestPage thisPage1 = new TestPage();

        thisPage1.page="1";

        thisPage1.color="blud";

        thisPage1.size="1000";

     

        thisPage1.next();

        thisPage1.back();

     

     

        TestPage thisPage2 = new TestPage();

        ...

        //하나의 클래스라는 틀에서 또 다른 레퍼런스(참조변수)를 만들 수 있다.//

      }

    }

    와 같이 속성(멤버변수)와 기능(메서드)를 호출할 수 있다.

     

    하나의 클래스에서 생성된 객체는 여러 개의 레퍼런스(참조변수)를 가질 수 있고, 이 레퍼런스(참조변수)로 속성(멤버변수)에 접근이 가능하다.

     

    생성자의 매개변수에 값들이 있을 경우에는 new 생성자로 호출시 더욱 간편하게 호출할 수 있다.

     

      public Testpage(String A, int b) {

          System.out.println("Testpage constructor");

         color: A;

         page = b;

    }

     

    ...

     

      TestPage thisPage2 = new TestPage("green", 500);

    으로 생성자에 멤버변수를 불러올 수 있고 new 생성자에서 직접 값을 넣을 수 있다.

     

     

     

    참조변수.멤버변수

    참조변수.메서드()를 기억하자.

     

     

     

     

     

    댓글