본문 바로가기

[JAVA] List 순차적으로 삽입돼! sub가 더 길면 list 길이가 더 길어짐. 왜냐하면 가변적인 길이라서! (+) iterator() : Iterator 객체를 반환 ArrayList는 가변길이이므로 list.addAll(sub) 을 하게 되면 list의 길이가 더 늘어나고 추가돼!!! if(list.isEmpty()){ }
[JAVA] Generic 명시적 형 변환이 필요 없다. 이렇게 type을 명시해주면!
[JAVA] 날짜 API calendar 클래스는 추상클래스라서 객체를 생성하여 사용할 수 없다. 근데 calendar 클래스 내부에 getInstance 메소드를 사용하여 구현할 수 있다. iamjiyoo@naver.com / gmail.com Calendar 사용법! day 에 c.get(Calendar.DAY_OF_MONTH) 로 해도 가능하다. int getActualMaximum -> 그 달의 총일수와 같은 것을 출력함 여기서 calendarField의 값은 Calendar.DAY_OF_MONTH 가장 많이 사용하는 날짜 데이터포맷 M 하나는 한자리
[JAVA] 예외처리 환경 설정에서 발생하는 문제를 에러라고 하고 프로그래밍 상에서 발생하는 문제를 예외라고 한다. try 안에 문장이 남아 있어도 예외가 발생하면 catch로 갑니다. break 만났음에도 불구하고 finally body를 실행한다. 파일 입출력 같은 경우 try/catch를 개발자에게 요구하는 것을 CHECKED EXCEPTION 이라고 함. finally 내부에도 try catch 문이 올 수 있다.
[JAVA] final 키워드 final 키워드가 붙은 메소드는 오버라이딩이 불가능. final 키워드가 붙은 클래스는 수퍼 클래스로 만들 수 없다.
[JAVA] 인터페이스 인터페이스 ? 다중 상속, 추상 메소드들의 집합 복합기가 스캐너, 팩스, 프린터를 모두 상속받고자 함. 기능들을 모아놓은 집합 - 인터페이스 인터페이스는 인스턴스 객체를 만드는 것이 목적이 아니다. 클래스와 클래스의 상속은 Generalization (실선) , 클래스와 인터페이스는 Realization 인터페이스는 추상 메소드와 상수 형태 ( public static final 형태로 가능하다 ) 생략되어 있음 ( public static final ) 인터페이스는 접근 제한자를 사용하지 않으면 무조건 public이다. 클래스와 멤버 변수는 접근 제한자가 명시하지 않으면 default 임. 하나의 클래스에 인터페이스 키워드 (implements) 클래스 상속 (extends) 함께 사용이 가능하다. ,..
[JAVA] 객체의 형변환 - 대입 연산자를 기준으로 왼쪽과 오른쪽 변수의 자료형이 서로 달랐을 경우 객체 형변환이 발생한다. 그런데 무조건 왼쪽과 오른쪽의 관계가 반드시 상속 관계여야 한다. A obj = new B(); → 에러 발생 하지만! Class B extends A { } 상속 관계인 경우 에러가 발생하지 않음 원래는 Printer p = (Printer) (new LGPrinter()); 이렇게 해주는게 맞는데 오른쪽이 하위 클래스인 경우 (Printer) 을 생략이 가능함. 왜 ? class A{ } class B extends A{ // super() 생략 } new B(); → 하는 순간 A의 공간이 만들어지고, B의 공간이 만들어지고.. 그리고 이 전체를 B로 인식 이미 new B(); 라는 공간에는 A 공간..
[JAVA] 추상클래스 (abstract) 일반적으로 Interface - 추상클래스 ← 구현클래스 와 같은 구조로 프로그램을 작성함 (상속) (상속) ** 추상클래스 → 작업에 대한 표준화 메소드를 표준으로 만드는 것 강아지 , 고양이 , 햄스터 ?? ex) 먹이를 준다, 목욕을 시킨다 등등 하나 이상의 추상 메소드를 가진 클래스를 추상 클래스 추상 메소드란 ? 구체적인 내용은 없고, 기능(이름)만 명시한 메소드! 메소드의 선언부만 있고 괄호가 없다. 행위에 대한 기술이 없다. 어떤 작업을 할지 모른다. abstract 라는 키워드는 멤버 변수에 붙을 수 없다!!!!!!!!!!! 클래스와 메소드에만 abstract 라는 키워드를 붙일 수 있다. (추상클래스, 추상메소드) 그러므로 추상 클래스를 이용해서는 인스턴스 객체를 만들 수 없다. 추상 클..