■ 언어
C언어 .c (필수) 하드웨어
Python 주식 분석, 웹, AI, 딥러닝
C++ .cpp C와 동일, 클래스
C#
Java
■ 클래스
프로그래밍 관점에서 수많은 사물을 객체(Object)로 본다.
객체 지향 프로그래밍 OOP
사람이라는 객체가 있다.
객체는 어떠한 속성과 무엇을 할 수 있는 행동으로 구성된다.
사람 객체 --> 속성 : 머리색 (노란색) 피부색 (갈색) 눈동자 (파란색) ~~이다.
--> 메소드 : 행동, 스트레칭, 조식먹는다, 걷다, 뛴다 등등
축구게임 프로그램
축구 선수
- 속성 : 스타킹(빨간색), 운동화색(파란색), 셔츠(빨간색)
- 메소드 : 스프린트, 헤더, 걷다.
병원 프로그램
환자
- 속성 : 두통
- 메소드 : 약을 삼킨다.
학사 관리 프로그램
학생
- 속성 : 가방(검정색)
- 메소드 : 공부한다, 암기한다, 실습한다
■ 추상화(은닉화)
현실의 객체(사람)을 완벽하게 재현하기 위해서는 수많은 것들을 알아야 한다.
하지만 프로그래밍에서는 모두 알 필요없다.
클래스 : 와플틀, 붕어빵틀과 같이 반죽을 넣고 찍어내듯이 제품을 만들어낸다.
■ 용어 정리
클래스 제품의 설계도 (설명서 포함)
객체 설계도로 만든 제품
속성 클래스 안의 변수, 멤버변수
메소드 클래스 안의 함수
생성자 객체를 만들 때 실행되는 함수이며, 멤버변수 초기화
인스턴스 메모리에 살아있는 객체
예)와플 틀( 클래스 )에서 만들어진 와플( 객체 )이지만 반죽( 인수 )에 따라서
다른 맛(딸기맛,쵸코맛,바닐라맛= 속성 )의 와플( 인스턴스 )이 생성된다.
와플은 와플툴에서 만들어진 인스턴스라고도 표현한다.
예)실습을 할 수 있도록 준비가 되어있는 강의실(클래스)
실습중인 학생(인스턴스)
키보드 입력, 마우스, 전원켜는 방법등을 PPT로써 컴퓨터 사용하는 방법을 오리엔테이션
==> __init__method(초기화 함수)
■ 클래스 상속
또 다른 클래스를 생성할 때 기존의 클래스를 그대로 물려받고 신규 기능만 추가하고자 할 때 사용
TV 온/오프 채널 전환
IPtv 유튜브 검색, 영화검색, 지난 방송보기
■ 클래스 오버라이딩 (Overriding 덮어쓰기)
부모 클래스에 있는 메소드를 동일한 이름이지만 다른 기능으로 재정의하는 것