객체지향 언어란???
1. 객체지향언어의 역사
- 과학, 군사적 모의실험을 위해 컴퓨터를 이용한 가상세계를 구현하려는 노력으로부터 객체지향이론이 시작됨
- 1960년대 최초의 객체지향언어 Simula탄생
- 1980년대 절차방식의 프로그래밍의 한계를 객체지향방식으로 극복하려고 노력함.
- 1995년 말 Java탄생, 객체지향언어가 프로그래밍 언어의 주류가 됨.
2. 객체지향언어의 특징
- 기존의 프로그래밍언어와 크게 다르지 않다. (몇가지 규칙을 추가한 것뿐)
- 코드의 재사용성이 높다.
- 코드의 유지보수가 쉬워졌다.
- 신뢰성이 높은 프로그램의 개발을 가능하게 한다.
즉, 저에자와 메서드를 이용해서 데이터를 보호하고, 코드의 중복을 제거하여 코드의 불일치로 인한 오류를 방지할 수 있다.
3. 개인적인 객체지향언어 공부방법
- 처음에 용어와 개념이 많이 헷갈릴 수 있다. 따라서 같은 내용이더라도 반복해서 익숙해지는 것이 중요한 것 같다.
클래스와 객체 ??
1. 클래스와 객체의 정의와 용도
▶ 클래스의 정의 - 클래스란 객체를 정의해 놓은 것이다.
▶ 클래스의 용도 - 클래스는 객체를 생성하는데 사용된다.
▶ 객체의 정의 - 실제로 존재하는 것, 사물 또는 개념
▶ 객체의 용도 - 객체의 속성과 기능에 따라 다름
클래스와 객체의 관계를 예를 들자면 제품 설계도(클래스)와 제품(객체)로 비유할 수있다. 설계도만 잘 되어있으면 제품을 잘 만들 수 있고, 언제든지 설계도를 가져다 다시 만들 수 있다. 그리고 몇번이고 설계도를 사용할 수 있다.
2. 객체의 구성요소 - 속성과 기능
▶ 객체는 속성과 기능으로 이루어져 있다.
- 객체는 속성과 기능의 집합이며, 속성과 기능을 객체의 멤버라고 한다.
▶ 속성은 변수로, 기능은 메서드로 정의한다.
예를 들어 라디오의 속성과 기능보자면
속성 - 색상, 볼륨, 채널
기능 - 켜기, 끄기, 볼륨 증감, 채널 증감 등등이 있다.
이렇게 속성은 변수로, 기능은 메서드(함수)로 정의한다.
3. 인스턴스의 생성과 사용
▶인스턴스의 생성방법
클래스명 참조변수명;
참조변수명 = new 클래스명();
만약 위의 Radio 클래스의 참조변수를 생성한다면,
Radio radio; //객체를 다루기 위한 참조변수 선언
radio = new Radio(); //객체생성 후, 생성된 객체의 주소를 참조변수에 저장
이제 참조변수 radio를 통해서 Radio 클래스의 인스턴스를 사용 가능하다.
인스턴스와 객체랑 헷갈릴 수 있는데 일단은 같은 말이라고 보면된다.
▶인스턴스의 사용
참조변수 radio로 Radio 클래스에 접근하는 법은 .연산자를 통해서 접근할 수 있다.
예를 들면, radio.volume = 10; 을하면 멤버변수 volume에 10이 저장되고,
radio.volumeUP(); 메서드를 이용하면 1이 증가한 11이 저장된다.
'Foundation > - Java' 카테고리의 다른 글
생성자 (0) | 2017.07.28 |
---|---|
변수와 메서드 (0) | 2017.07.26 |
배열(array), String배열, 다차원배열 (1) | 2017.07.21 |
제어문 - 반복문(for, while, do-while) (0) | 2017.07.20 |
제어문 - 조건문(if,switch) (0) | 2017.07.19 |