본문 바로가기

ETC/도서15

[자바의 신] 17장. 어노테이션이라는 것도 알아야 한다 애노테이션이란?클래스나 메소드 선언 시 @를 사용하는 것을 말한다메타 데이터컴파일러에게 정보를 알려주거나컴파일할 때 설치 시 작업을 지정하거나실행할 때 별도의 처리가 필요할 때미리 정해져 있는 어노테이션OverrideDeprecatedSupressWarnings어노테이션을 선언하기 위한 메타 어노테이션어노테이션을 직접 선언할때 사용Target : 어떤 어노테이션을 적용할지 선언할 때 사용@Target(ElementType.METHOD)Retention : 얼마나 오래 어노테이션 정보가 유지되는지 선언@Retention(RetentionPolicy.RUNTIME)Documented: 해당 어노테이션이 문서에 포함된다는 것 선언Inherited: 모든 자식클래스에서 부모의 어노케이션을 사용가능하는 것을 선언.. 2024. 9. 28.
[자바의 신] 16장. 클래스 안에 클래스가 들어갈 수도 있구나 클래스 안 클래스자바 클래스 안에는 클래스가 들어갈 수 있는데 이를 Nested 클래스라고 부른다선언 방식에 따라 static과 inner로 구분된다inner 클래스는 두가지로 나뉜다내부 클래스익명 내부 클래스Nested 클래스를 만드는 이유한곳에서 사용되는 클래스를 논리적으로 묶어서 처리할 필요가 있을 때(static Nested)캡슐화가 필요할 때(inner)소스의 가독성과 유지보수성을 높이고 싶을 때Static nested 클래스의 특징내부 클래스는 감싸고 있는 외부 클래스의 어떤 변수도 접근할 수 있다.private로 선언한 변수까지도 접근 가능하다하지만 static은 불가능하다public class OuterOfStatic { static class StaticNested { .. 2024. 9. 27.
[자바의 신] 15장. String String 선언public final class String extends Object implements Serializable, Comparable, CharsequenceString 생성자String name ="Sangmin Lee";String(Byte[] bytes)String(Byte[] bytes, String charsetName)한글 변환 시에 많이 사용하기 때문에 위 생성자를 사용하며 그 외에는 주로 따옴표를 통한 생성을 많이 사용String 문자열 byte로 변환현재 문자열 값을 byte배열로 변환하는 getBytes라는 메소드 제공한글을 처리하기 위해서 요즘 UTF-16을 많이 사용한다 public void convert() { try { S.. 2024. 9. 27.
[자바의 신] 14장. 다 배운 것 같지만, 예외라는 중요한 것이 있어요 try catchpackage exceptionExample;public class ExceptionExample { public static void main(String[] args) { ExceptionExample exceptionExample = new ExceptionExample(); exceptionExample.arrayOutofBounds(); } public void arrayOutofBounds() { int[] intArray = new int[5]; try { System.out.println(intArray[5]); System.out.println("this code sh.. 2024. 9. 27.
[자바의 신] 13장. 인터페이스와 추상클래스, enum 메소드 내용이 없는 interface인터페이스와 추상클래스를 사용하는 이유는설계시 선언해두면 개발 기능 구현하는데 집중할 수 있다개발자 역량에 따른 메소드 이름과 매개 변수 선언 격차를 줄일 수 있다공통적인 인터페이스와 추상클래스를 선언해 놓으면 선언과 구현을 구분할 수 있다인터페이스를 직접 만들어보자인터페이스public interface MemberManager { public boolean addMember (MemberDto member); public boolean removeMember(String name, String phone); public boolean updateMember(MemberDto member);}인터페이스 구현체package interfaceExample;.. 2024. 9. 27.
[자바의 신] 12장. 모든 클래스의 부모 클래스는 Object에요 Object 클래스모든 클래스의 부모 클래스가 있다아무런 상속을 받지 않으면 java.lang.Object 클래스를 확장한다왜 Object 클래스를 상속받는가?기본적인 메소드를 상속하기 위함이다메소드 종류는?clone : 객체 복사본을 만들어 리턴equals : 현재 객체와 매개 변수로 넘은 객체가 같은지 확인finalize : 더이상 객체가 쓸모 없을 대 가비지 컬렉터에 의거하여 호출된다getClass: 현재 클래스 객체를 리턴한다hashCode: 객체에 대한 해시코드 제공(객체 메모리 주소)toString() : 객체를 문자열로 표현하는 값을 리턴ToString()메소드가 자동 호출되는 경우System.out.println() 메소드에 매개 변수로 들어가는 경우객체에 대해서 더하기 연산을 하는 경우O.. 2024. 9. 27.