목록객체 (6)
개발 무지렁이
DOM(Document Object Model) 웹페이지가 로드될 때, 브라우저가 생성하는 문서객체모델 (element기반, Tree형태) (문서의 구조화된 표현을 제공) WHY? DOM을 기준으로 element를 찾아서, 추가, 속성추가, 제거 등 재구성할 수 있다 DOM에 결과 반영 및 렌더링 BOM(Browser Object Model) 원래 브라우저(Browser)가 내장하고 있는 객체 (window, document, location, history, screen, navigator)
객체지향언어의 목적은 무엇일까? 재사용성 (공통의 속성 및 기능 구현, and 상속) 이미 객체들을 만들어서 제공 (필요로 하는 것들을) 객체의 형태로 만들어 놓으면 상속받아 가져다 쓰면 된다. ⚠️ 상속 주의 ⚠️ (1) 부모를 자식보다 큰 개념으로 봐야한다.(양적개념x) (2) 재정의된 method는 부모타입일지라도 자식 method가 호출된다.** (3) 접근제한자는 부모제한자보다 같거나 커야한다. (4) private 붙인 필드와 메서드는 상속이 안된다. (5) 생성자는 상속이 안된다.
값변경에 잘쓰이지 않는 String public class StringTest { public static void main(String[] args) { String str = "안녕하세요"; System.out.println(str); // 안녕하세요 str = "Hello"; System.out.println(str); // Hello } } ❓ 수정이 잘되는데 왜 String은 값변경에 쓰이지 않을까? : String은 객체이다, 원래는 String str = new String("안녕하세요");의 축약형이 위 코드이다. 이 코드가 실행되면 String 객체가 만들어지고, str="Hello";로 바꿨을 때 이 객체에 있는 값이 바뀌는 것이 아니라, 새로운 객체가 만들어지고 str변수가 참조하는 ..
static (1) 객체 생성 여부와 관계없이 메모리를 미리 할당받는 애들 (2) 같은 클래스들이 공유하는 영역, 공유변수( 인스턴스 변수) 🚩 위치 - class 앞에 올 수 없다 (단, inner class에는 가능) - 전역변수 앞에 사용가능 (class이름.변수이름으로 호출, ex) System.in, System.out) - method 앞에 사용가능 (class이름.변수이름으로 호출, 단, this 키워드 사용x, 객체 생성 없이 호출하니까) ⚠️ static method는 static method, 변수만 호출 가능하다. 🕋 class [본사] 🕋🧑🔧 static 필드/메서드 [본사직원] 🏬 객체 [지사] 🏬🧑🔧 객체 메서드 [지사직원] - static(본사직원)은 static(본사직원)..
인터페이스인 Comparable Comparable에는 compareTo(T o) 메서드가 선언되어 있다. 이 메서드는 '자기자신'과 '매개변수 객체'를 비교한다. ❓ 인터페이스 : 추상성 100%인 클래스를 말한다. (단, 인터페이스 내에 선언된 메서드를 반드시 구현해야한다.) compareTo는 int를 반환한다 - '양수'를 반환: 자기자신이 매개변수 객체보다 크다 - '0'을 반환: 자기자신이 매개변수 객체와 같다 - '음수'를 반환: 자기자신이 매개변수 객체보다 작다Comparable 활용 예제 🎯 우선순위 큐에서 Node클래스의 compareTo을 기준으로 삼아 자동정렬한다. PriorityQueue pq = new PriorityQueue(); cl..
IoC 컨테이너(Inversion of Control Container) Spring Framework로 객체를 생성하고, 의존성까지 관리하는 컨테이너를 말한다. ⭐. 객체의 생명주기를 관리 ❓ 의존성 주입 (Dependency Injection) :외부에서 생성된 객체를 주입받는 것을 의존성 주입이라 한다. (객체 내부에서 다른 객체를 생성하는 것은 강한 결합을 만드는 구조이다.) :IoC 원칙하에 객체간 결합도를 낮추고, 유지보수가 좋은 코드를 만들어준다. 1. 생성자 주입 ** (생성자에 @Autowired를 붙여 객체를 주입) - 간결한 코드 작성 가능 - final 변수의 생성자를 대신 만들어주는 @RequiredArgsConstructor - 생성자가 하나일때 @Autowired를 생략 가능 ..