자바 15

객체란 무엇인가 - 객체(object), 클래스(class) , 인스턴스(instance)

📌 들어가며 개발과 관련된 업무를 하다보면 '객체'라는 용어를 자주 사용하게 됩니다. "객체를 생성해서...", "객체를 넘겨서..." 등등 이러한 객체의 정의에 대해 한번쯤은 짚고 넘어가야 할 필요가 있을 것 같아 이번 포스팅을 통해 정리해보고자 합니다. 📌 객체의 정의 객체에 대한 정의는 어떠한 관점에서 정의하느냐에 따라 다르게 정리할 수 있습니다. 사전적 의미 : 먼저 사전적 의미로서의 객체는 '실제 존재하는 것'을 말합니다. 컴퓨터 과학 : 컴퓨터 과학에서의 객체 또는 오브젝트(object)는 클래스에서 정의한 것을 토대로 메모리(실제 저장공간)에 할당된 것을 의미합니다. 프로그램에서 사용되는 데이터 또는 식별자에 의해 참조되는 공간을 의미하며 변수, 자료구조, 함수 또는 메소드가 이에 해당할 수..

[프로그래머스] 문자열 나누기 - Java

문제 문자열 나누기 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 문제의 규칙대로 구현하면 되는 구현 문제 반복문을 통해 돌리면서 첫번째 글자와 문자열들을 비교해 나간다. 첫 번째 글자와 같은 글자 수 세기 첫 번째 글자와 다른 글자 수 세기 코드 class Solution { public int solution(String s) { int answer = 0; // 정답 char first_character = s.charAt(0); // 첫 번째 문자 int same_count = 0; //첫 번째 글자와 같은 글자 수 세기 int diff_co..

[프로그래머스][Java] 가장 가까운 같은 글자

문제 프로그래머스 - 가장 가까운 같은 글자 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 answer 가 초기에는 int[] 로 초기화 되어있지만 값을 넣기 편하게 List 로 만들어서 사용 String 배열에 값을 구해야 하는 String 낱말 별로 넣어두기 Ex.)['b','a','n','a','n','a'] ❗️split 함수는 배열에서만 사용 가능 tempList 를 만들어서 해당하는 낱말이 없으면 -1을 answer에 넣고 있으면 인덱스값을 계산해서 answer에 넣어준다. 마지막으로 answer를 다시 int[] 로 변환 ➡️ Strea..

[프로그래머스][Java] 크기가 작은 부분 문자열

문제 프로그래머스 - 크기가 작은 부분 문자열 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 String p 의 길이 length_p 를 저장 문자열 t 에서 len 만큼 잘라서 long 타입으로 저장 (int 는 값이 작아 오류 발생) ❗️for문으로 순회하면서 substring ➡️ 인덱스 넘어가지 않도록 주의 String p를 Long 타입으로 변환 후, 작거나 같으면 answer 값 증가 코드 import java.util.ArrayList; import java.util.List; class Solution { public int solut..

[Java] extends 와 implements 의 차이

자바에 있어서 OOP, 상속과 관련되 개념은 매우 중요하다고 할 수 있습니다. 자바 코딩의 핵심이라고 볼 수 있으며 자바 관련 조금만 큰 규모 혹은 작은 규모더라도 SpringBoot 코딩을 하다보면 반드시 사용하게 되는 개념 입니다. 얼마 전 회사에서 하나의 시스템과 다른 시스템을 연동하는 20여개의 api 를 개발할 때도 implements를 이용했습니다. 이 때HttpClient.java 라는 파일에는 public ResponseDto getInformation(); 과 같은 형식으로 개발할 api 들에 대해 나열한 interface를만들고 HttpClientImpl 이라는 구현체를 만들어 구현체에서 각 api 들을 구현했습니다. 이렇게 코딩을 하게 되면 api 의 스펙이 도중에 변경 되더라도 Ht..

Java 2023.01.10