class Static{
public int a = 20;
① static int b = 0;
}
public class Test{
public static void main(String[] args) {
int a = 10;
Static.b = a;
② Static st = new Static(); // 객체 변수 st 선언
System.out.println(Static.b++);
System.out.println(st.b);
System.out.println(a);
System.out.print(st.a);
}
}
🖍
10
11
10
20
- ①
static
으로 선언된 변수b
:
main()
메서드가 시작되기 전에 메모리의static
영역에 할당되며, 코드가 수행되는 동안 공유됨- 인스턴스를 생성하지 않아도 사용할 수 있으므로 클래스의 이름을 통해
Static.b
와 같이 접근할 수 있음
*인스턴스 : 클래스로부터 만들어진 객체- ② 객체 변수 선언:
- 클래스의 정의부를 바탕으로 새로운 인스턴스를 생성하여 메모리를 배정하고 그 메모리의 주소를 변수명st
에 연결하는 것을 의미
- but,Static
클래스의 변수b
는 프로그램 전체 영역에서 공유되는 변수이므로 새로 메모리에 할당되지 않고Static.b
와 같은 메모리를 공유
#include <stdio.h>
int main() {
char a[] = "Art";
char* p = NULL;
p = a;
printf("%s\n", a);
printf("%c\n", *p);
printf("%c\n", *a);
printf("%s\n", p);
for(int i=0; a[i]!='\0'; i++){
printf("%c", a[i]);
}
}
🖍
Art
A
A
Art
Art
Pointer
*
: 주소에 해당하는 값을 가리킴&
: 해당 변수명의 주솟값format string
%c
: 문자 1글자%s
: 문자열%d
: 10진수 정수%f
: 부동 소숫점
#include <stdio.h>
int main() {
char* a = "qwer";
char* b = "qwtety";
for(int i = 0; a[i] != '\0' ; i++){
for(int j = 0; b[j] != '\0'; j++){
if(a[i] == b[j]) printf("%c", a[i]);
}
}
}
🖍 qwe
1️⃣if(a[i] == b[j])
의 구문해 의해a[i]
와b[j]
의 값이 값으면 출력
( )은/는 비동기적인 웹 애플리케이션의 제작을 위해 JavaScript와 XML을 이용한 비동기적 정보 교환 기법이다.
( )은/는 필요한 데이터만을 웹서버에 요청해서 받은 후 클라이언트에서 데이터에 대한 처리를 할 수 있다. 보통 SOAP이나 XML 기반의 웹 서비스 프로토콜이 사용되며, 웹 서버의 응답을 처리하기 위해 클라이언트 쪽에서는 자바스크립트를 쓴다.
( )은/는 Google Map과 Google pages에서 사용한 기술에 기반하여 제작되었다.
🖍 AJAX(Asynchonous Javascript and XML)
①
②
🖍 ①가상 회선(Virtual Circuit) 방식, ②데이터그램(Datagram) 방식
🖍 L2TP(Layer 2 Tunneling Protocol)
https://velog.io/@m_ngyeong/OSIOpen-System-Interconnection-7계층
🖍SSH
응용 계층 프로토콜(7계층, Application Layer)
https://velog.io/@m_ngyeong/OSIOpen-System-Interconnection-7계층-3
- HTTP(HyperTExt Transfer Protocol) / Port Num: 80,
텍스트 기반의 통신규약으로 인터넷에서 데이터를 주고받을 수 있는 프로토콜- FTP(File Transfer Protocol) / Port Num: 21,
TCP/IP 프로토콜을 가지고 서버와 클라이언트 사이의 파일을 전송하기 위한 프로토콜- SSH(Secure Shell)
- Telnet / Port Num: 23,
인터넷이나 로컬 영역에서 네트워크 연결에 사용되는 네트워크 프로토콜- SMTP(Simple Mail Transfer Protocol) / Port Num: 25,
인터넷에서 이메일을 보내기 위해 이용되는 프로토콜- POP3(Post Office Protocol version 3) / Port Num: 110,
원격 서버로부터 TCP/IP 연결을 통해 이메을 가져오는 데 사용하는 프로토콜- IMAP(Internet Messaging Access Protocol) / Port Num: 143,
원격 서버로부터 TCP/IP 연결을 통해 이메일을 가져오는데 사용하는 프로토콜- SNMP(Simple Network Managemnet Protocol) / Port Num: 161,
TCP/IP의 네트워크 관리 프로토콜로, 라우터나 허브 등 네트워크 장치로부터 정보를 수집 및 관리하여, 정보를 네트워크 관리 시스템에 보내는 데 사용하는 인터넷 표준 프로토콜
①
②
③
🖍① 웜(Worm), ② 트로이 목마, ③ 바이러스
https://velog.io/@m_ngyeong/Building-Software-development-Security-1
#include <stdio.h>
int main() {
int input = 101110;
int di = 1;
int sum = 0;
while (1) {
1️⃣ if (input == 0) break;
2️⃣ sum = sum + (input (①)(②))* di;
3️⃣ di = di * 2;
4️⃣ input = input / 10;
}
printf("%d", sum);
return 0;
}
🖍① %, ② 10
1️⃣input
값이 0이면break
을 만나 반복문을 벗어나printf("%d", sum);
구문이 있는 곳으로 이동.
2️⃣sum
에input
을 10으로 나눈 나머지에di
를 곲한 값을 누적시킴.
(101110을 10으로 나누어 몫과 나머지를 구한수, 나머지에 2의0승을 곱한 수 그 값을 누적.)
3️⃣di
에 2을 곱함, 2의 제곱수를 1씩 증가시키는 구문.
4️⃣input
을 10으로 나눔, 2진수를 10으로 나눈 몫을 구하는 과정.
▶️10110 / 10
⇒ 몫: 10111, 나머지: 0 → 0 x 2의0승 = 0 ∴ 누적 : 0
( )은/는 TCP/IP에서 IP 패킷을 처리할 때 발생되는 문제를 알려주는 프로토콜이다.
( ) 프로토콜은 보통 다른 호스트나 게이트웨이 와 연결된 네트웍에 문제가 있는지 확인하기 위한 목적으로 주로 사용된다.
( ) 을/를 이용한 공격에는 ( ) Flooding가 있는데 ping 명령어를 통한 ( ) 패킷을 연속적으로 계속 보내어 서버의 요청에 응답으로 인한 다른작업을 하지 못하도록 하는 공격이다.
🖍ICMP
https://velog.io/@m_ngyeong/OSIOpen-System-Interconnection-7계층-2
참고,
길벗알앤디. 『정보처리기사 실기 단기완성』. 길벗. 2023.
https://newbt.kr/시험/정보처리기사%20실기/2023년%201회/오소프트0506