ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [Java] 5주차 과제 : 자바의 Class
    Java/온라인 자바 스터디 2020. 12. 19. 17:16
    반응형

    목표

    자바의 Class에 대해 학습하기


    학습할 것

    - 클래스 정의하는 방법

    - 객체 만드는 방법 (new 키워드 이해하기)

    - 메소드 정의하는 방법

    - 생성자 정의하는 방법

    - this 키워드 이해하기


    클래스 정의하는 방법

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    접근제어자 class 클래스명 {
        // 멤버 변수
        // 생성자
        // 메서드
    }
     
    public class Animal{
        
        private String name; // 멤버 변수
        private String habitat;
        
        Animal(){ // 생성자
        }    
        
        public String getName() {
            return name;
        }
     
        public void setName(String name) {
            this.name = name;
        }
     
        public String getHabitat() {
            return habitat;
        }
     
        public void setHabitat(String habitat) {
            this.habitat = habitat;
        }    
    }
    cs


    객체 만드는 방법 (new 키워드 이해하기)

    클래스명 변수명; // 클래스의 객체를 참조하기 위한 참조변수를 선언한다.

    변수명 = new 클래스명(); // 클래스의 객체를 생성 후, 객체의 주소를 참조변수에 저장한다.


    1
    2
    Animal animal;
    animal = new Animal();
    cs


    메서드 정의하는 방법

    메서도는 크게 선언부와 구현부(몸통, boyd), 두 부분으로 나누어져 있다. 

    메서드의 선언부에는 리턴타입, 메서드명, 그리고 괄호()에 매개변수를 선언하고, 구현부에는 메서드가 호출되었을 때 수행되어야 할 코드를 넣어 주면 된다.


    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    리턴타입 메서드명 (타입 변수명, 타입 변수명, ...){
        // 메서드 호출시 수행될 코드
    }
     
    public String getName() {
        return name;
    }
     
    public void setName(String name) {
        this.name = name;
    }
    cs


    생성자 정의하는 방법

    생성자는 인스턴스가 생성될 때 호출되는 '인스턴스 초기화 메서드'이다. 따라서 인스턴스 변수의 초기화 작업에 주로 사용되며, 인스터스 생성 시에 실행되어야 할 작업을 위해서도 사용된다.


    생성자의 조건

    1.생성자명은 클래스명과 같아야 한다.

    2.생성자는 리턴 값이 없다.


    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    클래스명(타입 변수명, 타입 변수명, ...){
        // 인스턴스 생성 시 수행될 코드    
    }
     
    public class Animal {
     
        Animal(){ // 매개 변수가 없는 생성자
        }
        
        Animal(String name, String habitat){ // 매개 변수가 있는 생성자
        }
    }
    cs

    this 키워드 이해하기

    this는 객체가 자기 자신을 지칠할 때 쓰는 키워드다.

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    public class TestThis {
        
        int age = 10;
        
        void getAge(){
            
            int age = 20;
            
            System.out.println("age : " + age); // age : 20
            System.out.println("this.age : " + this.age); // this.age : 10
        }
    }
    cs

    - 지역 변수와 속성(객체 변수, 정적 변수)의 이름이 같은 경우 지역 변수가 우선한다.

    - 객체 변수와 이름이 같은 지역 변수가 있는 경우 객체 변수를 사용하려면 this를 접두사로 사용한다.

    - 정적 변수와 이름이 같은 지역 변수가 있는 경우 정적 변수를 사용하려면 클래스명을 접두사로 사용한다.

    참조 : https://github.com/whiteship/live-study/issues/5


    반응형

    댓글

Designed by Tistory.