본문 바로가기
  • Let's study

java58

[프로그래머스 Lv.0] 배열 자르기(Java) 문제https://school.programmers.co.kr/learn/courses/30/lessons/120833 프로그래머스SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr풀이Arrays.copyOfRange(array, from, to)from : 복사를 시작할 인덱스(포함)to : 복사를 끝낼 인덱스(미포함)코드import java.util.Arrays;class Solution { public int[] solution(int[] numbers, int num1, int num2) { int[] answer = Arrays.copyOfRange(numbers, num1, num2+1); .. 2026. 7. 16.
[Java] 명언 게시판 만들기(1~5단계) 요구사항1단계 - 종료2단계 - 등록3단계 - 등록시 생성된 명언번호 노출4단계 - 등록할때 마다 생성되는 명언번호가 증가5단계 - 목록6단계 - 1번 명언삭제7단계 - 존재하지 않는 명언삭제에 대한 예외처리8단계 - 명언수정1단계 - 종료== 명언 앱 == 명령) 종료가장 먼저 Scanner를 이용하여 명령어를 입력받고 "종료"를 입력하면 프로그램이 종료되도록 구현하였다.핵심 코드Scanner sc = new Scanner(System.in);System.out.println("== 명언 앱 ==");String cmd = "";while (!cmd.equals("종료")) { System.out.print("명령) "); cmd = sc.nextLine();}sc.close();2단계 - .. 2026. 7. 16.
[프로그래머스 Lv.0] 문자열 정렬하기 (2) (Java) 문제https://school.programmers.co.kr/learn/courses/30/lessons/120911 프로그래머스SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr풀이먼저 모든 문자를 소문자로 변환한 뒤, 문자열을 문자 배열로 바꾸어 정렬하고 마지막으로 정렬된 문자 배열을 다시 문자열로 변환하여 반환한다.먼저 toLowerCase()를 사용해 문자열의 모든 문자를 소문자로 변환한다.my_string = my_string.toLowerCase();그다음 toCharArray()를 사용해 문자열을 문자 배열(char[])로 변환한다.char[] charArr = my_string.toCharArray();문자 배.. 2026. 7. 15.
[Java] 캡슐화(Encapsulation) 캡슐화(Encapsulation)는 객체의 데이터를 외부에서 직접 접근하지 못하도록 보호하고, 메서드를 통해서만 접근하도록 하는 객체지향의 핵심 개념이다.객체가 올바르게 동작하려면 데이터가 올바른 값으로 유지되어야 한다. 따라서 인스턴스 변수는 private으로 보호하고, 필요한 경우에만 메서드를 통해 접근하도록 한다.private과 publicprivateprivate은 같은 클래스 내부에서만 접근할 수 있는 접근 제어자이다.외부에서는 직접 접근할 수 없으므로 객체의 데이터를 안전하게 보호할 수 있다. class 사람 { private int 나이; private String 이름;}publicpublic은 어디서든 접근 가능한 접근 제어자이다.외부에서 사용할 메서드는 보통 public으로 .. 2026. 7. 15.
[Java] 추상 클래스 / 추상 메서드 추상 메서드(Abstract Method)추상 메서드(Abstract Method)는 구현(몸체)이 없는 메서드이다.자식 클래스에서 반드시 구현하도록 오버라이딩을 강제하기 위해 사용한다. abstract void 공격(); 메서드의 선언만 있고 { }가 없으며, abstract 키워드를 사용한다.추상 클래스(Abstract Class)추상 메서드를 하나라도 가지고 있는 클래스는 반드시 추상 클래스(Abstract Class) 가 되어야 한다. abstract class 무기 { abstract void 공격(); void 방어(){ }} 추상 클래스는 객체를 생성할 수 없다. 무기 weapon = new 무기(); // 컴파일 오류 추상 클래스는 객체를 만들기 위한 클래스가 아니라.. 2026. 7. 15.
[Java] 구성 구성(Composition)구성(Composition)은 객체가 다른 객체를 가지고 있으면서 필요한 기능을 협력하여 수행하는 객체지향 설계 방식이다.즉, 어떤 객체가 직접 기능을 구현하지 못하더라도 다른 객체에게 일을 맡겨 기능을 수행할 수 있다.예를 들어 홍길순은 자바 개발을 할 수 없지만, 홍길동 객체를 멤버 변수로 가져와 홍길동에게 자바 개발을 요청하여 기능을 수행할 수 있다.class 홍길동 { void 자바개발() { System.out.println("자바 25 개발을 합니다."); } void C언어개발() { System.out.println("C언어 개발을 합니다."); }}class 홍길순 { 홍길동 홍길동연락처 = new 홍길동();.. 2026. 7. 15.