본문 바로가기
🌈 백엔드/객체 지향

JAVA_객체지향_객체 & 클래스

by 개발자 알마 2023. 2. 15.
반응형

 

 

[1] 객체 


(1) 객체 Object 정의 

  • 오브젝트
  • 행위가 미치는 대상
  • 구체적, 추상적 데이터의 단위
  • 학생, 회원, 생산,주문, 배송 등
  • 객체 지향 프로그램의 대상 
  • 생성된 인스턴스
  • 모든것을 지칭하는 단어 
  • 실제로 존재하는 사물 또는 개념
  • 객체가 가지고 잇는 기능과 속성에 따라 다르다 
  • 속성과 메서드로 정의된다 

 

(2) 시나리오의  객체 구분 

쇼핑몰에 회원 로그인을 하고 판매자 제품 중 한개를 주문한다 

나는 회사로 출근하는 길에 카페에 들려 점원A에게 아메리카노 주문한다

학생A는 성적 확인을 위해 학사 관리 시스템에 로그인하여 수강한 과목 성적을 확인한다 

 

속성 : 멤버변수 , 기능 : 메서드 

 

 

[2] 클래스 


(1) 클래스 정의

  • java는 객체 지향 언어이기 때문에 반드시 클래스가 있어야하고 모든 요소는 클래스 안에서 만들어져야한다
  • 객체의 속성을 정의하고 , 기능을 구현한 코드 상태 
  • 객체를 프로그래밍 하기위해 코드를 정의해 놓은 상태
  • TV 설계도 : 클래스  > TV 제품 : 객체 
  • 공통된 행위와 특성을 갖는 객체의 집합 

※ 추상클래스 : 객체를 생성할수 없고 서브클래스를 하나의 슈퍼클래스로 추출하기위해 사용한다. 

 

(2) 클래스 형식

파일이름 : Hello2

Public class Hello2 {}

class Test{}

파일이름은 첫 대문자 사용

public는 1개에만 적용하기 

파일이름과 public 클래스 이름과 동일해야한다 

 

파일이름 : Hello2

class Hello2 {}

class Test{}

public 가 어디에도 없다면 파일이름이 어떤 클래스 이름과 동일해도 상관없다 

 

(3) 클래스 , 멤버변수 , main 구성 설계 

  • 객체의 속성별로 클래스를 구성하고 , 역할을 멤버 변수로 메서드로 구현한다  
  • 학생을 클래스로 묶는 다면 멤버변수는 학번 , 학생이름, 학년, 전공코드 
public class Student {

	int studentId;
	String studentName;
	int majorCode;
	int grade;
}

 

  •  주문을 클래스로 묶는 다면 멤버변수는 주문번호 , 구매자아이디 , 판매자아이디 , 상품아이디 , 주문일자 
public class Order {

	int orderId;
	String buyerId;
	String sellerId;
	int productId;
	String orderDate;
}

 

  • 회원을 클래스로 묶는다면 멤버변수는 회원아이디, 회원패스워드, 회원이름, 회원주소, 회원폰번호
public class UserInfo {

	String userId;
	String userPassWord;
	String userName;
	String userAddress;
	int phoneNumber;
}

 

  • (3) public 클래스는 하나만 구성한다 (클래스 이름과 java 파일 이름은 동일) 
public class UserInfo {

	String userId;
	String userPassWord;
	String userName;
	String userAddress;
	int phoneNumber;
}


public class Order { 

	.....
    
    } // 오류 public가 2개가 있다

 

 

 

 

[3] 그 외 명칭

 


(1) 속성

객체가 가지고 있는 특성 

현재 객체 상태 , 성질, 분류, 식별, 수량 등을 표현한다 

 

(2) 메서드 

객체가 어떻게 동작하는지 규정하고 속성의 값을 변경할수 있다 

 

 

(3) 매개변수

인자 = 인수 = 파라미터 

 

 

(4) 함수

필요한 데이터를 전달하면 정해진 명령을 통해 원하는 값을 만들어서 반환하는 작업

모듈 

(5) 인스턴스

클래스로부터 생성된 객체 

실제프로그램은 인스턴스를 통해 동작된다 

클래스를 사용하려면 new() 연산을 통해 인스턴스를 생성해야 사용할수 있다 

 

(6) 생성자

객체가 생성될 초기화 과정을 기술한 메서드 

new 연산자에 의해서 자동 실행된다 

반드시 클래스 이름과 동일해야한다 

반응형

댓글