Burninghering's Blog
article thumbnail
객체 (Object)

 

  • 의사나 행위가 미치는 대상 
  • 구체적, 추상적 데이터의 단위 ( 명사, 동작, 등 ... ex)학생, 회원, 생산, 주문, 배송 )

1. 객체 지향 프로그램과 절차 지향 프로그래밍

  • 절차 지향 프로그래밍 (C)

시간이나 사건의 흐름에 따른 프로그래밍

 

  • 객체 지향 프로그래밍 (C++,C#,Python,Javascript..)

객체 : 학생,밥,학교,버스 - 각 객체간 협력 : 먹는다,간다,탄다

 

 

2. 객체 지향 프로그램을 어떻게 구현할까?

 

  1. 객체를 정의 
  2. 각 객체들의 속성들, 제공하는 기능들을 구현하고
  3. 각 객체가 제공하는 기능들 간의 소통(메세지 전달)을 통하여 객체간의 협력을 구현

3. 생활 속에서 객체 찾아 클래스로 구현해보자!

 

  • 온라인 쇼핑몰에 회원 로그인을 하고 여러 판매자가 판매하고 있는 제품 중 하나를 골라 주문을 한다
  • 아침에 회사에 가는 길에 별다방 커피숍에 들려 아이스 카페라떼를 주문했다
  • 학생이 성적확인을 위해 학사 관리 시스템에 로그인 하여 수강 한 과목들의 성적을 확인했다

-->프로그램을 만들기 전에, 객체(엔티티)들을 뽑아내서 기반으로 프로그램을 만들게 된다.

 

4. 클래스는 객체의 청사진(blueprint) (=도면)

해당 객체를 추상화해서 코딩하는 것이 클래스

객체의 속성은 클래스의 멤버 변수(member variable)로 선언

  • 학생 클래스
<code />
public class Student { int studentNumber; String studentName; int majorCode; String majorName; int grade; }
  • 주문 클래스
<code />
public class Order { int orderId; String buyerId; String sellerId; int productId; String orderDate; }
  • 회원 클래스
<code />
public class UserInfo { String userId; String userPassWord; String userName; String userAddress; int phoneNumber; }

 

5. 객체 지향 프로그램 만들기

 

  1. 객체 정의 
  2. 각 객체의 속성을 멤버 변수로 / 역할을 메서드로 구현
  3. 각 객체간의 협력을 구현

 

6. 클래스 코딩하기

  • 클래스는 대문자로 시작하는것이 좋음
  • java 파일 하나에 클래스는 여러 개가 있을 수 있지만, public 클래스는 하나이고, public 클래스와 .java 파일의 이름은 동일
  • camel notation 방식으로 명명

 

profile

Burninghering's Blog

@개발자 김혜린

안녕하세요! 반갑습니다.