목록분류 전체보기 (69)
개발자 항해
3) 인터페이스 장점 - 상속 관계가 없는 객체끼리의 관계 부여하여 다형성 활용가능 ① 상속 관계가 아닐 경우 불편한 예 HandPhone 클래스와 DigitalCamera는 특정 클래스와 상속관계가 아니므로 두 클래스의 유일한 공통 클래스는 Object 클래스 뿐이다. 따라서, 업캐스팅을 통해 다형성을 적용하려면 Object 타입으로 업캐스팅해야 하며 업캐스팅 후에는 두 객체의 고유 멤버 접근이 불가능하므로 다시 다운캐스팅을 통해 각 객체의 고유 멤버에 접근해야한다. ② 인터페이스를 통해 상속관계가 아닌 클래스끼리 상속 관계 부여 HandPhone2 클래스와 DigitalCamera2는 특정 클래스와 상속 관계가 아니지만 두 클래스와 유일한 공통클래스는 Object 클래스 외에 Charable 인터페이..
인터페이스(interface)란? 모든 메서드가 추상메서드로만 이루어진 일종의 기본 설계도로 구현된 코드가 없는것이 특징이다. 그래서 인터페이스로 인스턴스를 생성할수도 없다. 그렇다면 인터페이스는 왜 쓰는것일까? 1. 인터페이스 필요성( 장점 ) 1) 구현의 강제성 부여 (= 통일성) - 인터페이스를 상속받은 서브클래스 들은 반드시 추상메서드를 구현해야한다. (이때 메서드 이름이 통일된다.) 2) 모듈 교체 용이 (= 무기교체, C 타입 usb) - 부모타입인 인터페이스 타입을 변수로 사용하여 각 서브 클래스를 다룰경우 특정 서브클래스가 또 추가되더라도 공통 코드의 변경이 필요없이 새로운 클래스만 정의하게 되면 언제든지 인스턴스 교체를 통해 서브클래스를 다룰수있다. ex) JDBC 인터페이스(Connec..
추상 메서드란? 1) 메서드 구현부(= 바디{})가 없는 메서드 (미완성 메서드) 2) 메서드의 동작을 기술하는 구현부가 없는 추상메서드는 실행할 수 있는 코드가 없으므로 외부로부터 호출하면 안된다. => 따라서, 추상 메서드를 갖는 클래스는 반드시 추상클래스로 선언되어야 한다. 3) 메서드 정의시 선언부의 접근제한자 뒤에 abstract 키워드를 붙여 정의 => abstract 키워드가 붙은 메서드는 추상메서드이므로 바디{}를 가질수 없다. (따라서, 메서드 선언부 마지막에 바디{} 대신 세미콜론(;)으로 끝냄) 4) 서브클래스에서 반드시 오버라이딩 하도록 강제성을 부여해야하는 메서드는 슈퍼클래스에서 추상메서드로 선언하면 서브 클래스가 무조건 오버라이딩 필수다. => 강제성을 통해 업캐스팅 시 코드의 ..
1. 변환 함수 1) DATE_FORMAT( 날짜, 형식 ) : 날짜를 형식에 맞게 출력하는 함수 형식 설명 %Y 년도를 4자리 숫자로 표현 %y 년도를 2자리 숫자로 표현 %M 월을 영문 풀네임으로 표현 %b 월을 영문 약자로 표현 %m 월을 2자리 숫자로 표현 %c 월을 2자리 숫자로 표현하되 10보다 작을 경우 한자리로 표현 %d 일을 2자리 숫자로 표현 %e 일을 2자리 숫자로 표현하되 10보다 작을 경우 한자리로 표현 %W 요일을 영문 풀네임으로 표현 %a 요일을 영문 약자로 표현 %H 시간을 24시간으로 표현 %h 시간을 12시간으로 표현 %k 시간을 24시간으로 표현하되 10보다 작을 경우 한자리로 표현 %l 시간을 12시간으로 표현하되 10보다 작을 경우 한자리로 표현 %i 분을 2자리 숫..
1. 숫자함수 - 반올림, 버림, 올림 관련 함수 1) ROUND(숫자, 반올림할 자리) : 숫자를 반올림할 자리까지 반올림을 해주는 함수 반올림할 자리 생략시 일의 자리로 반올림함 2) TRUNCATE(숫자, 버림할 자리) : 숫자를 버림할 자리까지 남기고 버림을 해주는 함수 3) CEIL(숫자) : 숫자보다 크거나 같은 최소의 정수를 반환해 주는 함수 일의 자리로 올림을 해주는 함수 4) FLOOR(숫자) : 숫자보다 작거나 같은 최소의 정수를 반환해 주는 함수 일의 자리까지 버림을 해주는 함수 5) MOD(숫자1, 숫자2) : 숫자1을 숫자2로 나눈 나머지를 반환해 주는 함수 6) ABS(숫자) : 숫자의 절대 값을 반환해 주는 함수 7) POWER(숫자, 제곱값) , POW(숫자, 제곱값) : 숫..
함수란? 인수를 받아들여서 정해진 조작 후 반드시 하나의 결과값을 반환한다. SQL 함수 유형 단일행 함수, 다중행함수 단일행 함수 유형 문자함수, 숫자함수, 날짜함수, 변환함수, 제어흐름함수, 시스템정보함수 등 1. 문자 함수 - MySQL에서는 단순한 함수 결과나 계산 결과를 출력하는 경우 즉, 접근해야하는 테이블이없는 출력구문인 결우 select절만 작성할수 있다. - 출력 결과에 BLOB로 표시되는 경우 (Workbench의 버그) 오른쪽 마우스 클릭후 [ Open Value in Viewer ] 선택 후 [ Text ]탭에 들어가면 정상적인 출력 결과를 확인할 수 있다. 1) ASCll (아스키코드) : 문자의 아스키 코드값을 반환해 주는 함수 2) CHAR (숫자) : 숫자의 아스키 코드값을 ..
Group by 절 이란? 테이블 안에서 또다시 그룹화를 시킬때 사용한다. [ 문법 ] select 컬럼1, 컬럼2, 컬럼3... from 테이블명 [ where 조건문 ] [ group by 그릅화할 컬럼명 ] [ order by 정렬할 컬럼명 ASC | DESC ]; ★ group by 절과 그룹함수 사용시 주의사항(반드시 지켜야하는 문법) => select 절의 컬럼 리스트 중 그룹함수에 포함된 컬럼과 그룹함수에 포함되지 않은 컬럼이 함께 출력되기 위해서는 그룹함수에 포함되지 않은 컬럼은 반드시 group by절에 포함되어 있어야 문법 오류가 발생하지 않는다. (역은 성립하지 않아도 된다!!) group by 절의 컬럼이 반드시 select 절에 포함될 필요는 없다. 예제를 살펴보자 1. emplo..