JAVA 18

자바 상속의 개념, 특징, 그리고 간단한 예시

상속이란?   상속은 객체지향 프로그래밍(OOP)에서 기존 클래스(부모 클래스 또는 슈퍼 클래스)의 속성과 메서드를 새로운 클래스(자식 클래스 또는 서브 클래스)에 물려주는 개념이다. 이를 통해 코드 재사용성을 높이고, 클래스 간 계층 구조를 만들어 기능을 확장하거나 수정하기 용이하다.  상속의 주요 특징코드 재사용성: 부모 클래스의 기능을 그대로 물려받아 중복 코드를 줄일 수 있다.확장성: 자식 클래스는 부모 클래스의 기능을 확장하거나 수정할 수 있다.is-a 관계: 자식 클래스는 부모 클래스의 일종으로 간주된다.다형성: 부모 클래스의 메서드를 재정의(오버라이딩)하여 다양한 형태로 동작할 수 있다.상속의 문법 자바에서 상속은 extends 키워드를 사용하여 구현한다.class 부모클래스 { // ..

JAVA/이론정리 2024.12.18

HashMap의 정의 와 실습

HashMap이란?HashMap은 Java에서 데이터를 키(key) 와 값(value) 쌍으로 저장하는 자료구조이다. 주로 빠른 데이터 검색과 삽입을 위해 사용된다 전화번호부랑 비슷하다 생각하면 쉽다. 검색창에 이름을 입력 전화번호 결과가 나온다이때 이름 = Key 이고 전화번호 =Value 인것이다즉 무언가를 찾기위한 검색어가 Key 이고 그 검색어로 나온 결과가 Value 라고 생각하면된다 아래는 위 상자의 말을 그림으로 나타 낸것으로 가로 줄 한 개가 디폴트값으로 설정된 상자를 만드는 작업이 HashMap을 만든다고 생각하면되고 그리고 세로줄을 그어가며 칸을 만들어 각각 key 칸과 value 칸에 데이터를 저장한다고 생각하면 쉽게 이해가된다   HashMap의 기본 구조는 아래와 같다.HashM..

JAVA/실습 2024.12.17

ArrayList의 정의와 실습

왜 필요한가? DataBase :데이타를 영구저장 소프트 웨어Data Stucture : 데이터를 저장하는 방식-- 변수 1개에 여러개의 데이터를 저장할 수 있어야한다.-- 신규데이터를 추가 할 수 있어야한다.(Array배열은 저장못함)-- 저장된 데이터를 가져올 수 있어야한다-- 기존 데이터는 수정할 수 있어야한다-- 필요없는 데이터는 삭제할 수 있어야한다.자바에서 ArrayList, HashMap 방식이 있는데 오늘은 ArrayList방법을 알아보겠다이름을 저장하려고한다 이때 자바는 Arry(배열)은 처음 만들때 갯수를 정해야하므로 프로그래을 유연하게 만들 수 가 없다. 하지만  ArryList 갯수 제한이 없이 데이터를 마음껏 추가할 수 있는 ArryList를 실무에서는 많이 사용한다.   숫자 ..

JAVA/실습 2024.12.17

문자열 관련 처리

문자열 관리 처리 방법은 아래와 같다.  문자열 생성 방법들은  지금까지 한 방법과 크게 다른거 없다  문자를 숫자로 바꾸는 방법은  Intrger.valuse0f(    ).intValue();를 쓰면 되는데  두번째 방법이 좀 더 짧고 실무에서도 많이 쓴다. 비슷하게 Intger를 만저 쓰고 . 을 쓴 다음 parseInt(   )을 써주면 된다 더블도 미슷 한 방법으로 하면된다. 자세한 내용은 위 사지을 참고하면된다.   숫자를 문자열로 변환하는 방법은  "를 두개한다음  + 변수 이름을 해서 저장할 변수 이름을 정해주면된다  문자열의 함수들은 문자열의 [의]가 제일 중요하다 사람의 언어인 [의]는 컴퓨터 언어로는 [.]이다 이를 잘 알고만있어도 나중에 기억이 나지 않을때 AI에게 물어보기가 수월해..

JAVA/실습 2024.12.16

Abstract(추상클래스)&Interface(인터페이스)

-Abstract(추상클래스) 간단한 원리부터 설명하겠다.  추상 클래스는 미완성도 설계도라고 생각하면된다예를 들어 동물이라는 클래스가 있다 가정하겠다. 하지만 동물이라는 것은 너무 광법위해서 구체적으로 어떤 소리를 내는지 정확히 정의하기 어렵다 이럴때 추상 클래스를 사용하는 것이다 동물이라는 추상클래스를 만들고 소리내기라는 추상 메소드를 넣는다그럼 고양이 개 등 실제로 동물 클래스들은 이 동물 추상 클래스를 상속받아 만든다 각동물 클래스는 소리내기 메소드를 자신에 맞게 구현하면되는 것이다이는 공통된 특성을 한곳에서 관리하기 용이하며 새로운 동물을 추가 할떄 기본 구조를 재사용할 수 있어 편리하다 간단히 말하면 추상클래스는 기본틀을 제공하고 구체적인 내용은 이를 상속받은 클래스에서 채워 넣는 방식을 이야..

JAVA/실습 2024.12.16

스택(static) 과 힙(Heap)

스택(static)이란? 스택은 프로그램에서 임시로 사용하는 작은 메모리 공간이다. 다음과 같은 특징이 있다용도: 함수 호출 시 생성되는 지역 변수와 매개변수를 저장한다 작동 방식: 접시를 쌓고 사용하는 것처럼, 가장 최근에 추가된 데이터를 먼저 사용한다메모리 관리: 함수가 호출될 때 자동으로 할당된다 함수가 종료되면 자동으로 해제된다장점: 속도가 매우 빠르다.프로그래머가 직접 메모리를 관리할 필요가 없다 제한: 크기가 고정되어 있어 큰 데이터를 저장하기 어렵다스택은 마치 책상 위의 작은 서랍과 같아서, 자주 사용하는 작은 물건들을 빠르게 넣었다 뺐다 할 수 있는 공간이라고 생각하면된다 힙(heap)이란?힙 메모리는 프로그램에서 사용하는 큰 창고 같은 공간입니다. 주요 특징은 다음과 같다. 동적 할당: ..

JAVA/이론정리 2024.12.15

객체와 인스턴스

객체란?  데이터와 기능을 가집니다. 실제 세상의 것을 프로그램으로 표현합니다. 서로 상호작용할 수 있습니다. 쉽게 말해 "객체는 프로그램 안의 살아있는 개체"라고 생각하면 됩니다   인스턴스란?  인스턴스는 쉽게 말해 "설계도(클래스)로 찍어낸 실제 물건(객체)"입니다. 비유로 이해하기 자동차 설계도 = 클래스 실제 도로에서 달리는 자동차 = 인스턴스특징 new 키워드로 생성 각각 고유한 메모리 공간을 가짐 서로 다른 상태를 가질 수 있음  즉, 인스턴스는 "클래스라는 틀로 찍어낸 실제 객체"라고 생각하면 됩니다.

JAVA/이론정리 2024.12.15

함수와 메소드의 정의

프로그래밍을 하다 보면 자주 접하게 되는 개념 중 하나가 바로 함수와 메소드입니다. 이 두 용어는 비슷하게 사용되기도 하지만, 그 의미와 사용 방식에는 큰 차이가 있습니다. 이번 포스팅에서는 함수와 메소드의 정의, 차이점, 그리고 비유를 통해 쉽게 이해할 수 있도록 설명해 드리겠습니다. 함수(Function)란?함수는 특정 작업을 수행하고 결과를 반환하는 코드 블록입니다. 프로그래밍 언어에 따라 내장 함수가 있을 수 있으며, 사용자가 직접 정의할 수도 있습니다. 함수는 독립적으로 존재하며, 입력값을 받아서 결과를 반환하는 구조로 되어 있습니다. 예를 들어, 수학에서의 함수처럼 어떤 입력값을 주면 그에 대한 결과를 반환하는 것이죠.함수는 다음과 같은 특징을 가지고 있습니다:독립성 : 함수는 특정 클래스나 ..

JAVA/이론정리 2024.12.11