2025/06 8

Oracle DB(01) - 데이터베이스

데이터베이스와 데이터베이스 시스템data: datum의 복수형, 정량화 데이터베이스 시스템 구성 SQL - 데이터베이스 언어 데이터 정의어(DDL, Data Definition Language)데이터 조작어(DML, Data Mainpulation Language)데이터 제어어(DCL, Data Control Languate)데이터베이스 사용자DBA(Database Administrator): 최고권한 DB 설계자SQL 사용자응용프래그래머일반사용자3단계 데이터베이스 구조외부 스키마(view), 개념 스키마(coneptual schema), 내부 스키마(internal schema) 키 : 특정 튜플을 식별할 때 사용하는 속성 혹은 속성의 집합기본키(후보키중 선정된 키)+대체키(기본키로 선정되지않은 ..

개발/Database 2025.06.30

TIL250630: 메모리 관점에서 본 Java

java 복습 x.java -(컴파일)-> x.class(바이트코드) -(로더)->( Mainthread )[JVM] 실행 자바에서 O.O.P란?Object-Oriented Programming (객체지향프로그래밍): 객체(포인터)를 사용해서 프로그래밍한다.디자인패턴객체로 보겠다O.O.P + Functional programming, 자바는 클래스기반으로 순수함수가 없다.자바에서 매소드는 따로 매소드영역에 생성되기 때문에 호출되는 클래스를 알아야한다.그래서 this가 필요한데 자바는 매소드에 0번째 매개변수로 this를 받아온다.(직접 사용자가 선언하지 않고 컴파일 단계에서 자동으로 붙여준다)

개발/TIL 2025.06.30

TIL250624: Java는 순수함수가 없다?

이것이 자바다(696~) 16.1 람다식이란?람다식이란 함수를 하나의 식으로 나타낸 익명함수이다.java에서 람다식을 사용하려면 js와 달리 인터페이스가 필요하다.interface MyFunction { int calc(int x, int y); // 추상매서드}public class LambdaTest { public static void main(String[] args) { MyFunction add = (x, y) -> {return x + y;}; MyFunction minus = (x, y) -> x - y; // return 생략 System.out.println(add.calc(10, 20)); System...

개발/TIL 2025.06.24

TIL250620

이것이 자바다(p.350~)08. 인터페이스 인터페이스는 또 다른 형태의 클래스이며 참조 변수형으로 사용된다. 인터페이스의 추상매서드를 재정의한 구현 클래스로 객체(구현객체)를 만든다. 구현객체는 인터페이스 타입으로 참조 될 수 있다. 추상 클래스와 인터페이스의 차이항목 인터페이스 참조구현 클래스 참조참조 타입인터페이스구현 클래스접근 가능한 메서드인터페이스에 정의된 것만클래스의 모든 public 메서드유연성높음 (다형성 활용 가능)낮음확장성인터페이스를 구현한 다른 객체로 쉽게 교체 가능해당 클래스에 종속됨상황클래스가 어떤 기능을 반드시 수행해야 함을 보장하고 싶다여러 클래스에 공통 속성과 동작을 물려주고 싶다 ++다운캐스팅 Base obj = new Derived(); /* Derive..

개발/TIL 2025.06.20

TIL250619: Java 클래스 상속(js와 비교)

이것이 자바다(p.244~) JVM 메모리는 크게 메소드영역(메소드, 상수, 정적필드, 생성자 코드) 힙영역(객체), 스택영역(지역변수, 매개변수...)으로 구분되고메소드는 메소드영역에 저장되어 인스턴스 객체별로 할당하지 않고 포인터로 공유되어 사용된다. 6.9 인스턴스 멤버인스턴스(instance) 멤버: 클래스로 부터 생성된 객체(인스턴스)에 속하는 변수와 메서드 6.10 정적 멤버정적(static) 멤버: 클래스에 속하는 변수와 메서드(객체 없이 사용 가능) /* static 멤버(멤버변수, 멤버함수) 모든 객체가 용유한다. 클래스 멤버이다. 선언과 동시에 초기화를 해야한다. 공통된 멤버인 경우에 사용한다.*/class Counter { static int staticCou..

개발/TIL 2025.06.20

TIL250618: java 입출력(Scanner), list, map, set

이것이 자바다(p.72~) 2.13 키보드 입력 데이터를 변수에 저장 표준스트림: 입출력을 위해 OS가 할당한 메모리 공간으로 아래와 같이 3가지가 있다. (java.lang)System.in자바에서 사용하는 표준 입력 스트림으로 타입은 InputStream이고 내부적으로 운영체제의 FD 0번(stdin)에 연결되어 있다.stdin과 동일하게 키보드 입력을 받는 통로로 사용됨. System.out자바에서 사용하는 표준 출력 스트림으로, 타입은 PrintStream이며 내부적으로 운영체제의 FD 1번(stdout) 에 연결되어 있다.stdout과 동일하게 콘솔(터미널)로 출력하는 통로로 사용됨. System.err자바에서 사용하는 표준 에러 출력 스트림으로, 타입은 PrintStream이며 내부적으로 운영..

개발/TIL 2025.06.18

TIL250617 : Java 자료형

이것이 자바다 (p.4~) class = 변수 + 함수 : 사용자 정의 자료형(type)이다. (C에서 Struct) java는 작성된 바이트코드를 JVM을 통해 해당 운영체제가 이해하는 기계어로 번역하고 실행한다. public class Main { public static void main(String[] args) { //TIP 캐럿을 강조 표시된 텍스트에 놓고 을(를) 누르면 // IntelliJ IDEA이(가) 수정을 제안하는 것을 확인할 수 있습니다. System.out.printf("Hello and welcome!\n"); System.out.println(); for (int i = 1; i 을(를) 눌러 코드 디버그를..

개발/TIL 2025.06.17