Java(16)
-
[Java] StringBuffer
오늘은 StringBuffer 클래스가 무엇인지 알아보자.StringBufferString클래스는 인스턴스를 생성할 때 지정된 문자열을 변경할 수 없기 때문에 문자열 결합시 계속해서 새로운 인스턴스를 생성한다.하지만 StringBuffer클래스는 변경이 가능하다.내부적으로 문자열 편집을 위한 버퍼(buffer)를 가지고 있으며,StringBuffer인스턴스를 생성할 때 그 크기를 지정할 수 있다.크기를 지정할 때 나중에 편집을 고려하여 버퍼의 길이를 충분히 잡아주는 것이 좋다.버퍼의 길이를 넘어서게 되면 버퍼의 길이를 늘려주는 작업을 추가적으로 해야 하기 때문이다. StringBuffer의 생성자StringBuffer클래스의 인스턴스를 생성하면 동시에 char형 배열이 생성된다.이 배열은 이후 문자열을 ..
-
[Java] 상속 (extends)
오늘은 자바의 상속에 대해 알아보고, 상속은 어떠한 장점이 있는지 코드를 작성하며 배워볼거다. Java 상속 시 유의할 점1. 부모 클래스에서 private 필드나 메서드는 상속이 안된다.2. 다중 상속이 안된다. (인터페이스 에서는 가능) 슈퍼 클래스 & 서브 클래스슈퍼 클래스 = 부모 클래스 서브 클래스 = 자식 클래스부모의 속성과 기능을 그대로 물려받는다.이미 만들어진 클래스의 재상용을 하기 위함.즉, 서브클래스는 부모클래스의 내용을 상속받아서 추가적인 요소를 넣어 개념을 확장한다. 서브클래스 선언: extends (확장) 이라는 키워드를 이용함 -> class 자식클래스명 extends 부모클래스명 예시 코드class Parent1 { // 두 정수를 저장할 수 있는 메서드 == Su..
-
[Java] DAO와 DTO (2)
이번에는 저번과 달리 template을 사용하지 않고, DB와 연동을 해보자.그리고 조금 더 복잡한 sql문을 작성하여 새로운 데이터를 추출 해볼 것이다.Quiz1. employees 테이블에서 first_name, salary, hire_date, 그리고 입사후 몇 년이 지났는지 조회하는 자바 프로그램을 작성하여라. 2. 데이터베이스에서 날짜 형식의 데이터를 컬럼에 저장했으나 해당 시점의 날짜만 기록되어 있고, 현재 시점으로부터 얼 마나 오래되었는지 계산하여라. 3. 직원들이 입사 후 몇 년 지났는지 확인할 수 있도록 정렬해서 출력하여라. (단, 이미 DB에 데이터가 생성 되어있다고 가정) Step 1 DTO 작성tip 1) DTO를 작성할때에는 연결된 DB 테이블의 구조를 복..
-
[Java] DAO와 DTO (1)
DAO와 DTO를 사용하여 oracle DB와 연동하고 DB에 있는 데이터를 수정, 삭제, 추가 등의 변경을 할 수 있도록 자바 코드 작성해보자.Step 0 template 준비import java.sql.Connection;import java.sql.DriverManager;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.SQLException;import java.util.ArrayList;import oracle.jdbc.driver.OracleDriver;public class JdbcTemplate { private Connection conn; private PreparedStatement pstmt; p..
-
[Java] 프로그래머스 문제 풀이에 유용한 String 메서드
프로그래머스 기초 문제들을 풀다가 막혀서 풀이를 보면아차 싶거나, 새로 알게되는 유용한 String 메서드들이 꽤나 많다. 이걸 진작에 정리하고 넘어갔다면 풀이를 보지 않고 풀었을 문제들이 수두룩 했을 것이다... 그래서 오늘은 유용한 String 클래스 메서드들을 정리해보았다. chat chatAt(int index)지정된 위치(index)에 있는 문자열을 반환한다. int compareTo(String str)문자열(str)과 사전순서대로 비교한다.같으면 0, 이전이면 음수, 이후면 양수를 반환한다. String concat(String str)문자열(str)을 뒤에 덧붙인다.String s = "Hello";String str = s.concat(" world");// 결과 : str = "Hell..
-
[Java] Exception
오늘은 코드를 작성하며 발생하는 예외(Exception)들을 처리 하는 방법에 대해 알아볼 것이다.자바에서 예외(Exception) 처리는 프로그램 실행 중 발생하는 오류를 처리하고,비정상적으로 종료되는 것을 방지하는 중요한 메커니즘이다. 자바에서는 예외가 발생했을때 try, catch, finally, throw 등을 사용하여 회피 또는 처리 할 수 있다.>> 예외는 에러와 다른 개념인걸 알고 넘어가자. Step 1 if ~ else 로 예외 처리하기문자열을 입력받아서모든 글자가 0 ~ 9 사이에 포함되는지 판별하는 함수인 isDigit 에 넣는다 우선, 예외가 발생하도록 만들기 위해 판별함수가 무조건 false가 나오도록 한다 함수를 호출하고 반환한 값이 false 이기 때문에main 에서 els..