728x90

JAVA Programming/JAVA 개념 정리 15

JAVA 캡슐화 정보은닉

JAVA 캡슐화 정보은닉 캡슐화란 데이터와 그와 관련된 연산 함수들을 하나의 객체로 묶는 것이다. 캡슐화를 하게 된다면, 보다 쉽고 안전한 사용이 가능하다. 캡슐화는 반드시 하나의 클래스로 만들어야 하는 것은 아니다. 캡슐화의 이점에 대해 설명하자면 A 클래스가 캡슐화가 잘 되어있다면, A 클래스가 변경되더라도, A와 연관된 나머지 클래스는 변경되지 않거나 변경되더라도 그 범위가 매우 최소화된다. 정보은닉 정보은닉은 객체 외부에 인터페이스만 드러내고 객체의 내부 구현은 숨기는 것이다. 멤버 변수 선언 시 private 접근제어 지정자를 이용한다. 메서드를 통한 안전한 접근만 허용한다. 지역변수와 매개변수는 해당 메서드 안에서만 사용이 가능하고, 메서드 시작 시 자동 할당되며 메서드 반환처리 과정에서 자동..

JAVA와 c++의 차이점

JAVA와 c++의 차이점 JAVA와 다르게 bool 데이터를 정의할 때 0또는 0이 아닌 모든 값으로 false/ true를 지정할 수 있다. c++ 블록 내 어디서든지 지역변수를 선언 할 수 있다. 사용할 변수 이름을 다소 명확하게 할 수 있지만, 선언된 변수를 일괄적으로 보기 어렵다. c보다 더 type checking이 엄격하게 일어나 인수가 없을 때 매개변수 리스트에 void는 선택사항이다. 반환값이 있다고 선언된 함수는 반드시 값을 반환해주어야하고 함수에 반환 자료형이 명시되지 않으면 int형이라고 가정된다. 오류의 종류 컴파일 시간 오류는 컴파일 과정에서 생긴 문법적인 오류이다. 논리 오류는 컴파일 성공 후 프로그램을 실행하면서 잘못된 결과를 내는 경우에 생기는 오류이다. 실행시간 오류는 프..

JAVA의 조상 C++

JAVA의 조상 C++ c 언어의 문법을 바탕으로 객체지향적 특징을 갖도록 확장시킨 것이다. 초창기에 c++은 c with classes로 불렸다. c++은 c언어 문법 체계를 계승하면서 cc언어만큼 효율적이고 높은 이식성을 지향한다. c 언어와의 호환성이 좋아 소스 레벨 차원에서 기존의 c 소스 코드를 그대로 가져다 사용 가능하다. 링크 레벨은 c 오브젝트와 라이브러리 링크가 가능하다. 단, 엄격한 type-checking을 수행해 런타임 오류를 줄여 디버깅 시 편리하게 해 주었다.. 프로그램 = 데이터 + 알고리즘으로 구성되어 있다. 데이터는 프로그램에서 사용하는 정보이고 알고리즘은 문제를 해결하는 절차들이다. 프로그래밍 기법 중에 문제 해결 방식에 따른 분류로 절차 지향형 프로그래밍과 객체지향형 프..

JAVA instance static 메서드 오버 로딩

JAVA instance static 메서드 오버 로딩 객체 지향 프로그래밍 현실에 존재하는 사물과 대상의 상태, 그리고 그에 따른 행동을 실체화시키는 형태의 프로그래밍이다. 객체 = 데이터 + 알고리즘이다. 하나의 프로그램을 상호 연결된 객체들의 집합으로 본다. 단순 절차보다 객체를 중시한다. 문제와 관련된 객체를 만들고 이 객체들 간의 메시지 교환으로 문제를 해결한다. 객체란 현실세계의 사물 또는 대상을 모방한 프로그램상의 object를 가리킨다. 일처리를 위해 객체가 갖는 ‘데이터’로 묘사된다. 객체가 제공하는 기능을 통해 외부세계와 상호작용한다. 추상적으로 표현되어 중요한 특징만을 뽑아낸다. 속성은 객체의 특성을 표현한다. 현재 객체의 상태 정보를 표현하는 정적인 성질이다. 행위는 객체 내부에서 ..

JAVA 응용 프로그램의 기본 구조

JAVA 응용 프로그램의 기본 구조 자바 프로그램은 클래스들로 구성된다. 보통 클래스는 하나 이상의 메서드들을 가진다. 메서드는 함수와 비슷한 개념으로 프로그램 문장들로 구성된다. 모든 메서드는 반드시 클래스 정의 안에 위치한다. 자바 응용 프로그램은 main() 메서드를 갖는 클래스로부터 시작된다. 실행시 JVM에 의해 호출되는 첫 번째 메서드이다.. 프로그램의 흐름을 통제한다. 클래스 클래스는 자바 프로그램을 구성하는 기본 단위이다. 보통 클래스 이름은 파일 이름과 일치해야 한다.. 대소문자를 구분한다. 보통 하나의 소스 파일에 하나의 클래스가 정의된다. 클래스의 구성은 C의 구조체와 유사하다. 변수뿐만 아니라 상수와 메서드도 포함된다. 클래스 = 멤버 필드(변수/상수) + 메서드(함수)이다. 자바 ..

728x90