본문 바로가기

오늘의 공부 & 기록

3월 8일 findByindexByEmail 인덱스 값을 구하기 위해서 MemberDTO 를 for문으로 돌려서 같은 이메일이 있으면 반환받는 형식 직접 구현 하기 @Override public int findIndexByEmail(String email) { for(MemberDTO m: members) { if(m.getEmail().equals(email)) return members.indexOf(m); } return -1; } Controller Service Dto 역할에 맞추어서 사용하기 왜 나눠서 코드를 작성하냐면 코드 가독성, 역할 분리, 협업 용이, 에러 찾기 쉬움 더보기
3월 7일 상속 객체 지향 프로그램 상위 클래스의 정보를 하위 클래스에게 전달함 기대효과 - 반복적인 코드 줄임 - 유지보수의 편리성 - 기존 코드를 활용함으로써 개발 시간 단축 Super연산자 부모 객체에 접근할 경우 사용 부모 객체의 생성자 호출 시 사용 private접근제어자로 설정한 경우 자식도 접근할 수 없지만 부모 메서드에서 Setter()나 Getter()이용해서 사용할 수 있는 방법이 있음 // 생성자 호출 super() // 메서드 호출 super.메서드명(); 메서드 재정의 - 오버라이드(override) - 부모 클래스의 메서드를 상속받은 자식 클래스에서 재정의하여 사용 => 상속 관계의 경우에만 오버라이딩 가능 - 반환자료형, 인자형식, 개수 등 모든 구조가 같아야 함 - 내부 코드만 재구성하.. 더보기
3월 6일 생성 Setter는 사용하지 않는 추세 생성자 사용, Builder패턴을 사용하는 추세 예약어: 접근제어자, static, return, 반환자료형(void, 모든 자료형), final, this, super 접근제어자: private, default, protected, public final 생성할 때 값넣기, 값 변경 불가this 현재 인스턴스의 참조값, 자기 자신 super 상속 관계에서 부모 DTO 데이터 들어가고 데이터 내용 변경 가능 VO 데이터 한번 들어가면 데이터 내용 변경 안함 더보기
3월 3일 HashMap 순서 보장 안됨 키, 값 순서로 출력 X, 저장 순서로 출력하려면 따로 뭘 만들어서 저장을 해야하는 방법밖에 없나????? 답안 코드에도 반영이 안되어있음..ㅎ 객체 지향 프로그램의 이해 기능 목적 클래스로 사용하는 Controller, Service, Repository, DAO 데이터베이스 관련 클래스로 사용하는(데이터 저장소 역할) vo, dto 생산성 - 이미 만들어 진 것을 잘 사용하는 것 class 클래스명 { // field 자료형 필드명; 자료형 필드명; // method 반환자료형 메서드명(인자1 인자2) { //구현 } 반환자료형 메서드명(인자1 인자2) { //구현 } } stack 참조변수 heap 메서드 호출 text, code, method 메서드 코드 오버로딩(O.. 더보기
2월 28일 Set 특징 임의의 저장순서 중복 저장 불가 종류 Hashset treeset 메서드 특징 - 인덱스를 사용하지 않기 때문에 인덱스 관련된 메서드가 없음(get, set) - 반복문을 사용해서 직접 검색은 가능 - 데이터 저장하고 삭제하고, 있는지 없는지 조회, 몇 개 있는 지 정도의 기능 -> 저장소의 개념 데이터 하나하나 작업(수정같은거)하려면 리스트에 넣어서 사용해야함 ArrayList list = new ArrayList(hs); 검색은 반복문에서 하면됨 Iterator 메서드 hasNext() 데이터가 있으면 가지고온다 next(): get()과 같은 역할 Map 특징 Key:Value로 구성 key는 중복 불가, value 중복 가능 종류 HashMap treemap 더보기
2월 27일 1. 문자열 Java.lang.String String 클래스에는 문자열과 관련된 작업을 할 때 유용하게 사용할 수 있는 다양한 메서드가 포함되어 있음 기본 자료형이 아니지만 기본 자료형처럼 사용하고 있음 String str = new String(); // 이렇게 사용하는게 원칙이지만, 생략해서 사용 가능 String str = "문자열"; // 보통 이렇게 사용하고 있음, 둘 다 가능! 2. 정규표현식 * 0번 이상의 발생 3. 컬렉션 프레임워크 1) 컬렉션 객체의 수집 및 조장 2) 컬렉션 프레임워크(Collection Framework) 객체들을 효율적으로 추가, 삭제, 검색할 수 있도록 제공되는 라이브러리 인터페이스 분류 특징 구현 클래스 Collection List 계열 - 순서 유지(인덱스로.. 더보기
2월 24일 다차원 배열 2차원 이상의 배열을 의미 배열을 입체적으로 표현한 모양 형식 type 배열명[][] = new type[][]; type [][] 배열명 = new type[][]; // 다차원 배열 선언 및 생성 int [][][] arr; arr = new int[2][2][2]; 석차 구하기 가변 배열 생성 후데이터 입/출력 하기 더보기
2월 23일 package arrays; public class Ex03 { public static void main(String[] args) { int[] arr = new int[5]; // 데이터 입력 for(int i = 0; i < arr.length; i++) arr[i] = (i+1)*100; // for문으로 출력하기 for(int i = 0; i < arr.length; i++) System.out.println(arr[i]); // 향상 for문으로 출력하기 for(int data : arr) { System.out.println(data); } } } 향상 for문 for(배열에 저장된 데이터를 저장할 변수 : 배열(두 개 이상 데이터 저장소)) { } 선택정렬 알고리즘 더보기