전체 글 65

+6 예외처리 컴파일에러 / 런타임에러 / 예외클래스

컴파일에러 컴파일단계에서 오류가 발생하면 컴파일러가 에러 메시지를 출력 대표적인 원인은 문법 구문오류(syntax error) 예를 들어서 메서드오타, ; 부호 생략 , 괄호 생략, 선언되지 않은 변수 사용 할때 코드 밑에 빨간줄로 잘못되었다고 컴파일 에러를 일으킴 런타임 에러 프로그램 실행중에 에러가 발생할 때, 또는 외부적인 요인으로 기계적 결함으로 프로그램이 비정상적으로 종료될 때 :: 런타임에러 = 실행에러 우리가 설계를 할 때 잘못해서 발생하는 오류가 대부분,,, 개발자가 코드를 설계 할 때 또는 작성할 때 대비해야 한다. 예외(Exception)란 ? :: 프로그램 코드에 의해서 수습이 될 수 있는 오류 예외는 대부분 개발자가 구현한 로직에서 발생한 실수나 사용자의 영향에 의해서도 발생할 수도..

TIL 2023.06.17

+5 자바 숫자야구게임 구현 if문 for문

먼저 내가 구현한 숫자야구게임 코드 if와 for 문으로 만 구현해서 그런지 코드가 지저분하다.. 코드리뷰를 하면서 피드백 받은 사항 package baseball; import java.lang.reflect.GenericArrayType; import java.util.Scanner; //세자리 랜덤숫자 구하기 구현(중복 x) // 볼 스트라이크 표현 구현 // 게임종료하는 부분 구현 public class RandomNumber { public static void main(String[] args) { Scanner scan = new Scanner(System.in); int[] number = new int[3]; int[] user = new int[3]; int Try = 0; int st..

TIL 2023.06.15

+4 자바 컬렉션 set list map

우선 나에게 있어서 객체에서 가장 중요하다고 생각하는 파트중 하나였다. 그래서 공부한것을 바탕으로 개념을 정리를 하고자 작성한다. 자바의 컬렉션 프레임워크란? 다수의 데이터 배열를 좀더 쉽고 효과적으로 처리할 수 있는 클래스의 집합을 의미 데이터를 저장하는 자료구조의 데이터를 처리하는 알고리즘을 구조화 한거라고 볼 수 있다. 이것을 클래스로 구현해놓은 것 위에 배열을 좀더 쉽고 효과적으로 처리할 수있다고 표현 했는데 배열은 정적메모리 할당이 였는데 컬렉션은 동적 메모리 즉, 공간이 필요한 만큼 추가할 수 있다는 점이다. List형 / Set형 / Map형 List - 대표적으로 ArrayList / LinkedList / Vector - 가장 크게 중복되는 데이터를 저장할 때 쉽게 배열로 생각 하자 Ar..

TIL 2023.06.15

day +3 //Github 깃헙 fork clone branch pull push

이번에 깃헙을 처음 접하게 되면서 진작에 했어야 하는 나를 반성하며 공부한 기록을 적어보려고 한다. 먼저 깃이란 프로젝트 버전관리 시스템 중 하나이다. 개발자라면 그 중 협업을 하고 있는 개발자들이 사용하면 최고의 시너지를 발휘해서 개발을 진행할 수 있다. 내가 사용하는 시점은 이미 repo가 생성되고 내가 그것을 받아서(fork) 하는 작업부터 시작한다. fork 우선 팀장 아님 회사의 프로젝트를 내가 이어서 작업을 하게 되면 먼저 다른 사람의 저장소에 접근을 해서 위의 이미지처ㅏ럼 fork를 진행한다. 그럼 위의 창으로 들어가게 되는데 저기서 repo 명을 정하고 Create fork를 진행한다. git clone 그다음 작업할 로컬 파일에서 git bash 키고 그 터미널에서 git clone (주..

TIL 2023.06.13

항해 day +2 HTTP GET방식 POST방식

가져온다는 개념 - 서버에서 어떤 데이터를 가져와서 보여줄 때 사용 - 어떤값이나 내용 상태등을 수정하지 않고 사용하는 경우 - get요청은 캐싱이 가능하므로, 동일한 요청을 반복할 때 서버에 부하를 줄 일 수 있음 ※cs적인 용어로 사용해서 정리하면 :: get method는 클라이언트에서 서버로 어떠한 리소스로 부터 정보를 요청 하기 위해 사용 되는 메서드 READ(읽기) / RETRIEVE(검색) get method는 전송할 때 URL 주소 끝에 파라미터로 포함시켜 전송 ==> '쿼리스트링' 이라 칭함 쿼리스트링 ex) www.mong2.com /resources?name=자바개발자&name2=테스터 이렇게 name1 과 name2인 파라미터 값을 전달받을 수 있다. 여러개면 & 로 연결! -수행한..

TIL 2023.06.09

자바 다형성(polymorphism) 예시 참조변수 인스턴스

다형성이란? :: 여러가지 형태를 가질 수 있는 능력 조상클래스의 타입의 참조변수로 자손클래스의 인터스턴스를 참조할 수 있도록! class Tv{ boolean power; int channel; void power() {power = !power; } void channelUp() { ++channel; } void channelDown(){ --channel;} } class SmarTv extends Tv{ String text; void caption() {~~~~;} } Tv 클래스와 SmartTv는 서로 상속관계로 있으므로, 아래와 같은 조상클래스 타입의 참조변수로 자손클래스의 인스턴스를 참조 가능 Tv t = new SmartTv(); 다시 한버 정리해보면 아래와 같은 코드를 이해할 수 있다..

자바(Java) 2023.06.08

항해 day +1 토이프로젝트 (주제:맛집) CRUD게시판

이번 토이프로젝트(미니프로젝트) 주제이자 로고 본격적인 항해가 시작하면서 팀원분들과 토이프로젝트를 진행하게 되었다. wireframe,.ERD설계, 유즈페이스설계, 도메인설계로 시작한 기획단계를 거쳐 기능 부분에서는 CRUD 구현(게시판), 회원가입, 로그인, 로그아웃 기능을 구현했으며 깃허브(GitHub)의 사용하면서 협업이 어떻게 진행되는지 체험하는 좋은 기회였다. ERD설계 도메인설계 유즈페이스 설계 WireFrame설계 Create :: 게시판 글 생성 (맛집이름,위치정보,이미지url,별점,코멘트) Read :: 게시글 조회 (생성한 글 클릭시 상세 조회) Update :: 게시글 수정 ( 유저가 생성한 게시물 수정 가능,(맛집이름,위치정보,이미지url,별점,코멘트)) Delete :: 게시글삭제..

TIL/2023년 2023.06.08

SQL 공부 💡 4주차 SUBQUERY 서브쿼리 with절 case문

알아두면 쿼리 짤때 큰 도움이 되는 Subquery(서브쿼리) 더보기 Subquery (서브쿼리)란? : 하나의 SQL 쿼리 안에 또다른 SQL 쿼리가 있는 것을 의미합니다. - kakaopay로 결제한 유저 정보 가져오기 select u.user_id, u.name, u.email from users u inner join orders o on u.user_id = o.user_id where o.payment_method = 'kakaopay' - kakaopay 로 결제한 user_id 직관적으로 모두 가져오기 select user_id from orders where payment_method = 'kakaopay' - 서브쿼리 사용해서 가져오기 select u.user_id, u.name, u...

SQL 2023.06.03

자바 Java 객체지향이란무엇일까? #2 객체배열 클래스 인스턴스변수

배열이란? 많은 수의 변수를 다뤄야할 때, 배열로 다룬다. 객체배열도 비슷하다. 많은 수의 객체를 다뤄야할 때, 객체배열로 다룬다. 단! 객체가 저장되는 것이 아닌 객체의 주소가 저장되는 것 == 참조변수들을 하나로 묶은 참조변수 배열 Tv tv1, tv2, tv3. ----> Tv[] tvArr = new Tv[3]; // 길이가 3인 Tv타입의 참조변수 배열 이렇게 작업한것은 객체를 그저 다루기 위한 참조변수들이 만들어진 것뿐, 아직 객체가 생성된 것이 아님. 객체를 생성해서 객체 배열의 각 요소에 저장하는 것은 필수여야 한다. 까먹지 말자! Tv tv1, tv2, tv3. ----> Tv[] tvArr = new Tv[3]; // (생성) tvArr[0] = new Tv(); // 객체를 생성해서 ..

자바(Java) 2023.06.03

SQL 공부 시작 3주차💡 MYSQL JOIN문 INNER JOIN LEFT JOIN ISNULL

JOIN 문? :>여러 테이블을 연결하는 JOIN문 LEFT JOIN문 더보기 select * from users u left join point_users p on u.user_id = p.user_id; INNER JOIN문 더보기 select * from users u inner join point_users p on u.user_id = p.user_id; ※ JOIN문에서 ALIAS 로 AS를 users AS u 로 쓰는 경우도 있음 // 무방함 더보기 ex) select * from users as u inner join point_users as p on u.user_id = p.user_id; 더보기 select name, count(*) from users u left join point..

SQL 2023.06.03