동일성(identity) 동등성(equality) 비교 동일성(identity) 동등성(equality) 비교 동일성(identity) 이란?동일성은 두 객체가 메모리에서 동일한 위치를 가리키고 있는지를 나타냅니다. 즉, 두 객체가 완전히 같은 인스턴스인지 비교하는 것입니다. 자바에서는 == 연산자를 사용하여 동일성을 비교합니다. 동등성(equality) 이란?동등성은 두 객체가 동일한 값을 가지고 있는지를 비교하는 것입니다. 자바에서는 equals() 메서드를 사용하여 동등성을 비교합니다. equals() 메서드는 기본적으로 객체의 주소를 비교하지만, 많은 클래스에서 이 메서드를 오버라이드하여 객체의 상태를 비교하도록 합니다. String// 문자열 리터럴String str1 = "hell..
[Java8] 인터페이스 default 메소드 / static 메소드 인터페이스 default 메소드 / static 메소드public interface Foo { void printName(); //default 선언 시 인터페이스 내에서 구현 가능 default void printNameUpperCase(){ System.out.println(getName().toUpperCase()); } //static 선언 시 인터페이스 내에서 구현 가능 static void printAnyThing() { System.out.println("Foo"); } String getName();}기본적으로 인터페이스 내에서는 구현이 불가능 하고 ..
[Java8] 메소드 레퍼런스 메소드 레퍼런스특정 메소드를 간결하게 참조할 수 있는 문법입니다.람다 표현식과 함께 사용되며, 메소드의 이름만으로 해당 메소드를 직접 참조할 수 있게 해줍니다. Greeting class public class Greeting { private String name; public Greeting() { } public Greeting(String name){ this.name = name; } public String getName() { return name; } public String hello(String name) { return "hello " + name; } public stati..
스코프 (Scope) 스코프 (Scope)스코프는 변수나 메서드가 유효하고 접근 가능한 범위를 의미합니다. 자바에서 스코프는 크게 두 가지로 나눌 수 있습니다: 블록 스코프와 클래스 스코프. 블록 스코프 (Block Scope)변수의 스코프는 그 변수가 선언된 블록 내에서만 유효합니다. 블록은 중괄호 {}로 정의된 코드 영역을 의미합니다. public class ScopeExample { public void method() { int x = 10; // x는 method() 메서드 내에서 유효 if (true) { int y = 20; // y는 if 블록 내에서만 유효 System.out.println(x); // x와 y 모두 ..
[Java8] JAVA가 제공하는 기본 함수형 인터페이스 함수형 인터페이스(Functional Interface)함수형 인터페이스를 직접 만들어 사용할 수도 있지만이미 JAVA가 제공해주는 기본 함수 인터페이스를 사용할 수 있습니다. Function Functionapply : 결과 반환A.compose(B) : 조합용 함수A.andThen(B) : 조합용 함수 T 타입을 받아서 R 타입을 리턴하는 함수 인터페이스입력 type과 반환 type이 다를 수 있습니다. Class 형태로 제작 후 사용public class Plus10Functional implements Function { @Override public Integer apply(Integer integer) { ..
[Java8] 함수형 인터페이스, 람다식 변경 방법 함수형 인터페이스(Functional Interface)란?하나의 추상 메서드만을 가지는 인터페이스를 말합니다. SAM (Single Abstract Method) 인터페이스 입니다.이 추상 메서드는 인터페이스가 어떤 동작을 수행할지 정의하며, 함수형 프로그래밍 스타일을 지원하기 위해 사용됩니다. 함수형 인터페이스 예시 함수형 인터페이스 예시 return 없을 때@FunctionalInterfacepublic interface RunSomething { //추상 메소드 void doIt(); //static 메서드 static void printName(){ System.out.println("RunSomethi..