언어/자바(18)
-
스프레드
/* * 스프레드 매개변수 1. 용도 : 메서드 호출시 매개변수 개수가 일치하지 않아도 호출이 가능이 가능하도록 한다. args는 매개변수의 수를 * 동적으로 처리할 수 있도록 유연성을 제공한다. 2. 방법 : 메서드의 매개변수(데이터Type ...변수)로 지정하나, 스프레드 매개변수는 * 1개밖에 사용할 수 없다. 컴파일시 매개변수로 넘어온 갯수만큼 배열이 생성된다. */ 맴버 메서드1. callArgs3(String name, int ...arg1)2. callArgs2(String...arg1) _09_SpreadArgs spread = new _09_SpreadArgs(); spread.callArgs2("치킨", "피자", "연어스테이크", "파스타"); spread.callArgs3("치킨"..
2025.06.13 -
String - 상수 풀(String Pool)
String name = "이충현";은 상수풀에 담긴다. 그래서 주소값이 같다.만약 String name1 = "이충현" 인경우 같은 값이기때문에 주소값이 같다. 만약, 기존 문자를 concat으로 새롭게 문자를 만들면, 새로운 주소값으로... 생성하여 만든다.
2025.06.13 -
Object
clone() - 복제를 하게 되면, 새로운 주소로 생성된다.ㄴ> 인스턴스가 다른 메모리에 복제된다.(즉, 새로운 메모리공간에다가 새로운 주소값으로 생성됨)toString() - 부모의 것을 재정의해서 출력함, 재정의하지 않으면, 주소값이 출력됨hashCode() - 해시코드를 반환해줌 main throws에서 던지면, 부모인 JVM이 받음 구현할 것이 없는 인터페이스를 마커 인터페이스
2025.06.13 -
디자인 패턴 - 싱글톤 패턴
/* p204 * [면접] 싱글톤패턴 * - 인스턴스를 단 하나만 생성하는 디자인 패턴 * - static을 응용하여 프로그램 전반에서 사용하는 동일한 인스턴스를 하나만 생성하는 방식 * - 접근할 클래스에 여러 메서드가 있을 때, 외부 클래스가 해당 메서드에 접근할 때마다 * 객체를 생성할 필요없이 getInstance()를 통해 참조변수만 리턴받아 접근한다. * 열번, 백번을 호출해도 항상 같은 주소의 인스턴스가 반횐된다. * * 싱글톤패턴 생성 * - 1단계. 디폴트생성자를 private으로 만들기 * - 2단계. 클래스 내부에 static으로 유일한 인스턴스 생성하기 * - 3단계. 외부에서 참조할 수 있는 public 메서드 만들기 * * 호출 * - 접근클래스명 참조변수 = 접근클래스명..
2025.06.12 -
예외 처리 -- 2
static Scanner scan = new Scanner(System.in); public static void main(String[] args) { /* * 1. 강제예외발생 : throw new Exception(message); * 2. 상위 메서드에게 예외 던지기 * throws Exception * 3. 예외 처리 : try ~ catch ~ finally * catch(던진 Exception e){e.getMaessage()}로 받는다. * * catch문이 여러개일때(다중 catch) 부모 Exception이 제일 아래오도록 한다. 실행순서는 위에서부터 실행 */ // new 생성해서 메서드 참조하기 IDFormetTest idform = new IDFormetTest(); tr..
2025.06.12 -
예외 처리
[종류]오류(시스템 오류) : 스택 메모리와 오버플로- 컴파일 오류 : 개발자의 실수 컴파일 오류(작성시점) : 실행전이고 작성 후 저장한 경우- 실행 오류 : 실행중에 의도지 않은 동작이거나 프로그램 종류(비정상 종료)버그 : 실행 중 잘못 구현 및 의도한 바와 다르게 실행예외 : 비정상적인 오류를 막으려고함 [예외 처리 구조] Object > Throwable > Exception getMessage() 보다 printStrackTrace() [PrintStackTrace 사용해보기] printStackTrace() -> 역 추적으로 해당 오류난 경로를 파악한다. NullPointerException이 finally에 file일 null이다. 그래서 자식 NullPointerException..
2025.06.11