본문으로 건너뛰기

TIL

103
Java EcoTILJava programming

자바 객체지향의 원리와 이해 #2

객체지향의 4대 특성에 대해서 알아본다. 이미 알고있는 내용이지만, 책에서는 T메모리 도식을 직접 보여줌으로써 추상화, 다형성, 상속, 캡술화가 각 메모리 영역에 어떤 작용을 하는지 알 수 있었다.
Java EcoTILJava programming

자바 객체지향의 원리와 이해 #1

서점에서 최신 트랜드?가 반영된 OOP를 찾다가 이 책에서 그것을 언급하고있고, 또한 자바 문법의 전반적인 경험을 맛본 나로써 알맞은 난이도의 책이라고 생각했다
Java EcoTILSpring Framework

스프링5 시작하기 전에

자바를 개발하기 위한 SDK다. JRE; 자바 런타임을 포함하고 있다. 13,14를 깔아도 하위버전을 지원한다. Maven과 Gradle의 차이 ( 메이븐은 ) ( 아티팩트에 대한 설명 ) ( 그레이들은 ) 기본 코드 스타일 이외에 임의의 사용자 환경을 지정할 수 있다. 지정된 코드 스타일을 소스 저장시 자동으로 포매팅 해준다. 블록의 열리고 닫히는 단위를 임의의 색깔로 표시해준다.
FundamentalTILData structure

LinkedList - Single

1) 일반적으로 배열을 사용하여 데이털르 순차적으로 저장하고, 나열할 수 있다. 2) 배열을 사용하는 경우 메모리 공간이 불필요하게 낭비 될 수 있다. 배열로 만들었으므로 특정 위치 원소에 즉시 접근 가능하다. 데이터가 들어갈 공간을 미리 메모리에 할당해야 하는 단점이 있다. 원하는 위치로 삽입이나 삭제가 비효율적이다. -> 주소를 당기고 밀어야하기 때문에. 연결 리스트는 구조체와 포인터를 함께 사용하여 구현한다. 연결 리스트는 리스트의 중간 지점에 노드를 추가하거나 삭제할 수 있어야 한다. 필요할 때마다 메모리 공간을 할당 받는다
FundamentalTILOOP

캡슐화와 데이터 은닉

객체 사용에 해당되지 않는 세부 정보는 다른 모든 객체로부터 숨겨야 한다. 캡슐화는 객체에 속성과 행위가 같이 포함된다는 사실로 정의된다. 데이터 은닉은 캡슐화의 중요한 일부이다. 예를들어, 어떤 숫자의 제곱을 계산하는 객체가 결과를 얻기 위한 인터페이스를 제공해야 한다고 하자. 그러나 요청하는 객체에서 제곱을 계산하기 위해 사용하는 내부 속성 및 알고리즘을 사용하게 할 필요는 없다. 캡슐화를 염두에 두고 설계해야 클래스가 견고하다. 인터페이스는 객체간 의사소통하는 근본적인 방법을 정의한다. 클래스를 설계할 때마다 객체를 올바른 인
FundamentalTILOOP

객체지향과 클래스

간단히 말해서 클래스는 객체에 대한 처사진이다 객체의 인스턴스를 만들 때 객체를 구성하는 기초로 클래스를 사용한다. 클래스와 객체를 설명하려고 하는 일은 닭이 먼저냐 계란이 먼저냐 같은 딜레마이다. 객체란 용어를 사용하지 않고 클래스를 설명하기 어렵고 그 반대도 마찬가지이다. 예를 들어, 어느 개인의 자전거는 객체이다. 그러나 누군가 자전거를 만들기 위한 청사진 (즉, 클래스)을 만들어야만 했다. 닭이 먼저냐 계한이 먼저냐는 딜레마와 달리 OO 소프트웨어에서 무엇이 먼저인지는 알고 있는데, 그것은 클래스이다. 클래스가 없이는 객체의
Java EcoTILJava programming

this가 필요한 상황

this는 클래스 안에서 인스턴스 자기 자신을 바라보는 지시자다. 대부분의 상황에서 생략할 수 있지만 몇가지 필요한 상황이 있는데 예시와 함께 정리해보았다.