본문 바로가기
  • 시 쓰는 개발자

1일 1개념정리 (24년 8월~)/Java9

1일1개 (25) - 생성자 1일 1개념정리 24.08.09.금 ~  큰 결정에 큰 동기가 따르지 않을 때도 있다. 하지만 큰 결심이 따라야 이뤄낼 수 있다.무조건 무조건 1일 1개의 개념 정리하기 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!#25. 생성자생성자를 왜 쓸까? 생성자라는 개념은 왜 있는 것인가 ?? 생성자에 대해 알아봅시다. 사실 Java말고도 Spring에서 어노테이션으로 생성자 관리를 잘 해줘야하므로, 알아두면 요긴하게 쓴다.  1. 쉬운 초기화 & 직관적이다생성자를 사용하면 객체를 생성하면서 동시에 필드 값을 초기화할 수 있다. 예를 들어 필드가 3개인 경우, 생성자에서는 한 줄로 객체를 생성하며 모든 필드를 초기화할 수 있다. 사실 아래 코드는 1줄이고 Person 클래스 정보도 모르지만, 김씨에다가 .. 2024. 9. 4.
1일1개 (21) - 불변객체란 ? 1일 1개념정리 24.08.09.금 ~  큰 결정에 큰 동기가 따르지 않을 때도 있다. 하지만 큰 결심이 따라야 이뤄낼 수 있다.무조건 무조건 1일 1개의 개념 정리하기 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!#21. 불변객체Java에서 "불변 객체"란, 한번 생성된 이후에 속성이나 필드가 변경되지 않는 객체를 의미한다. 일단 한번 생성되면 값을 바꿀 수 없고, 객체의 메소드들도 객체의 상태를 수정하지 않게 설계되어 있다. 불변객체 만드는 여러 방법우리의 목표는 객체가 변하지 않게 하는 것이다. 이를 위한 여러 방법이 있다. 1. 모든 필드가 final이전에 포스팅 16번째 시간에서 final에 대해 배웠는데, final은 값을 바꾸지 못하게 하여 모든 값을 상수취급한다고 하였다. 참고 - .. 2024. 8. 30.
1일1개 (20) - ==와 equals()의 차이 1일 1개념정리 24.08.09.금 ~  큰 결정에 큰 동기가 따르지 않을 때도 있다. 하지만 큰 결심이 따라야 이뤄낼 수 있다.무조건 무조건 1일 1개의 개념 정리하기 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!#20. '=='와 'equals()'의 차이 Java에는 equals 메소드로도 객체를 비교할 수 있는데, 등호 2개와 무슨 차이일까 ?? 두개의 차이에 대해 가볍게 알아보자.한줄요약 : ==은 객체 메모리 주소를 비교, equals는 객체 내부 값을 비교함. == 연산자두 객체의 참조값을 비교한다. 즉, 객체의 메모리 주소를 비교하므로 동일한 메모리 위치를 참조하는지 확인할 때 사용한다.Person a = new Person(25);Person b = new Person(25);if.. 2024. 8. 29.
1일1개 (19) - static 1일 1개념정리 24.08.09.금 ~  큰 결정에 큰 동기가 따르지 않을 때도 있다. 하지만 큰 결심이 따라야 이뤄낼 수 있다.무조건 무조건 1일 1개의 개념 정리하기 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!#19. staticstatic은 자바에서 클래스 레벨의 변수나 메소드를 다룰 때 사용한다. 이는 클래스의 인스턴스가 아닌, 클래스 자체에 속하는 멤버임을 뜻한다. static은 클래스와 관련있다고 생각하면 편하다. Static 변수 (클래스 변수)정의 : static 변수는 클래스의 모든 인스턴스가 공유하는 변수이다. 이는 클래스가 메모리에 로드될 때 초기화되고 프로그램이 종료될 때까지 유지된다.사용 : 일반적으로 공통된 값을 여러 객체가 공유해야 할 때 사용한다.class Examp.. 2024. 8. 28.
1일1개 (18) - 상속과 구현 1일 1개념정리 24.08.09.금 ~  큰 결정에 큰 동기가 따르지 않을 때도 있다. 하지만 큰 결심이 따라야 이뤄낼 수 있다.무조건 무조건 1일 1개의 개념 정리하기 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!#18. extends VS implements 둘 다 상속에 대한 내용이라 좀 헷갈릴 수 있다. 차이를 알아봅시다. 영단어로만 따지면 extend는 확장, 연장이고 implement는 구현인데 어떤 공통점과 차이가 있을까? extends 상속클래스가 클래스를, 인터페이스가 인터페이스를 상속받을 때 사용한다.클래스가 다른 클래스를 상속받을 때 사용하고, 부모 클래스의 멤버와 메소드를 자식 클래스에서 "그대로" 사용할 수 있다. 추가 오버라이딩 할 필요 없이 부모 클래스에서 구현된 것은 .. 2024. 8. 27.
1일1개 (17) - 오버라이딩 vs 오버로딩 1일 1개념정리 24.08.09.금 ~  큰 결정에 큰 동기가 따르지 않을 때도 있다. 하지만 큰 결심이 따라야 이뤄낼 수 있다.무조건 무조건 1일 1개의 개념 정리하기 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!#17. 오버라이딩 vs 오버로딩이름은 비슷하지만 전혀 다른 이 둘 !!!! Java를 처음 보면 좀 헷갈리는 개념인데, 한번 정리해보자 !! 오버라이딩 OverRiding 상속시 부모 클래스의 메소드를 재정의하는 것을 의미함.오버라이딩된 메소드는 부모 클래스의 메소드와 동일한 이름, 동일한 파라미터를 가져야 함. (동일한 시그니처)이를 통해 자식 클래스는 부모 클래스의 메소드를 필요에 맞게 수정할 수 있다.class Parent { void showMessage() { .. 2024. 8. 26.
1일1개 (16) - 자바 final 1일 1개념정리 24.08.09.금 ~  큰 결정에 큰 동기가 따르지 않을 때도 있다. 하지만 큰 결심이 따라야 이뤄낼 수 있다.무조건 무조건 1일 1개의 개념 정리하기 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!#16. 자바 final자바에서 보이는 이 final은 변수에서만 사용된다고 오해할 수 있는데, 아니다. 변수, 메소드, 클래스에 적용될 수 있으며, 각각 다른 의미를 가진다. 오늘은 final에 대해 알아봅시다. 일단 final은 한마디로 변경이 불가능하도록 만들어주는 키워드고 상황에 따라 다르게 활용된다 !! 일반 변수 final일반변수에 final을 쓰면 그 변수의 값을 한 번 할당하면 이후에는 변경할 수 없다. 마치 상수로 취급할 때 유용하다.로컬 변수 : 메소드 내부에서 정의된.. 2024. 8. 25.
1일1개 (5) - 인터페이스 1일 1개념정리 24.08.09.금 ~  큰 결정에 큰 동기가 따르지 않을 때도 있다. 하지만 큰 결심이 따라야 이뤄낼 수 있다.무조건 무조건 1일 1개의 개념 정리하기 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!#5. 인터페이스란 ?자바에서 말하는 인터페이스는 뒤에서 이야기하도록 하고, 조금 더 넓은 인터페이스 개념에 대해 먼저 알아보자. 인터페이스는 일종의 매개체, 중간다리 역할을 한다. 한마디로 "소통을 가능하게 하는 연결 고리"라고 생각하면 편하다. 아래 예시를 보자. 일반적인 인터페이스일반적으로는 두 시스템 사이에서 상호작용을 돕는 중간다리 정도로 이해한다. 예를 들면, 키보드, 마우스 등도 인터페이스를 사용하고 있는 것이다. 인간이 쓰는 입력을 컴퓨터가 이해하는 형태로 전달하고, 반대.. 2024. 8. 13.
1일1개 (4) - JVM 1일 1개념정리 24.08.09.금 ~  큰 결정에 큰 동기가 따르지 않을 때도 있다. 하지만 큰 결심이 따라야 이뤄낼 수 있다.무조건 무조건 1일 1개의 개념 정리하기 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!#4. JVMJava를 공부하면 나오는 JVM이 무엇일까 ? 이는 Java Virtual Machine의 줄임말인데, OS에 종속받지 않고서 CPU가 자바를 실행하도록 도와주는 가상머신이다. 즉, 자바는 운영체제로부터 독립적으로 실행된다. 대체 이게 무슨말일까 ?? 애당초 OS에 종속받지 않고 CPU가 무언가를 실행하는 것이 가능하긴 한걸까 ??JVM이란 ?일단 위 질문에 대한 답은, VM을 이용하면 가능하다. 우리가 VM을 이야기할 때 보통 OS위에 VM을 올려놓는다고 표현한다. 즉,.. 2024. 8. 12.