JAVA를 JAVA라

[JAVA] 21.06.01 본문

JAVA/JAVA 수업

[JAVA] 21.06.01

샛별KIM 2021. 6. 1. 16:12

/*
 * 절차지향 프로그래밍 객체지향 프로그래밍
 * 1.2.3.4 ... 어제까지 이걸 했죠? 호출해서 실행..
 * 
 * 객체의 행동은 동사형으로 이름을 정한다. ~~하다. 뒤에 괄호가 있음
 *  메소드, 행위, 함수, 일한다, 보고 듣는다. ...
 * 객체의 속성은 명사형으로 이름을 정한다... 수치화 할 수 있는 것들? 소문자로 시작,
 *  멤버변수, 특성, 이름, 필드, 상태, 주소, 직업 등...
 * 
 * 하나의 클래스 파일로 똑같은 여러개가 나온다? 모양이 똑같다.
 * 붕어빵과 붕어빵틀! 모양은 다 똑같음!!(모양 = 속성)
 * 붕어빵틀은 클래스! 붕어빵은 인스턴스 들!
 * 객체는 클래스가 있어야 생성 가능하다!
 * ====> 클래스에서 만들어진 객체를 인스턴스라고 한다!
 * 
 * 
 * static! 객체 생성 없이 클래스 명으로 접근 
 */

//인스턴스 변수 =  클래스 바디에 생성
// 초기화 하지 않아도 자바가 알아서 해줍니다.!!(지역변수와 다른 점)
// 클래스에서 사용하기 위해 이 곳에서 만듭니다.

//지역변수 = 메소드 괄호 안에서 선언(){여 기}
// 괄호가 닫히면 사라집니다. (->데이터 스코프)
// 사용하기 전에 초기화 해야합니다. (값이 미리 대입되어야 해요)


//클래스 파일을 한 파일에 여러개 만들수도 있구나!

/*
 * [접근지정자(public)] static void(리턴타입) 메소드명([파라미터 혹은 매개변수]){}
 * []는 있어도 되고 없어도 된다~
 * 
 * void는 값을 리턴하면 에러!!
 * 
 * [접근지정자] : public, private, 생략, protected
 * 
 */


//객체지향!
/* 
 * 절차지향은 하나의 로직을 순서대로 진행하여 처리합니다.
 * 객체지향은 객체의 호출 순서에 영향을 받습니다.
 * 
 * 객체를 만들어 순서에 연연하지 않고 자주 쓰거나 필요한 부품은 
 * 따로 정의하여 모듈화 하는 등의 장점을 가진 방법입니다. 
 * 
 * 객체 
 * 우리 주변에 있는 모든 것들은 객체이다. 객체를 만들기 위해선 클래스가 필요하다.
 * = 현실에 존재하는 사물들
 * 
 * 클래스
 * 붕어빵틀 이라고 생각하자. 클래스 안에 메소드가 들어간다.
 * = 객체를 컴퓨터에서 구현하기 위해 필요한 설계도 같은 개념
 *  인스턴스 = 메모리 상에 만들어진 객체 
 * 
 * 메소드
 * 행동 이라고 생각하면 편하다..
 * = 클래스 속에 존재. 어떤 기능을 수행하는 명령 문장들
 * 
 */

/* 객체와 인스턴스
 * 클래스에 의해서 생성된 객체를 인스턴스 라고 한다.
 * 그렇다면 객체와 인스턴스의 차이는?
 * Animal a1 = new Animal(); 로 만들어진 a1은 객체 입니다.
 * 그리고 a1 객체는 Animal의 인스턴스(instance) 입니다.
 * 즉 인스턴스 라는 말은 특정 객체가 어떤 클래스의 객체인지를
 * 관계 위주로 설명할 때 사용합니다.
 * 즉 'a1은 인스턴스' 보다는 'a1은 객체',
 * 'a1은 Animal의 객체' 보다는 'a1은 Animal의 인스턴스'라는 표현이 잘 어울립니다.
 * 
 * 클래스와 인스턴스
 * 과자를 만드는 과자 틀과 만들어진 과자가 있습니다.
 * 과자틀 -> 클래스
 * 과자 -> 객체 - 인스턴스
 * 
 */
//[기본값] int:0, String:null(참조형의 기본값), char: ,double:0.0, boolean:false

//null
/*
 * name을 실행하면 null이 나왔습니다.
 * null이라는 것은 값이 할당되지 않은 상태를 말합니다
 * Animal이라는 클래스의 인스턴스 변수로 name을 추가했지만
 * 아무런 값도 대입하지 않았기 때문에 null이라는 값이 출력됩니다.
 */




////점심 후

atom.io

'JAVA > JAVA 수업' 카테고리의 다른 글

[JAVA] 데이터 타입 별 기본 값  (0) 2021.06.01
[JAVA] 객체(Object)와 인스턴스(Instance)  (0) 2021.06.01
[JAVA] 객체지향  (0) 2021.06.01
[JAVA] 21.05.31  (0) 2021.05.31
[JAVA] 21.05.28  (0) 2021.05.28
Comments