
이제 자바가 끝나가요. 안돼에에ㅔ~~ 나는 감자라구요ㅠ 클래스 이후부터 좀 정신이 혼미해졌는데, 나같은 사람 무조건 있을거니까. 왜 배우는 지 먼저 설명할게요. (GPT가요ㅎㅎ)
➡️ 복붙하지 않고 물려받는 것
예를 들어:
“동물”이라는 클래스가 있어. (걷기, 먹기 기능)
“강아지”, “고양이”는 각각 다르지만, 걷고 먹는 건 똑같지?
그럼 “동물” 클래스를 물려받아서 강아지, 고양이 만들면 중복 코드 안 써도 됨.
📌 상속은 코드 절약 + 관리 편하게!
➡️ "이 버튼을 누르면 작동해!" 라고 약속해 놓는 것
예를 들어:
리모컨은 TV든 에어컨이든 전원 버튼 누르면 켜져야 해.
전자제품들이 약속된 버튼 기능만 맞추면, 리모컨 하나로 조작 가능.
📌 인터페이스는 서로 다른 것들을 똑같이 조작할 수 있게 해줘.
➡️ 인형 안에 들어있는 작은 인형
예를 들어:
버튼 클래스 안에 "눌렀을 때 실행되는 코드"를 넣는 거야.
버튼과 실행코드가 너무 관련 있으면 같이 묶는 게 보기 좋지.
📌 코드가 더 깔끔하고 논리적이게 만들어줘.
➡️ 문제 생겨도 프로그램 안 죽게 만들기
예를 들어:
계산기에서 0으로 나누면 앱이 터짐 😱
그런데 “0으로 나누면 안돼요!” 라고 알려주고 계속 실행되게 만들 수 있어.
📌 안정성 있는 프로그램 만들 수 있음!
➡️ 자바가 미리 만들어둔 도구함
예를 들어:
String은 글자 처리하는 도구
Math는 계산하는 도구
Scanner는 입력 받는 도구
📌 자바는 이미 엄청 좋은 도구들을 다 만들어 놨어. 우리는 가져다 쓰기만 하면 돼!
➡️ 동시에 여러 일 하기
예를 들어:
게임하면서 음악도 틀고, 채팅도 해야지!
하나씩 하면 너무 느림. → 스레드 쓰면 동시에 가능
📌 스마트폰처럼 여러 기능을 동시에 실행할 수 있게 해줌.
➡️ 자료를 잘 담아두는 상자들
예를 들어:
사람 목록 → 순서 있는 박스(List)
중복 없이 태그 저장 → 중복 안 되는 상자(Set)
이름 → 전화번호 → Map
📌 자료를 효율적으로 저장/찾기/정리하는 기술이야.
이제야 왜 이런 걸 배우는 지, 정리가 됩니다. 수업에 집중해볼게요.