객체 지향 프로그래밍은 특성과 기능이 잘 정의된 객체를 나타내는 클래스를 정의하는 것에 기반한다.Class객체를 만들기 위한 설계도객체가 가져야 할 변수(속성)와 메서드(동작)을 정의Object클래스를 기반으로 메모리에 할당된 것클래스에서 정의한 속성과 동작을 가짐클래
객체를 바라볼 때 2가지 중 하나를 취할 수 있다.internal : 클래스의 속성과 동작의 세부 사항external : 객체가 제공하는 서비스 로직, 객체가 다른 시스템과 어떻게 상호 작용을 하는가?외부적인 관점에서 object는 서비스를 제공하는 캡슐화된 엔티티라고
자바에서 static 수정자를 사용함으로써 static 메서드와 변수를 선언할 수 있다.static 메서드와 변수는 종종 class 메서드와 변수로 불리는데 이는 객체(인스턴스)의 소속이 아닌 class 소속의 메서드와 변수이기 때문이다. static 멤버들이 선언이
코드에서 Box class의 instance 변수 l, b, h가 있고 setDimension()의 지역 변수 l, b, h가 있다.setDimension()은 instance 변수 l, b, h에 지역 변수들의 값을 할당하려고 하고 있지만 컴파일러는 메서드 내에서 지
interface는 메서드와 변수들을 가진다. 그러나 interface에 선언된 메서드는 abstract 메서드다. 다시 말해, interface는 class가 무조건 해야 하는 것, 하지 말아야 하는 것을 정의한다. c언어에서 소스 파일과 헤더 파일로 예를 든다
array는 같은 type의 elements를 저장한다. 개념적인 부분에서는 c언어의 배열과 같다. 다만, 배열의 선언에서 조금의 차이를 보인다.변수 scores의 type을 int 으로 하고 있다. bracket은 다음 두 가지 경우 모두 가능하다.하지만, 첫 번째의
자바의 ArrayList는 collection framework의 일부로 ArrayList 사용 시에 java.utill 패키지를 import한다. 이 포스트는 array와 ArrayList의 차이점에 집중하여 ArrayList의 개념을 다뤄보려 한다.앞선 소개에서 자
현재 ConsConcept 객체에 a와 b 필드가 있다. getData()는 호출 시에 a와 b의 필드를 정하고 있어 new로 인스턴스화 후에 getData()를 호출하고 있다. 생성자는 2가지 프로세스를 1개로 할 수 있게 한다. 생성자 예시 생성자는 new를
상속은 말 그대로 자식 클래스가 부모를 상속받아 부모의 필드와 메서드를 사용 가능하게 하는 것이다. 부모 클래스는 superclass, base class라고도 하며, 자식 클래스는 subclass, derived class라고도 한다. 상속은 기존의 코드를 재사
프로그램 실행 시에 프로그램이 normal flow를 따라가지 않는 경우 프로그램이 종료되는 상황이 있다. 이를 프로그램 오류가 발생했다고 한다. 오류는 컴파일 에러와 런타임 에러 2가지로 크게 나뉜다. 여기서 자바는 런타임 에러를 Error와 Exception,