본문 바로가기

클래스와 객체 public static void main의 main도 메서드이다. main 은 jvm이 동작할때 가장 먼저 호출하게되는 메서드이다. public class 클래스명 자료형 필드명1 자료형 필드명2 // 객체의 속성 반환형 메소드1{} 반환현 메소드2{} // 객체의 기능 객체 생성 public class 클래스명 ... package oop; public class People { // 1. 필드(속성,, 특성,, 데이터) // 2. 메소드(기능, 행위, 행동) int humanAddress; char sex; int age; float weight; String name; int leg = 2; public void walk() { System.out.println(leg + "개의 다리로 걷는다."..
객체 지향프로그래밍 (Object Oriented Programming) 『 OOP 특징 』 Class : object를 제작하기 전 설계하는 도면 ( Object화를 위해 필요 ) object: Class를 가지고 실체화 시킨것 ( Class 를 기반으로 실제 메모리에 할당됨) # object 는 instant (인스턴스) 라고도 함. 즉, Class를 실체화 시킨 Instant, 인스턴스화 라고 한다. 클래스를 인스턴스화 한 것 - 객체 【 Object 】 Field (속성) -> 데이터 : 이름,키,나이,성별 Method(행동) -> 논리 : 걷는다, 먹는다, 계산하다 -> 객체가 하는 행위,행동 ( 기능 ) 『 OOP 의 특징 』 「추상화(Abstract)」 객체에서 공통된 속성[특성,데이터]과 행위[메서드]를 추출하는 기법, 필요한 정보를 위주로 간추려 구성. 코드 ..
메서드 『메서드』 어떤 클래스 내에서 특정 기능을 하는 함수 Scanner 내의 NextInt등 메서드는 패러미터(매개변수)를 받아 반환을 위해 클래스 내에 선언하는 하나의 기능 함수이다. 예를들어 equlas는 받아온 매개변수 [스트링] 을 통해 반환값을 boolean 으로 변환해 true 혹은 false를 출력한다. 쉽게 설명하면 nextInt(); 처럼 소괄호가 붙는 것들을 대부분 메서드라 부른다. 함수 입력값(매개변수) => 함수 => 결과값(반환값) 『 메서드의 사용 이유 』 객체의 행위를 표현 반복적으로 사용되는 코드 최소화 작업을 수행하기 위해 명령문을 집합 public class ex01 { public static void main(String[] args) { int bb = addNumber..
데이터 제어어 (DCL) 『 DB보안의 기본 』 1. user 생성 2. 권한 부여/회수 시스템 권한: 데이터베이스 액세스 권한 객체 권한: 객체의 내용을 조작할 수 있는 권한 유저의 생성, 다만 다음과 같이 생성을 하게 되면 유저는 데이터 베이스의 모든 영역을 사용할 수 있게 되어버린다. 유저가 생성되었지만, 세션에 접근할 권한이 없어 관리자가 grant 명령어를 통해 세션 접근 권한을 주어야 한다. 테이블 생성 권한을 줘도 저장공간을 할당해주지 않으면, 유저는 테이블 생성들의 행위를 할 수 없다. 따라서 유저에게 connect, resource 를 통해 할당해주어야 한다. connect 롤 : 접속,접근에 관련된 권한들 resource 롤 : 저장공간에 관련된 권한들 create role [manager]; grant a,b..
시퀀스 nocache, nocycle 옵션은 생략 가능하다. nocache : nocycle : 최대 번호가 넘어가면 다시 첫번째 값으로 가는데, 이 옵션을 취소함. nextval은 값을 추출, currval은 추출된 값을 저장 300 / 300, 310 / 300 이런식 values에 시퀀스명.nextval 을 통해 삽입할 수 있다, 그러면 위에 해 준 시퀀스 설정대로 아래 사진과 같이 시퀀스 번호가 300/ 310/ 320 과 같이 10씩 늘어나는 것을 볼 수 있다. 시퀀스는 한 번 추출이 된 값을 다시 추출하지 않는다. rollback 을 시킨다 하더라도 시퀀스는 독립된 개체이기 때문에 rollback의 영향을 받지 않는다. 그리고 다른 테이블에서 삽입으로 sequence 를 생성한다 해도, 그것은 공유되..
뷰(view) 단순 뷰 : 테이블 그대로를 보여주는 뷰 복합 뷰 : 원본 데이터가 아닌 변경된 값을 보여주는 뷰 『 뷰 생성 』 create view [뷰명] 뷰는 논리테이블, 가상테이블이며 테이블은 물리적으로 테이블 데이터가 저장공간을 할당받으며 저장되지만 뷰는 물리적 구조가 없으며, 사용자가 입력한 문장에 대한 텍스트를 저장한다. 그러니까 저장된 데이터 자체는 없지만, 사용자는 뷰를 테이블인것 처럼 사용하게 되는 것이다. CREATE문과 REPLACE 문이 있다. 이것은 뷰가 저장하고 있던 SQL 문장, 텍스트를 대체시키는 것이다. 조인의 경우, 테이블만이 아닌 뷰 또한 조인이 가능하다. 『 뷰 제거 』 DROP VIEW [뷰명]; // 뷰가 가진 텍스트를 제거하므로, 테이블에는 지장이 없다. 『인라인 뷰』 fro..
제약 조건 설정 제약 조건 : 무결성을 보장하기 위해 테이블을 구성하고 있는 컬럼들에 부가하는 것 ○ NOT NULL - 값이 있어야 함 // 컬럼 레벨만 추천 ○ UNIQUE - 중복허용, null 허용 ○ PRIMARY KEY ○ FOREIGN KEY - 외래키는 PK와 UK만을 참조한다 ○ CHEKC - 사용자가 조건을 설정 제약조건 지침 ○ 제약조건 이름을 지정하지 않으면 Sys_cn 형식 이름으로 자동 지정 ○ 제약조건 생성시기는 테이블이 생성될 때 혹은 테이블이 생성된 후 이다. [주로 생성될 때] ○ 데이터 딕셔너리에서 제약조건 확인 가능. create table xxx { x number(1) constraint [제약조건이름] [제약조건], // 컬럼 레벨 y number(1) not null, // c..
배열의 사용 자료구조에는 스택,큐,리스트,트리,배열 등이 존재. int[] [변수명] = new int[길이]; 와 같이 선언 new = 레퍼런스 변수를 선언하는 키워드 배열타입 int[] [변수명]으로 작은 공간에 레퍼런스 변수만을 선언. 이것은 이름만 존재하는 공간만 선언 되는 것임. 레퍼런스 변수: 참조하는 변수[위의 변수명 array], 배열이 선언될 때 배열이 갖는 주소 값. ex: Array[0] =3; 에서, 0은 인덱스, 3은 데이터. 인덱스 = 방번호라고 생각하면 편함 배열은 저장공간이 두가지 공간으로 나뉘는데 작은 공간(stack)은 참조하는 배열 레퍼런스 변수가 큰공간의 배열을 가리키는 것이고 큰 공간(array)은 배열 내 인덱스로 데이터가 존재하는 것이다. [0] 여기서 작은공간 -> 큰공간에..