아까설명해주신거에 차이가 궁금해요!
혹시 클래스 안에 들어가는 변수함수와 클래스 전 줄에 들어간다는 변수함수는 무슨차이이고 class는 왜필요하고 뜻은 무엇인가요
답변 2
0
클래스는 관련된 변수와 함수를 묶는 프로그램의 단위 입니다. 만약 어떤 클래스내에 변수, 함수가 선언된다면 그 변수, 함수를 클래스의 멤버라고 부릅니다. 그런데 변수, 함수중 어떤 클래스와 관련이 없다면 클래스 밖에 선언할 수 있습니다.
0
안녕하세요, 인프런 AI 인턴입니다. hyunjun님.
클래스 내부에 선언되는 변수와 메소드(함수) 그리고 클래스 외부에 선언되는 경우, 그리고 클래스 자체의 개념에 대해 간단히 설명드리겠습니다.
클래스와 객체:
- 클래스는 객체를 생성하기 위한 설계도입니다. 객체라는 것은 이 클래스를 바탕으로 만들어진 실체를 말하며, 프로그램에서 데이터를 저장하고 조작하는 데 사용됩니다.
- 클래스는 여러 개의 멤버(변수와 함수)를 가질 수 있습니다.
- 클래스는 객체를 생성하기 위한 설계도입니다. 객체라는 것은 이 클래스를 바탕으로 만들어진 실체를 말하며, 프로그램에서 데이터를 저장하고 조작하는 데 사용됩니다.
클래스 내부 변수와 함수:
- 클래스 내부에 선언된 변수는 ‘멤버 변수’라고 하며, 해당 객체의 상태(state)를 저장합니다.
- 클래스 내부에 선언된 함수는 ‘메소드’라고 합니다. 이들은 객체가 가진 데이터를 처리하거나 객체의 동작을 정의합니다.
- 클래스 내부에 선언된 변수는 ‘멤버 변수’라고 하며, 해당 객체의 상태(state)를 저장합니다.
클래스와 전역(또는 외부) 변수 및 함수:
- 클래스 외부에 선언되는 변수나 함수는 특정 객체의 멤버가 아니기 때문에 전역 변수나 전역 함수라고 부를 수 있습니다. 이러한 것들은 싱글톤 객체나 컴패니언 객체에서 관리될 수도 있지만, 객체 지향적인 관점에서는 주로 피하는 것이 좋습니다.
- 전역 변수는 프로그램이 실행되는 동안 어느 곳에서든 참조할 수 있으며, 클래스 내부 변수에 비해 응용이 넓지 않지만 더 쉽게 접근할 수 있습니다.
- 클래스 외부에 선언되는 변수나 함수는 특정 객체의 멤버가 아니기 때문에 전역 변수나 전역 함수라고 부를 수 있습니다. 이러한 것들은 싱글톤 객체나 컴패니언 객체에서 관리될 수도 있지만, 객체 지향적인 관점에서는 주로 피하는 것이 좋습니다.
클래스의 필요성:
- 클래스를 사용하는 주된 이유는 데이터와 해당 데이터를 다루는 코드(메소드)를 함께 묶어 관리하기 위함입니다. 이는 코드의 가독성과 재사용성을 높이는 데 매우 유리합니다.
- 또 다른 이유는 추상화, 캡슐화 등을 지원함으로써 프로그래밍을 더 명확하고 안정적으로 할 수 있도록 도와줍니다.
- 클래스를 사용하는 주된 이유는 데이터와 해당 데이터를 다루는 코드(메소드)를 함께 묶어 관리하기 위함입니다. 이는 코드의 가독성과 재사용성을 높이는 데 매우 유리합니다.
보다 심층적인 개념은 학습하시면서 경험과 함께 쌓이게 되며, 실제로 적용해 봄으로써 더 명확히 이해하실 수 있습니다. 관련 질문에 대한 답변이 이전에 이곳에 제공된 적이 있으니 참고해 보시길 바랍니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
Jib 빌드가 83%에서 멈추는 문제 해결(windows 사용자)
1
12
0
미션 제출 방식 건의
0
30
0
트랜잭션 내 Redis I/O 에 대한 궁금한점
1
31
1
미션 진행 방식에 대한 질문입니다.
0
50
1
파킹 페이지와 대기열 큐 질문입니다.
0
46
1
소리
0
37
1
조회 메서드에서 @Transactional(readOnly=true) 질문
1
41
1
"폴더를 찾을 수 없습니다." 라는 응답만 계속 나옵니다.
0
44
1
해당 결제 부분을 포폴에서 테스트 api를 적용에 대한 궁금증
1
46
1
소스파일
0
44
1
11강 [실습] Docker로 MySQL1 분만에 실행하기
0
87
2
11강 [실습] Docker로 MySQL1 분만에 실행하기
0
64
2
구현 방법에 대한 문의
0
81
2
15분 35초즈음 나오는 500개 단위로 쪼개는 경우 스레드 질문
0
40
1
MSA 통신방식에 대해서 질문 있습니다.
0
54
1
앱 캠페인 중복 트래픽 문제 없는걸까요?
0
75
2
안녕하세요 질문있습니다.!
0
79
2
@Modifying에 관하여
1
71
1
Issuance 테이블에 status, couponId 인덱스가 꼭 필요할까요?
2
80
1
보상형광고 노출율이 말도 안되게 낮습니다...
0
117
1
모듈
0
119
1
java.util
0
105
1
저 엄청 초보인데
0
165
3
val로 선언한 List는 변경이 가능한가요?
1
284
1





