목록Computer Science/Java Programming (13)
Code&Data Insights
[ Exception ]- Exception(예외)란 프로그램이 핸들링 할 수 있는 오류를 말한다. - When something does not go as planned (프로그램이 원하는 방향으로 작동하지 않을때 사용) - Exception(예외처리) 하는 방법 : - 오류, 그 중 런타임 에러는 Error와 Exception으로 나뉜다. => 오류의 경우 컴파일에러/런타임에러/논리적에러로 나뉜다. 예외처리를 할 수 있는 에러는 런타임에러, 그 중에서 exception만이 가능하다. => Error의 경우에는 예외처리가 불가능하다. => (ex) OutOfMemory와 같은 심각한 에러는 예외처리로 다룰 수 없다 - Exception의 종류 : checked / unchecked excepti..
[ Static Variables & Static Methods ] 계속 헷갈렸던 Static, What does "Static" mean? => 자바에서는 객체를 필요할 때마다 메모리에 올려 사용한다. Static은 프로그램의 객체 생성 이전 JVM에 의해 클래스가 load되는 순간에 자동으로 메모리에 올라간다. => 객체 생성 이전에 이미 로딩되는 메모리이기 때문에, non-static 영역(객체 영역)으로는 접근이 불가능하다. Variables(변수)에는 instance variables(iv)과 class variables(cv)- static 이 존재한다. => instance variables은 개별 속성(객체마다 다르게 가..
[ Java Programming ] StringBuffer class & StringBuilder class - java.lang.StringBuffer extends (or inherits from) Object class - String 대신 String buffer class를 사용하는 이유? => 문자열 처리는 보통 String이 하지만, 기존 문자열에서 추가/삭제를 하는 경우 기존 메모리에 추가되는 것이 아니라 새로운 메모리에 더해진 문자열의 영역을 잡고 주소가 생기기 때문에 이러한 추가/삭제가 빈번한 경우 메모리에 부담이 커진다. => String(불변의 속성) vs StringBuffer(가변의 속성) - append() method의 경우에는 모든..
Interface와 Abstract의 차이점 [ The difference between Interface and Abstract Class ] (1) Accessibility of Data Members 인터페이스에서는 상수만 선언가능 , 반면, 추상클래스는 concrete class와 같이 fields 선언 가능. (2) Keywords 인터페이스에서는 implements를 쓰지만, 추상클래스에서는 extends를 사용한다. ( 하지만, 인터페이스가 다른 인터페이스(one or more)를 상속할 경우에는 extends 키워드를 사용한다. ) (3) Access Modifier 인터페이스는 fields, methods 모두 다 public! 추상클래스는 public,protected methods를 ..
[ Linked List ] - 자바의 Collection Framework에 포함. - This class is an implementation of the LinkedList data structure which is a linear data structure where the elements are not stored in contiguous locations and every element is a separate object with a data part and address part. - 각 element들(node)은 pointer와 address로 연결되어져 있다. - 각 element들의 위치 파악이 어려워 불연속적이다. ( 접근성 ↓) [ Linked List vs ArrayList ]..
- Form of a recursive algorithms * Recursive Methods - A method that calls itself is known as a recursive method - Every recursive method must contain one or more : Base Cases, each solving the problem directly : Recursive Cases, each reducing the problem at hand to simpler problems of the same type - A recursive call must : must progress towards the base case : be conditional; otherwise, it lea..
[ Inner Class ] : Inner classes are classes defined within other classes - The class that includes the inner class is called the outer class - There is no particular location where the definition of the inner class (or classes) must be placed within the outer class - Placing it first or last, however, will guarantee that it is easy to find An inner class definition is a member of the outer class..
[ Interface ] : 보안을 위해 interface를 사용한다. ( 특정한 디테일을 숨기고, object의 중요한 디테일만을 보여준다 ) - 인터페이스는 인터페이스로만 상속받을 수 있으며, 클래스와 달리 다중상속을 받는 것이 가능하다 - 추상( abstract) 클래스와 같이 인터페이스는 objects를 생성하는데 쓰일 수 없다. - interface 메소드는 body가 존재하지 X, body는 implement class에서 작성되어진다. - On implementation of an interface, you must override all of its methods - Interface methods are by default, abstract and public - Interface att..