목록Back-End (62)
NOW OR NEVER
쓰레드 쓰레드 : 자바에서 비동기 처리를 위해 사용하는 것 비동기 : 여러 작업을 동시에 처리하는 것 / 동기 : 작업을 순차적으로 처리하는 것 runnable : 상속받은 클래스 업 오류가 발생할 우려가 있을 경우 사용하기도 한다. 예외 처리 try : 원하는 처리의 코드 작성 catch : 오류 났을 때 동작하는 코드 작성, 보통 오류에 대한 정보를 개발자가 받아 볼 수 있도록 서버에 전달하는 역할 클래스 자바 오브젝트 클래스가 가장 상위 부모 클래스 이다. : 자바에서는 모든 클래스가 이 클래스를 상속 받고 있다, 객체에 관한 내용을 다 폼함하고 있다. 직접 쓸 일은 없다. lang 패키지 안에는 개발자 편의를 위해 많이 사용하는 것들이 모여 있다. Wrapper 클래스 자료형 만큼 존재 depre..
Class와 InterFace 변수 사용 할 수 있냐 없냐 여부는 해당 변수를 사용하고자 할 때 그 변수가 메모리에 저장되어 있으면 사용 가능 static 객체를 생성하지 않아도 사용 할 수 있다. : static으로 변수 선언 시 객체를 생성하기 전에 이미 변수가 만들어져 있다. static 메서드는 객체를 생성하지 않아도 사용 가능한 메서드이기에 메소드 안에 들어가는 것(매개변수, static 변수들 등)들은 static만 사용할 수 있다. static으로 선언한 메서드 안에서 객체를 생성해야지만 만들 수 있는 멤버변수 선언은 불가능하다 static 변수는 static 메서드에서 사용하는 변수이거나 프로그램 전체에서 1개만 있는 값일 경우 사용하는 것이 편하다. 하나밖에 없거나 멤버변수 사용하지 않을..
overriding 자식에 부모클래스 안 동일한 메소드 만들 시 자기 자신을 우선하기에 자식 메소드가 호출됨 접근제한자 접근에 대해 제한을 두는 것 데이터 무결성 : 데이터에 결함이 없다. 개발자는 이에 대한 문제를 항상 걱정해야 한다. 데이터 무결성 확고하게 할 수 있는 방법 : 객체에 저장하는 값에 결함이 있으면 객체에 저장조차 하지 않게 만들면 된다. 접근제한자가 있는 이유는 데이터 무결성을 위함이다. 변수는 직접 접근을 다 차단 그 변수의 값을 저장하거나 가져오는 메소드를 제공하는 방식으로 접근을 허한다. public : 패키지가 달라도 무조건 접근 가능 protected : 패키지가 다르면 접근 불가, 패키지가 같거나 상속 관계일 경우 사용 가능 default : 패키지가 다르면 아예 접근 불가..
Package 패키지 필요성 개발자 입장 : 자바 파일들을 폴더 별로 나눠서 관리하기 위함 JVM 입장 : 패키지로 나눠져 있던 것들을 가져오기 쉽게하기 위함 패키지 이름 생성 규칙 영어 소문자로 입력 중복되지 않은 이름을 쓰기 위해 도메인(주소 http 뒤 주소를 씀) 하나의 자바 파일에 여러 클래스를 만드나 자바 파일 당 하나의 클래스 파일만 만들었을 때나 다 별개의 클래스 파일로 컴파일 되기 때문에 편한 방식으로 클래스를 생성하면 된다. 다른 패키지 내 파일 사용 시 패키지 주소만 임포트 해주면 클래스이름으로 접근 가능 출력시 패키지 이름이 다른 것은 패키지 이름도 같이 나온다. * 사용 시 패키지 내 모든 클래스 사용 가능하나 패키지 내 모든 클래스가 메모리에 올라간다. 사용하지 않는 클래스가 메..
클래스 클래스 : 객체를 만들기 위한 설계도 클래스 설계 시 하나의 클래스를 통해 만들 수 있는 객체 수는 무한정이다. : 객체는 무한정 만들 수 있다. 객체에 뭐가 저장되어 있는 지만 다른 것이지 다 변수라고 생각하면 된다. a객체.b객체 -- >a객체 아이디에 접근하여 해당 객체 안 b객체 접근 변수 안에는 아이디 값만 저장된다. 클래스 객체 출력시 : 객체를 만들기 위해 사용한 클래스 이름@객체를 구분하기 위한Id 메서드 많이 만들어도 메서드 내부 코드 길어 메모리 ㄱㅊ 메서드 return 코드가 수행되다가 메소드 호출이 된다면 메소드 안 코드를 수행하다가 return을 만나면 메소드 수행부분을 중단하고 메소드를 호출한 부분으로 다시 되돌아가 코드를 수행한다. return 옆에 값을 적게 되면 해당..
조건문 if문 보다 switch문이 더 실행 속도가 빠르다. 반복문 원하는 만큼 반복할 수 있는 문 파이썬의 경우 하나만 제공하지만 자바의 경우 세개 제공 for문 : 몇 번을 반복해야 하는 반복 횟수가 정해져 있을 때 사용 while과 do-while : 반복 횟수를 정할 순 없지만 반복 조건이 정해져 있을 때 사용, while의 경우 반복 조건을 반복문 밖에서 결정할 때, do-while의 경우 반복 조건을 반복문 안에서 결정할 때 사용 for while 위에서 아래로 코드 실행do-while 아래서 위로 코드 실행 etc 개발자가 간편해지면 컴퓨터가 할 일이 많아진다. 기능 개발 시 사용자가 사용하기 편하고 성능 시간이 적은 것이 좋다. 컴퓨터가 많은 양의 작업을 하지만 사용자가 느끼지 못할 정도라..
출력 printf : 양식을 정해서 출력할 때 사용 변수 개발자가 값을 자유롭게 넣고 뺄 수 있는 기억장소 변수에 뭔가가 저장되어 있어야 변수를 쓸 수 있다. 초기화 : 변수에 값을 처음 저장하는 것을 말한다. 혹은 최초의 값으로 설정하는 것 선언 : 해당 변수를 쓴다라고 명시하는 것 자료형 값을 담기 위한 기억장소의 크기보다 들어갈 값이 더 작을 경우 기억장소 크기만큼 0을 붙여 늘려서 저장하여 엉뚱한 값이 저장되는 것을 막는다. 기억장소보다 들어갈 값이 더 클 경우에는 오류가 난다. 하지만 큰 기억장소에 작은 기억장소 할당시 뒤에 0을 붙여 크기를 늘려 저장한다. char은 문자형이지만 실제 저장 시 정수로 저장 메모리 폰 노이만 구조 : 오늘 날 사용하고 있는 컴퓨터 구조 SSD, HDD : 저속 ..
JAVA 개요 서버에서 돌아가는 프로그램을 만들기 위해 자바 언어 사용 처음 발표 당시 이름은 Oak -> 언어 개발한 사람들이 즐겨마시던 커피 이름 Java를 따와 지금의 이름인 Java로 이름 변경 현업에서 많이 사용하는 버전은 Java 8 : java 8까지 와서 java가 완성, 환경을 구축 후 서비스 만들 시 나중에 환경 변경 시 문제가 많이 발생한다. java 8을 기반으로 모든 서비스가 만들어진 게 대다수 이기에 현업에서는 java 8으로 많이 사용하고 있다. ME(Mobile Edition)는 더이상 사용되지 않고 SE(Standard Edition)을 사용한다. 자바 프로그램 실행 구조 java 코드 작성 - 컴파일(파일 변환 java -> class) - 실행 - class 파일 코드를..
EC2 Instance configure 터미널이나 웹브라우저 터미널로 EC2 인스턴스에 연결한 다음 aws --version 명령어 입력 : 현재 사용 중인 Amazon Linux AMI가 AWS CLI를 포함하고 있는 지 확인 aws configure 명령어로 절대 절대 Access key 랑 Secret access key 입력 하지 않기. 해킹 당할 위험 있음 IAM Role로 configure 하기 : EC2 Dashboard/Instances/Instances - 자격 증명(aws configure)할 인스턴스 선택 - Actions/Security/Modify IAM role - IAM role 지정 후 save 다시 터미널로 돌아가서 aws iam list-users 명령어 입력하여 자격증..

SSH 연결 방법 Mac/Linux 터미널에서 명령어 실행 ssh -i 보안그룹키페어.pem ec2-user@publicIPv4주소 중요! : unprotected private key file이라는 경고 뜨면서 permissions 0644 라며 bad permission 나오면 chmod 0400 보안그룹키페어.pem 명령어로 해결 --> 윈도우에서 pem파일 속성 - 보안 - 고급 - 소유자는 본인으로 변경, 사용권한에서 본인 빼고 나머지 계정은 지우기(상속 사용안함 누르고 지우기) window 10 이상(구형 window는 PuTTy 사용) powershell 혹은 터미널 통해 명령어 실행 ssh 입력했을 때 옵션 나오면 ssh 명령어 사용 가능 ssh -i 보안그룹키페어주소\보안그룹키페어.pem..