Banner

My Tech Blog (Java)

오늘의 명언
· Java
변수는 오버라이딩X, 메서드는 오버라이딩Oclass Parent { String name = "Parent"; void printNames() { System.out.println(name); }}class Child extends Parent { String name = "Child"; void printNames() { System.out.println(name); }}public class Main { public static void main(String[] args) { Child c = new Child(); c.printNames(); // (1) Parent p = ne..
· Java
"변수는 오버라이딩되지 않는다"는 말은 변수를 참조할 때 참조 변수의 타입 기준으로 결정된다는 것이다.메서드는 동적 바인딩(실행 시점 기준)변수는 정적 바인딩(컴파일 시점 기준)즉 변수는 오버라이딩 되지 않는다 → 참조타입 기준,메서드는 오버라이딩 된다 → 실제 객체 기준메서드 안의 변수 → 선언된 클래스 기준 (예 - 그 메서드가 정의된 클래스의 name필드 사용)this.name → this객체의 클래스 내 필드, 즉 메서드가 정의된 클래스에서의 this 기준super.name → 부모 클래스의 name 기준, 자식 클래스에서 부모 필드 강제 접근class Parent { String name = "Parent"; void printName() { System.out.pr..
· Java
this는 자바(Java)를 포함한 여러 객체지향 언어에서 객체 자기 자신을 가리키는 키워드로 알려져 있다. this는 현재 객체의 참조(reference)로서 지금 실행되고 있는 메서드를 소유하고 있는 인스턴스를 가리킨다. setter 메서드안에서 가장 쉽게 this의 활용법을 확인할 수 있다. public class Person { private String name; public void setName(String name) { this.name = name; }}this.name → 객체의 멤버 변수 namename → 메서드의 매개변수만약에 this를 안 쓰면 어떻게 될까?public void setName(String name) { name = name; /..
· Java
1. JVM (Java Virtual Machine) 이란?JVM은 OS를 대신해서 컴파일된 자바 바이트 코드를 실행하는 가상의 운영체제이다. 즉, OS에 종속받지 않고 CPU가 JAVA를 인식, 실행할 수 있게 하는 가상 컴퓨터이다.JVM에 의해 JAVA는 '운영체제에 독립적'이라는 장점을 가진다. JVM은 자바 언어에서만 사용하는 것이 아니다. 코틀린, 스칼라 언어에서도 JVM 동작 방식을 그대로 따른다.JVM의 역할은 자바 애플리케이션을 클래스 로더를 통해 읽어 자바 API와 함께 실행하는 것이다. 2. 자바 코드가 컴파일 되는 과정위의 동작처럼 Java 소스코드, 즉 원시코드(*.java)는 CPU가 인식을 하지 못하므로 기계어로 컴파일을 해줘야 한다.이 때, Java는 이 JVM 이라는 가상머..
· Java
자바의 Error, Exception에 대해 알아보려 한다. 이 글을 쓰는 이유는 원래 Runtime Exception에 대해 설명하기 위해서이다. RuntimeException (런타임 예외)은 반드시 예외 처리를 하지 않아도 된다.자바에서는 예외를 두 가지로 나눈다.Checked Exception (검사 예외): Exception을 상속하지만 RuntimeException은 상속하지 않은 예외들 → 반드시 try-catch나 throws로 처리해야만 한다.Unchecked Exception (비검사 예외): RuntimeException을 상속한 예외들 → 컴파일러가 강제하지 않아서 꼭 처리하지 않아도 된다.// RuntimeException 계열 (Unchecked) - 꼭 처리 안 해도 됨thro..
· Java
🍩 용어 정리JDK : Java Development Kitbin : binary폴더. 보통 실행파일을 bin이라고 함Java.exe : cmd에 java라고 치면 실행되는 파일javac.exe : cmd에 javac라고 치면 실행되는 파일. java파일을 컴파일하여 class파일로 만들 때 사용한다.💡 "javac"는 "java" (자바) + "c" (씨) = "자바 씨"풀어서 말하면 "Java Compiler"의 약자라서, 자연스럽게 "자바 씨"라고 부른다. 🚀 Java라고 명령을 내렸을 때 일어나는 일✅ java 파일이 어디서든 실행되는 이유👉 환경변수(Path) 덕분! `Path` : 명령어(java, javac 등)를 어디서든 찾을 수 있게 해주는 환경변수. 설정 방법 :내 컴퓨터 →..
· Java
자바가 자바 가상 머신(JVM) 위에서 실행된다는 것은 익히 알려진 사실이다. 이클립스를 다운로드할 때는 이클립스 버전에 호환되는 JDK도 함께 설치한다.또한, 이클립스 설정에서 [Installed JREs]에서 JRE를 추가하면서, 기존에 두루뭉술하게 알고 있던 JDK와 JRE의 차이가 궁금해졌다.그래서 오늘은 개념을 명확히 정리해보고자 한다.  1. JDK vs JRE vs JVM 차이진짜 간단히 요약하면  자바로 개발할 때 → JDK 필요 (컴파일러 포함)그냥 실행만 할 때 → JRE만 있어도 됨실제 실행 담당 → JVM 위에서 돌아감...  JRE는 실행용, JDK는 개발용이라고 이해하면 쉽다. ■ JDK (Java Development Kit)`.java` 파일을 `.class(바이트코드)`로 ..
· Java
Spring 프로젝트에서는 서비스 레이어에서 인터페이스(*Mgr.java)와 구현 클래스(*MgrImpl.java)가 분리되어 있어, F3(Open Declaration)를 눌러도 인터페이스로만 이동하는 불편함이 있다. 이를 해결하기 위해 Open Implementation 기능을 키보드 단축키(Ctrl + F3)로 설정하는 방법을 정리 해 본다. 🔹 해결 방법: Open Implementation 단축키 설정하기 1. Eclipse 환경설정 Window → Preferences (또는 Alt + W, P)2. 좌측 메뉴에서 General → Keys 선택3. "Open Implementation" 단축키 지정 type filter text에 Open Implementation 입력 Binding(단축..
상단으로