자바 44

[Java] Lamda 람다식

* 람다식 - 메서드(함수)를 하나의 식으로 표현한 것 - 문법 : (매개변수 목록 -> {실행문} - 장점 1. 코드를 간결하게 만들 수 있다. 2. 코드가 간결하고 식에 개발자의 의도가 명확하게 드러나므로 가독성이 향상된다. 3. 함수(메서드)를 만드는 과정 없이 한 번에 처리할 수 있기에 코딩하는 시간이 줄어든다. - 단점 1. 익명 함수는 재사용이 불가능하다. 2. 디버깅이 다소 까다롭다. 3. 람다식을 남발하면 코드가 지저분해진다.(비슷한 코드의 중복 가능성 높음) 4. 재귀로 만들 경우에는 다소 부족한 면이 있다. (재귀함수 : 자신을 재참조하는 함수) 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 3..

Java 2023.04.09

[Java] DAO(Data Access Object) / VO(Value Object) - MemberDAO

- [memberdao]에 데이터 추가, 업데이트 SQL> col motive format a10 SQL> col id format a8 SQL> col pw format a8 SQL> col name format a8 SQL> col id format a15 SQL> select * from member; NO ID PW NAME GENDER MOTIVE ---------- --------------- -------- -------- ---------- ---------- 7 ccc ddd eee 남 fff 8 mero gumi haha 여 after 10 agcde abd ffe 남 dfaw 6 aaa bbb hong 남 친구추천 9 faa > 데이터 보기 편하게 - MemberDAO 1 2 3 4 ..

Java 2023.04.05

[Java] DAO(Data Access Object) / VO(Value Object)

* DAO (Data Access Object) : db 처리하는 순서가 같으니 중복된 부분을 객체로 만들어 활용하는 것 - db 처리 단계 중 1.환경변수, 2. 드라이버 로딩, 3. Connection을 DeptDAO라는 객체로 만듦 (> 데이터베이스의 dept 테이블 활용) 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 8..

Java 2023.04.04

[Java] JDBC - 데이터 베이스 활용 (로그인, 회원가입 창 + 중복확인)

* 먼저, 데이터베이스에 로그인할 수 있도록 MEMBER 테이블 만들기 (SQLPLUS scott/tiger 로그인) SQL> CREATE TABLE MEMBER 2 (no number(5), 3 name varchar2(20), 4 id varchar2(20), 5 pw varchar2(20), 6 tel varchar2(20)); 테이블이 생성되었습니다. SQL> desc member 이름 널? 유형 ----------------------------------------- -------- ---------------------------- NO NUMBER(5) NAME VARCHAR2(20) ID VARCHAR2(20) PW VARCHAR2(20) TEL VARCHAR2(..

Java 2023.03.31

[Java] I/O Stream (DataInputStream / ObjectInputStream) + 메모장, 파일 복사기 기능 구현

[ I/O Stream ] byte Stream char Stream > 2byte씩 읽고 쓰기 InputStream BufferedInputStream(InputStream in) FileInputStream DataInputStream ObjectInputStream Reader BufferedReader FileReader InputStreamReader(형변환 연결) OutputStream BufferedOutputStream(OutputStream in) FileOutputStream DataOutputStream ObjectOutputStream Writer BufferedWriter FileWriter OutputStremReader(형변환 연결) * System.in ==> InputStr..

Java 2023.03.29

[Java] I/O Stream (InputStream / OutPutStream)

[ I/O Stream ] * I/O Stream 1. 단방향성 2. 느리다 : 자바는 java.io에 io관련 클래스, 인터페이스가 모여 있음 - cache : 임시 저장소 - buffer : 이기종 간의 속도 차이를 줄일 목적으로 가지는 메모리 영역 byte Stream (형변환 연결 다리) char Stream > 2byte씩 읽고 쓰기 InputStream BufferedInputStream(InputStream in) FileInputStream DataInputStream ObjectInputStream InputStreamReader Reader BufferedReader FileReader OutputStream BufferedOutputStream(OutputStream in) FileO..

Java 2023.03.28

[Java] 로또 번호 추첨기 - 볼 이미지 부착 (ActionListener, ImageIcon, Random, Multi Thread 등 활용)

​1. 그림과 같이 만든다. ​ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 package day18quiz; import java.awt.Font; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.ImageIcon; import j..

Java 2023.03.28

[Java] Thread 스레드 / Multi Thread

[ Thread ] - Thread : 하나의 프로그램에서 실행되는 흐름의 단위 - Multi thread : 동시에 스레드를 진행할 수 있는 것 (ex. 카톡 : 채팅하다가 파일을 전송 가능) > 자바는 멀티태스크, 멀티 스레드 환경을 지원 * Multi Thread 구현 방법 1. Thread 클래스 상속 2. Runnable 인터페이스 구현 : run() override 3. start() 실행 - Thread 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 package day18; // CPU, RAM // 컴퓨터가 느린 것 같아 // 1. CPU : 2개 이상 ..

Java 2023.03.27

[Java] Exception ( Error, Exception, 예외 처리, 예외 전가)

* 에러의 종류(Error / Exception) 1. Error : 치명적 오류 2. Exception : 가벼운 오류 1) 예외 처리 : try, catch (+finally) 2) 예외 전가 : throws > 메서드를 사용하는 사람이 자신의 환경에 맞게 이 예외를 처리하도록 예외를 전가 시키는 방법 * 예외의 종류 - nullpoint exeption / ArithmeticException / NumberFormatException / InterruptedException / ... > Exception e : 항상 마지막에 놓고 사용한다. 모든 예외가 여기서 다 걸리기 때문에 모든 예외를 받아줄 존재 - PrintStrackTrace : 어떤 예외인지 출력 1 2 3 4..

Java 2023.03.27

[Java] JFrame - Swing (이미지 아이콘, 메모장, 채팅)

* JFrame - AWT ==> SWING J (경량 컴포넌트) - Frame ==> 확장 : Frame에서 더 확장된 'JFrame' 사용 * Swing에서 윈도우 창 종료하는 방법 setDefaultCloseOperation(EXIT_ON_CLOSE); [ 응용 ] * 이미지 아이콘 > ImageIcon, JButon, JFrame 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 package day17; import javax.swing.ImageIcon; import javax.swing.JButton; import javax.swing.JFrame; //..

Java 2023.03.24