728x90 국비 학원 가서 개발새발40 국비학원 11일차) ArrayList 예습)예외,컬렉션,HashSet,Map 등 배열을 편하게 하기 위해! List 컬렉션 프레임웍, 표준화 Collection - List, Set Map은 공통 부분이 없어서, 컬렉션에 안 들어감 List 리스트에 받아서 순서대로 쓰겠다 ArrayList는 웹 접근 Map 검색(대량 데이터에는 ㄴㄴ) 채팅프로그램, ip번호와 아이디 List-ArrayList, LinkedList ArrayList-Vector 순서O 중복O 데이터 저장 공간 ) 배열 사용 Vector 멀티쓰레드 동기화 되어 있음 ArrayList는 동기화X - 동기화 메서드가 있긴 함Collection에 용량 변경하려면 복사 후 용량 큰 배열 만들어서 새로 붙여넣기 해야함 LinkedList-순서O 중복O ArrayList와 비슷하나 메모리 저장법이 다름(연결) 불연속적으로 존재하.. 2022. 10. 13. 국비학원 10일차) 추상클래스, 인터페이스 // 예습:Collection, List, Stack, Queue 타입변환, 다형성 부모타입으로 가면 객체 생성 가능 !! 부모타입으로 갈 때 - 업캐스팅 자식타입으로 갈 때 - 다운캐스팅 부모는 자식꺼를 못 써서 자식꺼 쓸 거면 다운캐스팅 - 형체가 없는 클래스, 구현되어 있지 않은 클래스, 상속 강제 스스로는 객체 생성 불가, 자식이 추상클래스의 메소드 구현 해줘야 함 추상메소드를 하나라도 갖고 있으면 추상 클래스 abstract 가 있으면 일반 클래스도 추상 클래스로 인식함 추상 메소드를 다 구현 한 자식 클래스로 객체를 생성한다 abstract method() 객체 생성 불가 객체 생성을 하려면 오버라이딩 해야 한다 JDBC - IO => 예외처리 실행 전에는 닫혀있다가 연다 열자마자 여러가지가 대기하고 있으면 ~ 오류남 그래서 예외처리로 막아줌 -> 요건 나중.. 2022. 10. 12. 예습)예외 처리(try-catch) - try-catch 예외 처리란? 정의 : 프로그램 실행 시 발생할 수 있는 예외 발생 대비 코드 작성 목적 : 프로그램의 비정상 종료를 막고, 정상 실행 상태를 유지시키기 위해 처리 못 한 예외는 JVM의 예외 처리기가 받아서 예외 원인 화면 출력해줘요! try { //예외 발생 가능성 있는 문장들 } catch(ExceptionA ea) { //ExceptionA라면 이렇게 처리 } catch(ExceptionB eb) { //ExceptionB라면 이렇게 처리 } 하나의 try 블럭 다음에는 여러 종류의 예외 처리가 가능하도록 1개 이상의 catch블럭 사용(제한 없음) 이 중, 발생한 예외 종류와 일치하는 단 한 개의 catch블럭만 수행하고 try-catch문을 빠져나옴 ㄴ 만약 catch에 .. 2022. 10. 10. Comparable 과 Comparator 차이(익명클래스 사용) 자바 문제를 풀다가 궁금한 점... compareTo 를 오버라이딩해서 내림차순 비교를 하라는 내용이었는데 compareTo 를 처음 들어봐서 찾아보다가 Comparable과 Comparator의 차이까지 타고 들어갔다 둘 다 인터페이스이고 객체를 비교하는 것은 같으나 Comparable -> 자기 자신과 들어온 객체 비교 Comparator -> 들어온 객체 두 개를 비교 @Override public int comparTo(T o) { return int값 } 오버라이딩 해서 이용 인터페이스라서 implements Comparable 해야 됨 자기 자신을 기준으로 삼아 매개 변수 객체를 비교해 대소 관계 파악 1. 조건문과 , == 사용 ㄴ> 1, 0, -1 반환 if(this.age>o.age) r.. 2022. 10. 10. 예습) 프로그램 오류(에러와 예외) 프로그램 오류는 세 가지로 나뉜다 - 컴파일 에러 : 컴파일 시에 발생 -> 이클립스가 잡아주는 에러 - 런타임 에러 : 실행 시에 발생 -> 문제 없는 거 같은데 발생 - 논리적 에러 : 실행은 되는데, 의도와 다르게 동작 -> ^^.... 컴파일이 잘 되었어도 실행 중 에러가 나서 잘못 된 결과를 얻거나 프로그램이 비정상적으로 종료 될 수 있음 런타임 에러는 두 가지로 나뉨 - 에러 (error) : 프로그램 코드로 수습 불가능한 심각한 오류 - 예외 (Exception) : 프로그램 코드로 수습 가능한 미약한 오류 에러 예) 메모리 부족(OutOfMemoryException) / 스택오버플로우(StackOverflow) Exception과 Error 자바는 오류를 클래스로 정의한다, 그래서 최고 조.. 2022. 10. 9. 예습) 디폴트 메서드와 스태틱 메서드(인터페이스) , 내부클래스... - 인터페이스에 수정이 필요하다면??? 원래는 인터페이스에 "추상메소드"만 선언 가능했음 그러나, 만약 인터페이스A가 수정되어 새 메소드를 만들어야하면???? ㄴ인터페이스A를 구현한 모든 클래스가 새 추상메소드를 구현시켜야함->넘복잡해짐 그래서 디폴트메서드라는 기능이 JDK뭐시기 버전부터 새로 추가됨 - deault 메소드는? 추상메소드의 기본적인 구현을 하는 메소드 : 추상 클래스와 달리 { 몸통 구현 } 해야하고, 앞에 default를 붙임(public은 기본으로 붙음, 생략 가능) ㄴ 추상메소드가 아니어서, 인터페이스를 구현한 클래스들을 ->상속 관계에서 조상 클래스에 새 메소드 추가한 거랑 다를 바 없음!! 단, 새로 추가 된 메소드가 기존 메소드와 이름이 중복되어 충돌할 수 있음(인터페이스를 후.. 2022. 10. 8. 이전 1 2 3 4 5 6 7 다음 728x90