Spring Framework

JAVA) 클래스

na_o 2021. 7. 7. 02:01
728x90

- 객체지향 프로그래밍

프로그래밍을 현실 세계에 빗대어 체계적으로 생각해보는 발상

 

- 클래스

정보를 묶는 것

현실과 비슷한 개념(객체)을 나타내기 위한 자바의 도구

클래스 내 정보 : "멤버 변수" 라고 함

 

내가 이해하고 있는 클래스

클래스는 내가 필요한 자원(변수나 메소드 등)을 직접 만들어서

한 묶음(하나의 클래스)를 직접 정의하는 것

하나의 틀(하나의 클래스)을 만드는 것

내가만든클래스 aaaaa = new 내가만든클래스();

정의한 클래스로 객체를 생성하면

내가만든 클래스라는 틀이 생기게 됨

클래스 안에 정의해놓은 변수나 메소드들을 사용할 수 있게 된것임

사용 방법은 

aaaaa.________ 로 변수나 메소드를 호출함

내가만든클래스 bbbbb = new 내가만든클래스();

새로 또 객체를 생성하면

내가 정의한 틀이 bbbbb라는 이름으로 복제가 된거임

aaaaa랑 bbbbb는 전혀 다른 클래스임

틀만 같은거지 틀 안에 있는 내용물들은 전혀 다른 것임

 

 

Course라는 한 묶음. 틀이라는 것을 만들건데

그 틀 안에는 title, tutor, days라는 변수를 만들거다

이렇게 Course라는 틀을 정의를 할거다 땅땅땅

/*Course.java*/
package com.sparta.week01.prac;

public class Course {
    // title, tutor, days 가 Course 라는 맥락 아래에서 의도가 분명히 드러나죠!
    public String title; //멤버변수
    public String tutor; //멤버변수
    public int days; //멤버변수

    //기본 생성자
    public Course() { }

    /*
    * 생성자를 아예 기재 안하면 자동으로 기본생성자가 있다고 알아서 생각함
    * 생성자를 하나라도 기재를 할 경우 기본생성자는 없는걸로 취급되기 때문에
    * 기본생성자를 꼭 써줘야함
    * */

    //생성자
    public Course(String title, String tutor, int days) {
        //this는 현재 클래스를 가리킨다고 생각
        //this.title: Course 클래스에 있는 title 변수
        //title: 생성자 매개변수 title
        this.title = title;
        //this.tutor: Course 클래스에 있느 tutor 변수
        //tutor: 생성자 매개변수 tutor
        this.tutor = tutor;
        //this.days: Course 클래스에 있는 days 변수
        //days: 생성자 매개변수 days
        this.days = days;
    }
}
/*Prac3.java*/
package com.sparta.week01.prac;

import java.util.ArrayList;
import java.util.List;

public class Prac3 {

    public static void main(String[] args) {
        Course course = new Course();
        course.title = "웹개발의 봄, Spring";
        System.out.println(course.title); //웹개발의 봄, Spring
        //tutor에는 값을 아무것도 넣지 않았으므로 null이라는 값. 비어있다는 값이 나타남
        System.out.println(course.tutor); //null

        //생성자를 이용해서 Course 클래스에 있는 title, tutor, days라는 변수에
        //미리 값을 넣어줌
        Course coures2 = new Course("Spring", "임민영", 35);
        System.out.println(coures2.title); //Spring
        System.out.println(coures2.tutor); //임민영
        System.out.println(coures2.days); //35
    }
}

'Spring Framework' 카테고리의 다른 글

JAVA) Getter, Setter  (0) 2021.07.07
0주차) 스파르타 코딩클럽 - 웹 개발의 봄, Spring  (0) 2021.07.07
JAVA) 조건문  (0) 2021.07.06
JAVA) 반복문  (0) 2021.07.06
JAVA) 메소드  (0) 2021.07.06