목록IT (81)
♥️7분 빠른 소식 전달해 드립니다♥️
sizeof 연산자 소괄호에있는 자료형의 크기를 구하는 연산자 괄호 안에 사이즈를 구하고자 하는 변수이름이나 상수이름, 자료형의 이름을 적어주시면 됩니다. 변수의 종류 실수형 변수는 사이즈가 커진다고 저장할 수 있는 값의 범위가 커진다는 것이 아니라, 표현하는 소수점의 정확도가 높아진 것입니다. signed와 unsigned signed 우리가 일반적으로 char을 선언하면 저장 가능한 숫자 범위가 -128 ~ +127입니다. 이처럼 일반적인 자료형에는 (signed)라는 기호가 암묵적으로 포함되어있습니다. unsigned 정수형의 양수 범위를 두 배로 늘리는 자료형(0 이상의 값만 표현하는 자료형) 예를 들어 char형 변수는 -128 ~ +127까지 표현하는 값의 ..
상수 어떤 상황에서도 변한지 않는 값을 의미한다. ( 중간에 값이 바뀔 염려가 없다.) (변수 : 값이 변한다. / 상수 : 값이 변하지 않는다.) ① 리터럴 상수 ( 문자 그대로 ) : 글자 그대로의 의미가 있어서 이름이 없는 상수 정수형 상수, 실수형 상수, 문자 상수, 문자열 상수 ② 심볼릭 상수 ( 기호화 ) : 상수를 기호화하여 변수처럼 이름이 있는 상수 const키워드 ex) const int NUM = 10; const double PI = 3.14; #define문 ex) #define PI 3.14 #define NUM 100 #은 전처리기여서 main 안에 들어가기 전에 프로그램을 돌리는 것입니다. (=전처리기야 정의해줘) 그래서 #define문은 main{ }안에 들어가는 것이 아니라..
scanf( ) 함수 scanf( )로 입력받은 데이터를 저장하고 활용하는 방법 → 입력 대기상태로 만들고 사용자가 값을 입력할 때까지 계속 기다림 기본 구조 → scanf("입력서식문자", &변수); # practice ① → 변수의 값을 선언만 한 이유는 나중에 사용자에게 값을 입력받은 값으로 초기화할 것이기 때문입니다. ② ③ → 한 번에 여러 정수를 입력받을 때는 사용자가 구분을 하기 위해 띄어쓰기를 해도 됩니다. printf( )함수와 scanf( )함수 비교 printf( ) → 모니터에 데이터 출력하기(출력 서식 필요) scanf( ) → 키보드로 데이터 입력받기(입력 서식 필요) * 입력 서식 문자
비트 연산자 비트와 바이트 비트(Bit) : 2진수 값 하나(0 또는 1)를 저장할 수 있는 최소 메모리 공간 컴퓨터는 모든 정보를 0과 1로 표현 1비트 □ (0,1) 2개 2^1 2비트 □□(00,01,10,11) 4개 2^2 3비트 □□□ 2^3 = 8개 n비트 2^n개 1Byte = 8Bit □□□□□□□□=1Byte = 256개 2진수, 10진수, 16진수, 8진수 2진수 : 0 ~ 1까지의 숫자를 사용(컴퓨팅 세계 표현번) 10진수 : 0 ~ 9까지의 숫자를 사용(일상적인 표현법) 16진수 : 0 ~ 9까지의 숫자를 사용하고, 9이후부터 a, b, c, d, e, f 문자 사용(컴퓨팅 세계 표현법) / 오른쪽을 기준을 4비트 단위로 묶음 8진수 : 0 ~ 7까지의 숫자를 사용 (컴퓨팅 세계 표..
생성자와 정적 팩터리 메소드 첫번째 장점은, 생성자와는 달리 정적 팩터리 메서드에는 이름이 있다는 것 입니다. 두번째 장점은, 생성자와는 달리 호출할 때마다 새로운 객체를 생성할 필요는 없다는 것 입니다. 세번째 장점은, 생성자와는 달리 반환값 자료형의 하위 자료형 객체를 반환할 수 있다는 것 입니다. 반환되는 객체의 클래스를 훨씬 유연하게 결정할 수 있습니다. 이 유연성을 활용하면 public으로 선언되지 않은 클래스의 객체를 반환하는 API를 만들 수 있습니다. 그러면 구현 세부사항을 감출 수 있으므로 아주 간결한 API가 가능합니다. 이 기법은 인터페이스 기반 프레임워크 구현에 적합한데, 이 프레임워크에서 인터페이스는 정적 팩터리 메서드의 반환값 자료형으로 이용됩니다. 인터페이스는 정적 메서드를 가..
이전에 쓰레드관련 포스팅에서 객체합성이 상속보다 더 낫다라는 얘기를 잠깐 꺼낸적이 있습니다. 자바 이펙티브 서적에서 관련 내용을 다루고 있어 이 포스팅에서 주요 내용들을 정리해 보려 합니다. 실제 대규모 프로젝트를 접하다 보면, 하나의 객체가 만들어지기까지 몇번의 합성을 거치는 경우를 많이 보게 됩니다. 그 이유가 늘 궁금했는데, 그 질문에 대한 답을 차근히 써내려 가겠습니다. 상속은 자바에서 재사용을 돕는 강력한 도구이지만, 최선이라고 할 수 없습니다. 왜냐하면 상속을 적절히 사용하지 못하면 깨지기 쉬운 상태의 소프트웨어가 되기 때문입니다. 보통 상속은 상위 클래스와 하위 클래스 구현을 같은 프로그래머가 통제하는 단일 패키지 안에서 사용하면 안전합니다. 애초에 상속을 고려해 설계되고 그에 맞는 문서를 ..
finalize 메서드 Java의 자동화된 쓰레기 수집기(garbage collector)는 객체를 삭제하기 전에 finalize() 메서드를 호출합니다. 따라서 객체가 삭제되기 직전에 실행되어야 하는 동작이 있다면 Object 클래스에 정의된 finalize() 메서드를 오버라이드하여 정의할 수 있습니다. Collection Framework Java의 컬렉션 프레임워크는 아주 유용합니다. 그 중 가장 유용한 몇 가지를 들어보면 다음과 같습니다. ArrayList: ArrayList는 동적으로 크기가 조정되는 배열로, 새 원소를 삽입하면 크기가 늘어납니다. ArrayList myArr = new ArrayList(); myArr.add("one"); myArr.add("two"); System.out...
▶ 내장 SQL의 정의 내장 SQL은 응용 프로그램 내에 데이터베이스에서 사용하는 데이터를 정의하거나 질의하는 SQL 문장을 내포하여 프로그램이 실행될 때 함께 실행되도록 호스트 프로그램언어로 만든 프로그램에 삽입된 SQL이다. 호스트 프로그램언어란C,Java,Pathon,Visual Basic같은 프로그래밍 언어를 의미합니다. 내장 SQL의 특징 1. 내장 SQL 실행문은 호스트 언어에서 실행문이 나타날 수 있는 곳이면 프로그램의 어느곳에서나 사용할 수 있다. 2. 일반 SQL문은 수행결과로 여러 개의 튜플을 반환하는 반면, 내장 SQL은 단 하나의 튜플만을 반환한다. 3. 내장 SQL문에 반환되는 튜플은 일반 변수를 사용하여 저장할 수 있다. 4. Host Program의 컴파일 시 내장 SQL문은 ..