본문 바로가기

프로그래밍 언어/JAVA

(20)
[Spring] Spring 설치 1. sts(Spring Tools Suite) 3.9.18 download 2. sts 내부에 Lombok설치 cmd → cd lombok설치경로 → java -jar lombok.jar → Lombok 설치창에 sts.exe 추가 후 업데이트
XML(eXtensible Markup Language) XML(eXtensible Markup Language) - 확장된 마크업 언어로 단순화 된 데이터 기술 형식 - XML에 저장되는 데이터의 형식은 Key : Value (Map형식) - Key, Value 모두 문자열(String)로 제한 자바에서 XML 파일을 읽고, 쓰기 위한 IO 관련 클래스 필요 이 때 사용하는 것이 " Properties 컬렉션 객체 " - Map의 후손 클래스로 Key:Value 모두 문자열(String)형식 - XML 파일을 읽고, 쓰는데 특화된 메서드 제공
[Java] 추상클래스 abstract 다른 클래스들의 공통이 되는 변수나 메서드의 이름과 형태만 기술해 놓았을 뿐 구체적인 내용이 없는 클래스이다. 메서드에서 무엇을 하는가는 추상클래스를 상속받은 자식 클래스에서 오버라이딩으로 정의한다. 따라서 추상클래스는 다른 클래스의 템플릿으로 사용된다. 코드의 확장성을 높여서 유연한 프로그램을 만들 수 있는 장점이 있고, 큰 프로그램일수록 추상 클래스가 중요하다.
[Java] 오버로딩과 오버라이딩 오버라이딩은 상속과 관련하여 메서드를 재정의하는 것이고, 오버로딩은 하나의 클래스 안에서 동일한 이름의 메서드를 여러개 정의하는 것이다. 오버로딩(Overloading) 한 클래스 내에서 동일한 이름의 메서드로 파라미터, 처리동작, 리턴값을 다르게 하여 여러번 정의 가능한 것을 말한다. 매개변수 타입, 개수, 순서 중 1개라도 달라야한다. 오버로딩은 상속과 상관없이 한 클래스 내에서 동일한 이름의 메서드를 여러 개 정의할 수 있다. 오버라이딩(Overloading) 상속을 받는 하위클래스에서 상위클래스의 메서드를 '재정의' 하여 사용하는 것이다. 상위클래스의 메서드를 하위클래스에서 오버라이딩할 때는 해당 메서드의 이름과 인자, 리턴값을 그대로 선언하고, { } 안의 실행될 내용만 변경하여 사용한다. 오버..
[Java] 객체 지향 언어 프로그램의 공통요소들을 추상화, 캡슐화를 통해 클래스로 정의 -----인스턴스화(객체화)--------> new연산자를 통해 객체는 메모리 영역에 할당 여기서 클래스에 정의된 내용대로 메모리에 할당된 결과물을 인스턴스라고 한다. ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ 추상화 : 프로그램에서 필요한 공통 부분은 나타내고, 불필요한 부분은 제거하여 유연성을 확보 캡슐화 : 추상화를 통해 정리된 속성과 기능을 하나로 묶어 클래스로 만들고, 데이터에 대한 직접 접근을 제한 -> 정보은닉의 효과 - 클래스의 멤버 변수에 대한 접근권한은 private - 클래스의 멤버 변수에 대한 연산처리를 목적으로 하는 멤버 메소드는 클래스 내부에 작성 - 멤버 메서드는 클래스 밖에서 접근할 수 있..
[Java] 접근 제한자(Access Modifier) 추상화, 캡슐화를 통해 정리된 데이터 속성과 기능은 클래스로 정의하여 사용할 수 있다. 이 때 다른 클래스에서 해당 클래스로 접근 가능한 범위를 제한하는 키워드를 "접근제한자"라고 한다. public 같은 프로젝트 내에 있는 외부의 모든 클래스에서 접근이 가능 protected 같은 패키지 내부의 클래스나 하위 클래스에서 접근이 가능하다. 여기서 하위클래스에서의 접근은 상위클래스에서 상속받은 경우로 자기 자신과 상속받은 하위클래스 둘 다 접근이 가능하며, 상속관계는 같은 패키지가 아니더라도 접근이 가능하다. default 접근 제어자를 명시하지 않는 경우(직접 작성하지 않고 생략)로 같은 패키지 내부에 있는 클래스에서 접근이 가능하다. private 같은 클래스 내에서만 접근이 가능하다. 해당 클래스 내..
[Java] getter/setter 직접 접근이 제한되어있는 필드(멤버변수)에 간접 접근을 위한 메서드 getter/ setter ▶ setter : 매개변수로 전달 받은 값을 필드에 대입 public void set필드명(자료형 변수명){ // 여기서 필드명을 쓸때 앞글자를 대문자로 this.필드명 = 변수명; } ▶ getter : 현재 객체의 필드 값을 반환하는 메서드 (외부에서 필드 값을 얻어 가게 하는 메서드) public 반환형 get필드명() { // 여기서 필드명을 쓸때 앞글자를 대문자로 return 필드명; } getter/setter메서드는 단축키를 사용해서 작성하면 훨씬 편리하다 Alt + (Shift) + S → R : getter/setter 생성
[Java] 생성자(Constructor) ▶ 생성자는 객체가 new연산자를 통해 heap영역에 생성되면서 생기는 메서드의 일종이다. 클래스 생성시 자동으로 클래스명과 동일한 이름의 메서드가 호출되고 이를 '생성자'라고 한다. (클래스 사용 시 기본생성자를 생성하지 않으면 컴파일러가 자동으로 생성) 1. 반환값이 없으며, 2. 생성자명은 클래스명과 동일하게 지정 ▶ 생성자는 오버로딩이 가능하다. 여기서 오버로딩은 동일한 메서드명이지만 다른 매개변수, 타입, 순서 등으로 다른 기능을 수행할 수 있는 것을 말한다. 여기서 다른 파라미터의 데이터 타입이 중요하다.