Banner

My Tech Blog (Java)

· Java
1. 제네릭스(Generics) 제네릭스란?제네릭스(generics)는 자바 J2SE 5.0 버전 이후에 도입된 개념으로, 자료형을 안전하게 사용할 수 있도록 만들어 주는 기능이다. 제네릭스를 사용하면 자료형을 강제로 바꿀 때 생길 수 있는 캐스팅(Casting) 오류를 줄일 수 있다. ArrayList는 자바의 **제네릭스(Generics)**를 활용하는 대표적인 컬렉션 클래스이다. 제네릭스를 사용하면 ArrayList에 저장할 요소의 타입을 지정할 수 있고, 덕분에 형 변환 없이 데이터를 처리한다. (타입 안정성 보장) ArrayList는 ArrayList 형태로 정의하는데, 여기서 E는 저장할 요소의 타입을 나타내는 타입 매개변수이다. ArrayList,ArrayList처럼 제네릭스를 사용하여 특정..
· Java
1. 자바의 자료형 String Buffer를 설명하기에 앞서 자바의 자료형에는 기본형(Primitive Type)과 참조형(Reference Type)이 있다. 기본형은 값 자체를 저장하는 형태로 정수형, 실수형, 문자형(char), 논리형이 기본형에 속한다. 반면, 참조형 주소값을 담고 있으며, 실제로는 주소가 가리키는 객체나 배열 같은 데이터를 참조하는 형태이다.  기본적으로 자바의 8가지 기본형(Primitive Type)이 아닌 모든 데이터는 참조형에 속한다. 리스트나 맵, 집합처럼 우리가 아는 자바 컬렉션 프레임워크에서 제공하는 자료형들이 참조형이다. 그리고 흔히 문자열이라고 부르는 String도 참조형에 속한다. 참조형(Reference Type)- 클래스 (Class): 사용자가 정의한 객..
· Java
코딩테스트 문제 풀다 보면 Scanner보다 BufferedReader / BufferedWriter을 더 많이 쓰게 된다.버퍼를 사용하면 어떤 점이 더 좋을까? 버퍼를 사용하지 않는 입력은, 키보드의 입력이 키를 누르는 즉시 바로 프로그램에 전달반면 버퍼를 사용하는 입력은, 키보드의 입력이 있을 때마다 한 문자씩 버퍼로 전송한다. 버퍼가 가득 차거나 개행 문자가 나타나면 버퍼의 내용을 한 번에 프로그램에 전달즉, 입력 데이터를 한 번에 모아서 전달 Scanner는 데이터를 토큰 단위로 처리하고 띄어쓰기와 개행문자를 경계로 하여 입력 값을 인식그렇기 때문에 따로 가공할 필요가 없어 편리하다.BufferedReader은 입력 받은 데이터가 String으로 고정되기 때문에 입력받은 데이터를 원하는 타입..
· Java
✅ List를 map으로 변환하는 이유 db나 API에서 데이터 받아와서 검색할 때 속도나 효율성 측면에서 map이 빠름즉, 대규모 데이터 처리나, 빠른 검색을 위해서 필요함.이것이 가능한 이유는 map은 해시 기반으로 작동하며 키,값 쌍 형식을 가지기 때문.  JSON이랑 비슷한 형식이지만 자바의 map은 키값 타입을 제네릭으로 지정해 주어야 하고Map처럼 명확한 타입을 지정해 주어야 함. [JSON]{ "name": "Alice", "age": 30, "isEmployee": true} [JAVA map]Map person = new HashMap();person.put("name", "Alice");person.put("age", 30);person.put("isEmployee", ..
· Java
서블릿의 개념과 작동원리 자바 웹 개발에서 꼭 알아야 할 것이 서블릿(Servlet)과 스프링(Spring) 프레임워크입니다. 이들은 자바 기반의 웹 애플리케이션 개발을 위한 핵심 기술이거든요. 서블릿(Servlet)은 자바를 사용하여 웹 페이지를 동적으로 생성하는 기술이며, 스프링(Spring) 다양한 웹 개발 기능을 제공하는 프레임워크입니다. 그렇다면 "웹 페이지를 동적으로 생성한다"라는 것이 무슨 뜻일까요? 정적인 HTML과 비교해보면 쉽게 이해할 수 있습니다. 1. 정적 웹페이지, 동적 웹페이지는 뭘까? 1-1. 정적 웹 페이지 (static web pages) 언제 접속해도 같은 응답을 보내주는 페이지입니다. 정적인 웹 페이지는 서버에 미리 저장된 HTML 파일로 구성되어 있으며 ..
· Java
package ex01월급계산프로그램;public abstract class Employee { // 접근제한자의 종류 // public = 어디서든 누구나 다 접근 가능 // default = 동일한 패키지만(아무것도 안 적는 것) // private = 현재 클래스에서만 접근 가능 // protected = 동일한 패키지거나 상속관계까지 접근 가능 // 1. 필드 // private -> public -> protected // 사번 protected String empno; //이름 protected String name; //연봉 protected int pay; // default = 동일한 패키지만 // protected = 상속관계까지 접근 가능 // 자바 저장공간 ..
· Java
package ex02닌텐도게임기; public class Dongmul extends GameChip { @Override public void start() { System.out.println("동물의숲 게임을 시작합니다."); } } package ex02닌텐도게임기; public class Mario extends GameChip { @Override public void start() { System.out.println("마리오카트 게임을 시작합니다."); } } package ex02닌텐도게임기; public class Zelda extends GameChip { @Override public void start() { System.out.println("젤다의 전설을 시작합니다."); }..
· Java
package ex01상속기초; public class Child extends Parent { // 자식클래스, 서브클래스(새로운 클래스) // extends : 상속을 받을 때 사용하는 키워드 // --> 연장하다, 확장하다의 의미를 가지고 있음 // class 서브클래스 extends 슈퍼클래스 public void makeBong() { System.out.println("맛있는 봉골레 파스타를 만든다~ 얍!"); } public void makeSteak() { System.out.println("버터에 아스파라거스를 추가해서 스테이크를 굽는다"); } /* * @author SMHRD(만든사람 이름) * @since 23.07.12 * @param 매개변수에 대한 설명 달아주는 곳 * @ret..
인절미였던것
'Java' 카테고리의 글 목록 (5 Page)
상단으로