본문 바로가기
카테고리 없음

본캠프 6일차 - TIL

by codechu 2025. 4. 14.

 

  • 문자열을 비교할땐 .equals()
  • 반복문 switch()안에는 조건식을 사용할 수 없음. 스위치와 이프문의 차이 스위치는 단위값이 정해져있을때 사용 가능 몇 이상 이하가 아닌 ex)a학점은 90점 1등급 처럼 값이 정해져있을 때 사용 가능  ( if >switch , if가 구현범위가 더 높음)
  • 반복문에 for, while
  • while 을 쓸 때는 시작 전에 조건식을 주고 끝에 조건변화수식을 적어주기 i++

배열형도 참조형

int [] arr = new int[5];

System.out.println(arr) -> 값이 아니라 저 배열의 주소가 나옴. 값을 출력하기 위해서는 인덱스를 사용 위치값;

 

 

 

 

래퍼클래스( Wrapper Class )  - 기본 자료형을 감싸는 형 참조형변수이다. 하지만 참조주소가 출력이 아니라 바로 값이 출력됨.

 

 

기본 자료형 8가지

 

 

래퍼클래스를 사용하는 이유 ? 기본형은 객체처럼 속성과 기능을 가질 수가 없음.

래퍼클래스로 기본형을 감싸서 만들어줌 

 

Integeer num = 100; 이 100이라는 정수형 값을 문자로 바꾸고 싶음.

String  numStr = num.toString(); 문자형으로 변환 완료

 

 

static - static은 모든 객체가 함께 사용하는 변수나 메서드를 만들 때 사용됨.

 

 

 

 

 

final

 

  • 1. 변수는 변경이 불가능하게 만듭니다.변수에서 final
    • 변수에 final 을 붙이면 변수를 한 번만 설정할 수 있습니다.
    final int a = 100;
    a = 200; // ❌ 오류 발생!
    
    </aside>
  • <aside> 1️⃣
  • 2. 클래스는 상속할 수 없게 만듭니다.클래스에서 final
    • final 로 선언된 클래스는 상속할 수 없습니다.(상속은 추후에 학습합니다.)
    final class Animal {
        void sound() {
            System.out.println("Animal sound!");
        }
    }
    
    // class Dog extends Animal {} // ❌ 오류! final 클래스는 상속할 수 없음
    
    </aside>
  • <aside> 2️⃣
  • 3. 메서드는 수정할 수 없게 만듭니다.(오버라이딩 불가)메서드에서 final
    • final 로 선언된 메서드는 오버라이딩 할 수 없습니다. (오버라이딩은 추후에 학습합니다.)
    class Parent {
        final void show() {
            System.out.println("Hello from Parent");
        }
    }
    
    class Child extends Parent {
    		
    		@Override
        void show() { // ❌ 오류! final 메서드를 재정의할 수 없음
            System.out.println("Hello from Child");
        }
    }
    
    </aside>
  • <aside> 3️⃣
  • 상수는 변하지 않고 항상 일정한 값을 갖는 수 .
  • 자바에서 상수는 대문자로 표현하는 것이 관례이다
  • 프로그램 실행중 절대 변경되어서는 안되기 때문에 static final 키워드를 사용해 선언한다.

 

대표적인 상수 예시 : PI(대문자 표시) 원주율

 

원의 넓이, 둘레를 구할 때 공통으로 사용되는 값 (변경되면 안되는 값)

더보기

public class Circle {

    final static double PI = 3.14159; // ✅ 상수 선언
}

final을 사용해서 변하지 않게 함.