[JAVA] 클래스의 정의

2021. 7. 13. 14:15·Computer Science/Programming Language

클래스의 정의

클래스의 정의는 크게 3가지로 나눌 수 있다. 

(1) 설계도 (2) 데이터 +함수 (3) 사용자 정의 타입

 

(1) 설계도

말그대로 설계도.. "https://bskwak.tistory.com/219" 참고 

 

)2) 클래스 == 데이터 + 함수

 

※ 배열 vs 구조체 

더보기

배열은 같은 type만 묶을 수 있고 

구조체는 다른 type도 묶을 수 있음

구조체에서 좀 더 발전(?)된 형태가 클래스라 할 수 있음

클래스 == 구조체(다양한 type 변수) + 함수(메서드) 

 

(3) 사용자 정의 타입

원하는 타입을 새로 만듦 - 예를 들면 시간 같은거? 

/*1*/
int hour;
int min;
int sec;

/*2*/
int hour1, hour2, hour3;
int min1, min2, min3;
int sec1, sec2, sec3;

/*3*/
int[] hour = new int[3]; 
int[] min = new int[3];
int[] sec = new int[3];

class 로 시간에 대한 "hour, minute, second"를 하나로 묶어서 코드를 써보면 다음과 같다. 

class Time{
	int hour;
    int minute;
    int second;
}

/*1*/
Time t = new Time();

/*2*/
Time t1 = new Time();
Time t2 = new Time();
Time t3 = new Time();

/*3*/
Time[] t = new Time[3];
t[0] = new Time();
t[1] = new Time();
t[2] = new Time();

코드가 훨~씬 간결해지고 시분초가 하나로 묶이기 때문에 이전 코드처럼 따로 분리되는 현상이 사라짐 

 

이전 코드 : 비 객체 지향 코드 

이후 코드 : 객체 지향적 코드 (관련된 값들을 묶을 수 있고 간결해짐)

하는 일의 차이는 없지만, JAVA와 같은 객체 지향 언어에서는 이후 코드가 적합

저작자표시 비영리 변경금지 (새창열림)

'Computer Science > Programming Language' 카테고리의 다른 글

[JAVA] 메서드와 return문  (0) 2021.07.15
[JAVA] 자바에서의 변수 종류  (0) 2021.07.13
[Java] 객체의 생성과 사용  (0) 2021.07.10
[C#] 연산- 소수점 나타내기  (0) 2021.04.07
[JAVA] 배열을 복제하는 방법 - clone()메소드  (0) 2021.02.11
'Computer Science/Programming Language' 카테고리의 다른 글
  • [JAVA] 메서드와 return문
  • [JAVA] 자바에서의 변수 종류
  • [Java] 객체의 생성과 사용
  • [C#] 연산- 소수점 나타내기
BS Kwak
BS Kwak
  • BS Kwak
    Slow but steady wins the race
    BS Kwak
  • 전체
    오늘
    어제
    • 카테고리 (161)
      • Project (2)
      • Next.js (3)
      • HTML+CSS+JS (17)
      • Computer Science (139)
        • Programming Language (52)
        • 자료구조와 알고리즘 (75)
        • Digital circuit (3)
        • 기타 error (9)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

    • 깃허브
  • 공지사항

  • 인기 글

  • 태그

    런타임 에러
    cmd error
    해시
    오블완
    c++error
    leetcode
    LNK2001
    mysql error
    티스토리챌린지
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.1
BS Kwak
[JAVA] 클래스의 정의
상단으로

티스토리툴바