JAVA 썸네일형 리스트형 [Java] 람다(Lamda) 람다(Lamda)익명 클래스를 간단하게 표현하는 방식이다. 즉, 익명 클래스의 메서드를 코드 블록으로 만들어서 변수에 넘기거나 인자로 전달 할 수 있게 해주는 기능이다. 람다 문법Calculator c = (a, b) -> a + b; // 람다식Calculator c1 = new Calculator() { // 익명 클래스 @Override public int sum(int a, int b) { return a + b; }};익명 클래스를 사용할 때보다 훨씬 간결하게 표현할 수 있다.컴파일러가 람다 표현식을 통해 익명 클래스를 내부적으로 만들어 준다. 조건 : 함수형 인터페이스 (자바에서 권장)@FunctionalInterfacepublic interface Ca.. 더보기 [Java] 추상 클래스(abstract class)란? 추상 클래스(Abstract class)공통적인 속성과 기능을 정의하지만, 완전한 구현을 하지 않고, 자식 클래스가 반드시 구현해야 할 부분만 선언해놓는 클래스이다.쉽게 말해서 자식 클래스에게 틀을 제공하고 자식 클래스가 구체적인 내용을 채워 넣는 것이다. 추상 클래스 선언abstract 키워드를 사용해서 선언한다.하나 이상의 추상 메서드(몸체 없는 메서드)를 가질 수 있다.직접 객체를 생성할 수 없다. (생성 시도 시 컴파일 오류 : 불완전한 클래스는 직접 사용할 수 없다.)추상 메서드가 하나라도 있으면, 추상 클래스로 선언해야 한다.public abstract class Animal {} 추상 클래스 특징특징설명인스턴스화 불가직접 객체를 만들 수 없다. (new로 생성 불가)상속 전용다른 클.. 더보기 [Java] 오버라이딩(overriding)이란? 오버라이딩(overriding)객체 지향 프로그래밍(OOP)에서 자식 클래스가 부모 클래스의 메서드를 재정의하는 것을 의미한다. 오버라이딩 방법오버라이딩할 메서드의 이름과 매개변수 동일해야 한다. 부모 클래스의 기능을 바꾸거나 더 확장할 수 있다.다형성(polymorphism)을 구현할 때 자주 사용된다. 사용 예제 더보기Mainpackage practice;public class Main { public static void main(String[] args) { System.out.println("--강아지--"); Dog dog = new Dog(); dog.move(); dog.speak(); System.out.prin.. 더보기 [Java] Wrapper Class란? Wrapper Class기본 자료형(primitive type)을 객체(object)로 감싸서 사용할 수 있게 해주는 클래스이다.간단히 말해서, 기본형 데이터를 객체로 다뤄야 할 때 사용하는 클래스이다. public final class Integer extends Number implements Comparable, Constable, ConstantDesc { .. private final int value; .. {Wrapper Class는 객체 생성 시, 생성자의 인자를 통해 각 자료형에 알맞은 값을 내부적으로 저장하고, 편리한 데이터 처리를 위한 여러 메서드가 정의되어있다. Wrapper .. 더보기 [Java] 상속(Inheritance)이란? 상속(Inheritance)상속은 객체 지향 프로그래밍에서 기존 클래스의 필드(변수)와 메서드를 새로운 클래스가 물려받아 재사용할 수 있게 해주는 기능이다. 상속을 안하는 경우코드를 보며 살펴봅시다.더보기Mainpackage Inheritance;public class AnimalMain { public static void main(String[] args) { Dog dog = new Dog(); dog.move(); dog.bite(); Cat cat = new Cat(); cat.move(); cat.scratch(); }} Cat classpackage.. 더보기 [Java] Queue 자료구조와 Queue 인터페이스란? Queue 자료구조선입 선출(First In, First Out, FIFO) 방식의 자료구조이다. Queue 인터페이스선입선출(FIFO) 구조를 정의하고, 큐 자료구조에 필요한 기본 동작(메서드들)을 약속하는 추상적인 인터페이스이다. import java.util.Queue;자바 util 패키지에 포함되어 있다. 1. 객체 생성Queue set = new Queue(); // ❌ 불가능Queue set = new LinkedList(); // ✅ 가능Queue set = new PriorityQueue(); // ✅ 가능Queue set = new ArrayDeque(); // ✅ 가능Queue set = new concurrentLinke.. 더보기 [Java] Set 자료구조와 Set 인터페이스란? Set 자료구조중복을 허용하지 않는 자료구조이다. Set 인터페이스중복을 허용하지 않는다. (같은 객체를 두 번 이상 저장할 수 없다.)순서를 보장하지 않는다. (HashSet의 경우)null 값 저장 가능하다. (단, 하나만) import java.util.Set;자바 util 패키지에 포함되어 있다. 1. 객체 생성Set set = new Set(); // ❌ 불가능Set set = new HashSet(); // ✅ 가능Set set = new LinkedHashSet(); // ✅ 가능Set set = new TreeSet (); // ✅ 가능Java에서 제공하는 Set 인터페이스(Set)는 객체를 직접 생성 ❌. (추가 정보 확인 : https://kimyongjun0129.tistory.c.. 더보기 [Java] List 자료 구조와 List 인터페이스란? List 자료구조순서가 있는 데이터 집합을 표현하는 자료구조이다.데이터 추가된 순으로 나열된다.중복을 허용한다.각 요소는 인덱스를 통해 순서대로 접근 가능하다.데이터의 삽입, 삭제, 검색 등이 가능하다. List 인터페이스순서가 있는 요소들의 컬렉션(Collection)을 정의하며, 중복된 요소를 허용한다.import java.util.List;자바 util 패키지에 포함되어 있다. 1. 객체 생성List list = new List(); // ❌ 불가능List list = new ArrayList(); // ✅ 가능List list = new LinkedList(); // ✅ 가능List list = new Stack(); // ✅ 가능Java에서 제공하는 List 인터페이스(List)는 객체를 직.. 더보기 이전 1 2 3 4 5 다음