CS
-
[CS/JAVA] Java의 특징 / JVM의 역할 / JVM의 클래스CS/JAVA 2024. 10. 29. 21:55
• Java의 특징을 설명해주세요. - 자바는 객체 지향 프로그래밍 언어입니다.- 기본 자료형을 제외한 모든 요소들이 객체로 표현되고, 객체 지향 개념의 특징인 캡슐화 / 상속 / 다형성이 잘 적용된 언어입니다. - 장점 ⸰ JVM(자바 가상 머신) 위에서 동작하기 때문에 운영체제에 독립적입니다. ⸰ 가비지컬렉터를 통한 자동적인 메모리 관리가 가능합니다. - 단점 ⸰ JVM 위에서 동작하기 때문에 실행 속도가 상대적으로 느립니다. ⸰ 다중 상속이나 타입에 엄격하며 제약이 많습니다. • JVM의 역할에 대해 설명해주세요. JVM은 스택 기반으로 동작하며, 자바 바이트 코드를 운영체제에 맞게 해석해주는 역할을 하고, 가비지 컬렉터를 통해 자동적인 메모리 관리를 해줍니다. • J..
-
[CS/Database] 정규화CS/데이터베이스 2024. 10. 28. 23:18
• 정규화란? 하나의 릴레이션(테이블)에 하나의 의미만 존재하도록 릴레이션을 분해하는 과정이며, 데이터의 일관성 / 최소한의 데이터 중복 / 최대한의 데이터 유연성을 위한 방법입니다. ⸰ 제1 정규형 : 테이블의 컬럼(열)이 원자 값(하나의 값)을 갖도록 분해합니다. ⸰ 제2 정규형 : 제1 정규형을 만족하고, 기본키가 아닌 속성이 기본키에 완전 함수 종속이도록 분해합니다.(여기서 완전 함수 종속이란 기본키의 부분집합이 다른 값을 결정하지 않는 것을 의미) 위 테이블에서 (학생번호, 강좌이름)을 기본키로 설정하면, 성적은 이 기본키를 통해 결정됩니다.즉, (학생번호, 강좌이름) → 성적 이라는 관계가 성립합니다.하지만 강의실 정보(강의실 컬럼)는 강좌이름에 따라 자동으로 결정되므로,강좌이름 →..
-
[CS/Database] 인덱스CS/데이터베이스 2024. 10. 28. 23:18
• 인덱스에 대해 설명해주시고, 장/단점에 대해 말해주세요. 인덱스란 테이블을 처음부터 끝까지 검색하는 방법인 FTS(Full Table Scan) 과는 달리 인덱스를 검색하여 해당 자료의 테이블을 엑세스 하는 방법입니다. 예를 들어, DB를 책으로 비유한다면 데이터는 책의 내용일 것이고, 데이터가 저장된 레코드 주소는 인덱스 목록에 있는 페이지 번호일 것입니다. 인덱스는 항상 정렬된 상태를 유지하기 때문에 원하는 값을 검색하는데 빠르지만, 새로운 값을 추가하거나 삭제, 수정하는 경우에는 쿼리문 실행 속도가 느려집니다. 즉, 인덱스는 데이터의 저장 성능을 희생하고, 그대신 데이터의 검색 속도를 높이는 기능이라 할 수 있습니다. 📓 레코드, 필드?· 레코드 : 논리적으로 연관된 필드의 집합 (= 행, 튜..
-
[JAVA] Class / Constructor / 객체지향프로그래밍CS/JAVA 2024. 6. 15. 21:31
- ★class가 뭐냐면?변수와 함수 보관하는 통class Test { String name = "kim"; void hello(){ System.out.println("안녕"); }} - ★ class에 있던 변수, 함수 쓰려면?new 키워드 써서 복사부터 하기!var test = new Test();new 클래스() 라고 쓰면 클래스에 있던 변수랑 함수 복사해주세요~ 라는 뜻그러면 진짜로 클래스에 있던 변수랑 함수를 복사해온 이상한 자료가 그 자리에 남음(=> 변수랑 함수 복사본 담고있는 자료를 object라고 부름) - object 안에 저장된 변수랑 함수를 가져다쓰고 싶으면?점찍어서 변수나 함수 꺼내서 쓰면 됌var test = new Test();System.out.printl..