🍺JAVA

[JAVA/자바] 클래스

김말자 2022. 8. 13. 18:09
728x90
728x90
BIG

객체지향?

  • 객체(object)는 자신만의 고유한 특성과 행동을 가지는데 객체들에게 행동을 요청하거나 정보를 주고받으면서 존재함
  • 클래스(class)는 객체를 만들어내기위한 설계도

 

객체지향언어의 특성

캡슐화

  • 객체를 캡슐로 싸서 내부를 보호하고 볼 수 없게하는것 
  • 외부의 접근으로부터안전함 
  • 몇몇은 외부와의 접속을 위해 몇부분만 공개노출함
  • 클래스라는 캡슐을 사용하고, 그 안에 필드(맴버변수)와 메소드(맴버함수)로 구성
  • 인스턴스 - 클래스를 사용하기 위해 우선 해당클래스의 객체를 선언해야하는데 클래스로부터 객체를 선언하는 과정을 인스턴스라함(메모리에 할당된 객체를 의미)
  • 메소드는 - 접근제어자 반환타입 메소드명(매개변수목록){ 구현함}
  • 하나의 클래스에 같은 이름의 메소드를 둘 이상 정의할 수없음.
  • 하지만 오버로딩을 이용하면 같은이름의 메소드를 중복해서 정의할 수 있음

class 말자네 {                    // 클래스 이름

    private String 일상;  // 필드 // 클래스에 포함된 변수

    private int 세무;     // 필드

 

    Car(String 일상, int 세무) { // 생성자 // 필드초기화 // 해당 객체는 메모리에 즉시생성

        this.일상 = 일상;

        this.세무 = 세무;

    }

 

    public String getModel() { // 메소드 //명령문

        return this.세무 + "년차 " + 일상 + " " + this.color;

    }

}

 

클래스선언

접근제어자 class 클래스이름 {

    접근제어자 필드1의타입 필드1의이름;

    접근제어자 필드2의타입 필드2의이름;

    ...

    접근제어자 메소드1의 원형

    접근제어자 메소드2의 원형

    ...

};

출저 tcp스쿨

접근제어자는 정보은닉을 위해서 하는 것이고

new로 인해서 객체를 생성할 수 있음

 

메소드

사용목적 - 중복되는 코드의 반복적인 프로그래밍을 피해 가독성을 높이기 위해

메소드호출 -> 객체참조변수이름.메소드이름(); // 매개변수가 없는 메소드호출

                       객체참조변수이름.메소드이름(인수들); //매개변수가 있는 메소드 호출

 

728x90
반응형
BIG