728x90

~정보를 어디에 넣고 싶은데~

헷갈렸던 변수개념을 다시 잡는데 좋았다!!

 

1. 네가지 종류의 변수는 어떻게 구분하나요?

 

변수란, 고정된 상수와 달리 변화를 줄 수 있는 값이다. 

자바에는 네 가지 변수가 있다. 

 

지역변수 local variables -> 중괄호 범위 안에서 선언된 변수로 그 범위 밖으로 나갈 수 없다. 

매개 변수 parameters -> 메소드나 생성자에게 넘겨주는 변수이다. 

인스턴스 변수 instance variables -> 끼약. 이 개념을 놓치고 있었다. 메소드 밖, 클래스 내부에 선언된 변수로 static 예약어가 붙지 않았다!!

클래스 변수 class variables -> 마찬가지로 메소드 밖, 클래스 내부에 선언된 변수이지만 static 예약어가 붙는다!!!

 

 

생명 주기는 

 

지역변수 local variables -> 선언된 중괄호 내에서만 유효!

매개 변수 parameters -> 메소드 호출될 때만!

인스턴스 변수(또는 멤버 변수) instance variables -> 객체가 생성될 때 생명이 시작되고, 그 객체를 참조하고 있는 다른 객체가 없으면 소멸된다.

클래스 변수(또는 정적 변수) class variables -> 객체가 생성될 때 생명이 시작되고, 자바 프로그램이 끝날 때 소멸된다. ( 아 그래서 static 사용을 남발해서는 안되는구나. 관리가 어려워지겠구만~~ )

 

+ 자바에는 가비지 콜렉터가 있어서 얘가 알아서 메모리에서 사용하지 않는 변수를 없애준다고 한다. 

 

2.변수 이름 지을 때 대문자로 시작해도 되나요?

되지 않나? 상수값을 담는 변수를 만들때 모두 대문자..

아니면 보통 소문자로 시작!

 

3. 자료형에는 기본 자료형과 어떤 자료형이 있나요?

 

크게 보면 자바에는 

기본 자료형 Primitive Data Type , 참조 자료형 Reference Data Type 두가지가 있다. 

 

참조 자료형에서는 String을 제외하고 클래스로 객체를 생성하고 초기화할 때 new 연산자를 필수로 사용해야한다. 

String bookName = new String("Basic Java"); 물론 클래스도 다음과 같이 정의해도 상관없다. 

 

4. 기본 자료형에는 몇 가지가 있나여?

 

기본 자료형은 8개다. -> 책에서 8개에 대한 드립이 나오는데 저자의 잔잔개그가 마음에 든다.ㅋㅋㅋㅋ

 

기본 자료형은 크게 

숫자, boolean 타입으로 나뉜다. 

숫자는 다시 

정수형, 소수형으로 나뉜다. 

 

정수형: byte short int long char

소수형 float Double

기타: boolean

 

char을 제외하고 해당 타입의 변수가 정해지니 "비실한 FD" "bsil FD" 로 외우라고 한다ㅋㅋㅋㅋ감사합니당...아주 잘외워집니다!!ㅋㅋㅋ

 

6. byte는 몇 비트(bit)로 되어 있나요? 

byte는 8비트의 부호가 있는 타입이다. 

 

7. byte는 왜 만들었을까요?

적은 공간에 보다 많은 내용을 저장하기 위해서! 

일번적으로 데이터 저장 목적이 아닌 계산 시에는 int나 long을 쓴다. 

그 이유는!

byte의 최대값 127

최소값 -128인데 

 

최대값에 127 에 1을 더하면 -128이 되고 

최소값에 -128dp 1을 빼면 127이 된다. 그 이유는 오버플로우 때문!

그래서 계산의 안전성 고려한 결과이다. 

 

오버플로우란? 

: 표현가능한 범위를 벗어난 값을 말하며 돌림판처럼 돌아가는 현상을 말한다. 

컴퓨터는 값을 처리해야하는데 범위에서 벗어났으니 돌아가서 다시 시작하는 것이다. 

 

그리고 컴퓨터는 0과 1로 표현하는 2진법을 따른다. 그래서 모든 자바의 숫자 타입은 2의 배수로 그 범위가 그려진다. 

Type        Bits      Range of Values
----------------------------------------------------------------------------------------
byte         8bits    -2^7 ~ 2^7-1 (-128 ~ 127)
short       16bits    -2^15 ~ 2^15-1 (-32768 ~ 32767)
int         32bits    -2^31 ~ 2^31-1 (-2147483648 ~ 2147483647)
long        64bits    -2^63 ~ 2^63-1 (-9223372036854775808 ~ 9223372036854775807)
float       32bits    0x0.000002P-126f ~ 0x1.fffffeP+127f
double      64bits    0x0.0000000000001P-1022 ~ 0x1.fffffffffffffP+1023  
char        16bits    \u0000 ~ \uffff (0 ~ 2^15-1) * 자바에서 unsgined로 동작하는 자료형 (0 ~ 65,535)
boolean      1bit     true, false

참고 : https://jdm.kr/blog/213

8. int와 long 중 어떤 타입이 더 큰 숫자를 처리할 수 있나요?

long

9. 소수점을 처리하는 타입은?

float, double 이 있다. 

이 둘은 32비트와 64비트로 제공할 수 있는 범위를 넘어서면 그 값의 정확성을 보장못해서 중요한 계산을 할 때는 써서는 안된다. 

java.math.BigDecimal이라는 클래스를 하용하면 정확한 계산을 할 수 있다. 

소수점 처리시 보통 double을 많이 사용한다. 

 

10. char은 정수형인가요?

 

char는 8비트 정수형 처리 변수로 character(문자)의 약자이다. 

그런데 문자열과 관련된 부분에서 사용된다. 

11.  a라는 것을 char로 정의할 때 어떤 기호로 감싸주어야하나요?

''

12. true 와 false 두개의 값만 가지는 타입은 ?

boolean

 

 

728x90
728x90

https://stepby-yun.tistory.com/185

 

mysql 이자액 계산기 식 만들기 (값 띄우기select,넣기insert,삭제TRUNCATE)

목표 년 이자 4프로를 12개월로 나눠서 매월 찍히는걸로 하는건데 이름은 그대로 입금날짜는 한달씩 증가로 찍혀야함!! 이자율 계산 INSERT INTO test.sequence (interest_amount) SELECT (deposit_amount ..

stepby-yun.tistory.com

 

지난시간..

복잡한 식을 깔끔하게 만들어주고자 변수를 사용해봤다.

 

 

(찾아보니까 declare(타입선언)랑 set(변수할당)있었는데 어째서인제 declare은 자꾸 빨간선뜸.

변수 설정할때 @이름 으로 씀)

 

use test;
insert into sequence (name,deposit_date,deposit_amount) values ('이소윤',now(),'10000000');

set @lastDate = (select deposit_date from sequence order by id desc limit 1) ;
set @initial_amount = (select deposit_amount from sequence where id='1');
set @name = (select name from sequence where id='1');


INSERT INTO sequence (name,deposit_date,interest_amount)
select @name,
 (select date_add(@lastDate,INTERVAL 1 MONTH)),
@initial_amount* 0.04 /12;

 

 

 

하.지.만.

 

 

마지막 행 날짜값에다가 한달씩 더해야되는데 

자꾸 첫번째 행값에 더했다.

 

 

 

 

 

예상했던대로 변수 재할당 다시 해야만 

마지막 값을 가져왔다. 허허...

 

어떻게 해결할 것인가~ 

 

 

 

만약에 행이 추가되면 변수 재할당으로 해야하나????

???

 

 

 

 

728x90
728x90

멀티 스크립트 작성하기

 

홈계정 들어가서 

/home/내계쩡

 

디렉토리 만들어

mkdir 이름

 

주석은 표시 안돼

빈베이스에 쓴다 이말임 걍

날짜 뜨고

whoami  

(로컬 시스템에 현재 로그온 사용자에 대 한 사용자, 그룹 및 권한 정보를 표시 합니다. 매개 변수 없이 사용 하는 경우 whoami 현재 도메인 및 사용자 이름을 표시 합니다.)

 

cat 으로 쓴거 확인

 

아직 색이 흰색임

 

 

권한설정해줘야함 

색바뀌었어

 

위에꺼랑 비교해보면 

x생김

실행가능해진거야~~

 

 

이렇게 할 수도 있음 

x추가로 생김

이제 그룹사용자도 가능하고 외부유저도 사용가능

 

(나 rwx 여기 개념 다시 봐야겠다잉 3개로 끊어서 뭐시기였는지 기억이 안나)

 

 

실행해보면

 

 

echo

에코써서 우리가 어떤 명령어 쓰고 싶었는지 보기 편하게

 

 

문자내 따옴표는

 

작은 따옴표 쓰고 싶으면

"let's play"

큰 따옴표 쓰고 싶으면

'"what"'

 

이렇게 반대걸로 감싸주면 됨

 

 

 

변수처럼 쓰는법 

(근데 나는 person 이거 비어서 나오던데...아무것도 안넣어서 그런거임?)

 

 

 

 

 

 

아까 readPERSON

이런 식으로 메모리..사용..

램 사용

필요한 만큼 메모리를 할당받아서 거기에 이름붙여서 사용하고 있ㅇㅁ

사용할때는 달러 표시 붙여서 메모리 주소에 있는값을 출력하도록하는 문법임...음 뭔소리인지 모르겠니?

 

야야 이후에는 이것좀 보자 야

https://judo0179.tistory.com/114

 

Shell Script 변수

본 문서는 https://www.tutorialspoint.com/ 에서 제공하는 UNIX / LINUX 쉘 튜토리얼을 참고했다. Extended Shell Scripts 쉘 스크립트를 수행할 작업과 시기를 알려주는 필수 구성요소가 필요하다. 대부분의 쉘..

judo0179.tistory.com

 

 

 

읽기 전용으로 한 변수는 수정도 안되고 unset도 안됨요

 

 

 

변수 종류 이렇게 네가지 있음

쉘에서 지정한 모든 변수는 기본적으로 전역변수

지역변수 쓰고 싶으면 로컬이라는 키워드를 써야 지역변수가 됨

 

환경변수라는거는 쉘스크립터를 통해서 작성된 프로그램이

우리가 동작시켯을 때 잘되기 위해서 사용되는 변수

 

 

헤이 이거봐유

https://devpouch.tistory.com/125

 

[linux] 환경변수 설정, 확인 및 해제 명령어

리눅스 환경변수를 적용하기 위해서는 크게 일시적으로 적용하는 방법과 영구적으로 적용하는 방법으로 나뉜다. 아래 내용은 bash 쉘 기준으로 작성되었다. 리눅스 환경변수 일시 적용 $ export 환

devpouch.tistory.com

윈도우에서도 환경변수 설정하는거 있었자나

 

컴 피씨에 속성. 고급시스템설정

리눅스도 환경설정이 있다는거 ~~

 

 

 

 

 

 

변수의 값을 이런식으로 넣을 수 있을까?

 

 

이렇게 붙여야 값이 전달 된다

변수의 띄어쓰기 때뭉네 안됏어

 

 

 

 

연산자로 

 

 

 

명령어 안에 넣기

변수에다가 명령어 저장

어쩌구저쩌구 

ls -al 실행돼서 값들 나옴

 

728x90

+ Recent posts