복습

Mia Lee·2021년 12월 9일
0

JAVA

목록 보기
71/98

<자바>

  • 자바의 특징
    1) WORA(Write Once Run Anywhere)
    => JVM에 의해 프로그램을 한 번 작성하고 나면 어디서든 실행 가능한 특징
    2) JVM(Java Virtual Machine, 자바 가상 머신)
    => 운영체제 위에 설치되는 가상의 CPU(자바 개발에 필수 요소)
    => JVM으로 인해 운영체제에 독립적인 프로그래밍 가능(운영체제 상관없이 동작)
    3) Garbage Collector(가비지 컬렉터)
    => 메모리 자동 관리
    => 자바의 힙 공간에서 더 이상 실행되지 않는 객체를 자동으로 제거하여 메모리를 관리
    4) JDK(Java Devlopment Kit, 자바 개발 도구)
    => 자바 개발에 필요한 필수 프로그램
    => JVM, 실행환경을 포함하는 JRE와 컴파일 등의 개발 도구를 포함하여 제공하는 프로그램

  • 변수명(식별자) 작성 규칙
    1) 숫자로 시작 불가
    2) 대소문자 구별
    3) 예약어(키워드) 사용 불가
    4) 특수문자 '$'와 '_'만 사용 가능
    5) 공백 사용 불가
    6) 두번째 단어부터 각 단어의 첫글자는 대문자로 작성하여 구분(Camel-case)
    7) 의미있는 이름 사용

  • 기본 자료형 변수 선언 및 초기화 방법
    1) 변수 선언 : 데이터타입 변수명;
    2) 변수 초기화 : 변수명 = 값;
    3) 위의 두가지 문장을 하나로 결합하여 선언 및 초기화를 동시에 수행
    : 데이터타입 변수명 = 값;

  • 기본 데이터타입
    정수형 : byte(0) short(0) int(0) long(0L)
    실수형 : float(0.0f) double(0.0)
    문자형 : char(0 또는 \u0000)
    논리형 : boolean(false)

  • 기본 데이터타입 형변환
    1) 묵시적(암시적) 형 변환 = 자동 형 변환
    => 작은 데이터타입 데이터를 큰 데이터 타입으로 변환
    2) 명시적 형 변환 = 강제 형 변환
    => 큰 데이터 타입 데이터를 작은 데이터 타입으로 변환
    => 형 변환 연산자를 사용
    => byte -> short -> int -> long -> float -> double
    char ->

  • 연산자 종류 및 특징
    1) 산술연산자(+, -, *, / , % - 나머지 연산)
    2) 비교(관계)연산자 (>, <, >=, <=, ==, !=)
    3) 논리연산자(&, |)
    1) AND연산자(&, &&)
    => 두 조건이 모두 true 일 때 true, 하나라도 false 일 때 false
    2) OR연산자(|, ||)
    => 하나라도 true이면 true, 둘 다 false 이면 false
    3) !연산자
    => 현재 상태 반전(true -> false)
    4) 증감연산자

    • 전위(선행)연산자와 후위(후행)연산자로 구분되며 선행연산자로 사용되면 변수값을 먼저 변화시킨 후
      다른 연산자에 참여하고, 후행연산자로 사용되면 다른 연산에 먼저 참여한 후 변수값을 변화시킴
  • if문
    if (조건식1) {
    // 조건식1 결과가 true 일 때 실행

    } else if (조건식2) {
    // 조건식1 결과가 false이고, 조건식2 결과가 true 일 때 실행

    } else {
    // 모든 조건을 만족하지 않을 경우 실행

    }
    => 양수&음수 판별, 홀수&짝수 판별

  • switch ~ case문
    => if문과 동일하게 어떤 조건에 대한 실행 문장을 달리하는 조건문
    단, if문보다 유연하지 못하며, 컴파일 시점에서 이미 실행할 문장이 결정되므로 빠름
    => switch(값 or 식) {
    case 1 : 값1 일 때 실행할 문장...[break;]
    case 2 : 값2 일 때 실행할 문장...[break;]
    default : 모든 case문과 일치하는 값이 없을 실행할 문장..
    => else문과 동일
    }
    => break문이 없을 경우 해당 case 문을 실행한 후 아래쪽 문장 실행함
    (단, break문 만나거나 switch~case 문 종료될 때까지 모든 case와 default 실행)

  • for / while문
    for (초기식; 조건식; 증감식) {
    // 조건식 결과가 true일 동안 반복할 문장들...

    }

    초기식;
    while(조건식) {
    [증감식;]
    // 조건식 결과가 true일 동안 반복할 문장들...
    [증감식;]

    }

  • 배열
    1) 1차원 배열
    선언 : 데이터타입[] 변수명; or 데이터타입 변수명[];
    생성 : 변수명 = new 데이터타입[배열크기];
    => 두 문장을 결합 : 데이터타입[] 변수명 = new 데이터타입[배열크기];
    초기화 : 변수명[인덱스] = 값;
    => 선언/생성/초기화를 모두 결합
    : 데이터타입[] 변수명 = {10, 20};
    : 데이터타입[] 변수명 = new 데이터타입[] {10, 20};
    < for문 사용하여 1차원 배열의 모든 인덱스 접근 >
    for(int i = 0; i < 변수명.length; i++) {
    // 변수명[i] 형태로 배열 접근
    }
    2) 2차원 배열
    선언 : 데이터타입[][] 변수명;
    생성 : 변수명 = new 데이터타입[행크기][열크기];
    => 두 문장을 결합 : 데이터타입[][] 변수명 = new 데이터타입[행크기][열크기];
    초기화 : 변수명[행인덱스][열인덱스] = 값;
    => 세문장을 모두 결합
    : 데이터타입[][] 변수명 = {
    {값1, 값2, ....}, // 0번행의 각 열 데이터
    {값1, 값2, ....} // 1번행의 각 열 데이터
    };
    < for문 사용하여 2차원 배열의 모든 인덱스 접근 >
    for (int i = 0; i < 배열명.length; i++) { // 행 접근
    for (int j = 0; j < 배열명[i].length; j++) { // 열 접근
    // 배열명[i][j] 로 배열에 접근
    }

    }

  • 클래스
    1) 클래스 정의
    [접근제한자] class 클래스명 {
    // 멤버변수 선언
    // 생성자 정의
    // 메서드 정의

    }

    2) 객체 생성
    1) 레퍼런스 변수 선언
    : 클래스명 변수명;
    2) 인스턴스 생성 및 초기화
    : 변수명 = new 클래스명([파라미터...]);
    => 두 문장을 하나로 결합
    : 클래스명 변수명 = new 클래스명([파라미터...]);
    3) 인스턴스 변수(멤버 변수) 초기화
    : 변수명.멤버변수명 = 값;
    4) 메서드 호출
    : 변수명.메서드명([파라미터...]);

<자바스크립트>

  • 변수 사용
    => 별도로 타입을 지정하지 않고 일반적인 공통타입으로 변수 선언 시 저장되는 데이터에 따라
    각각의 타입이 자동으로 결정
    => 일반적인 변수 선언 시 var

  • 내장 함수
    => 자바스크립트에서 제공하는 함수로, 이미 기능이 구현되어 있으므로 호출을 통해 구현된 기능을 사용 가능
    1) alert() 함수 : 특정 데이터를 별도의 팝업창에 출력
    2) prompt() 함수 : 웹브라우저에서 입력창을 통해 데이터를 입력
    3) confirm() 함수 : 사용자로부터 확인 및 취소 버튼을 통해 확인 작업을 수행하는 팝업창

  • 내장 객체
    => 자바스크립에서 제공되는 객체(별도의 선언없이 사용 가능)
    1) window 객체
    => 자바스크립트의 최상위 객체
    => 함수 : window.open(), window.close() 등
    2) location 객체
    => 페이지 이동 관련 정보를 관리하는 객체
    => location 객체의 href 속성이 URL 정보 관리
    3) history 객체
    => 웹브라우저의 주소 기록을 관리하는 객체
    => 브라우저를 통해 접속했던 주소 정보를 차례대로 저장하고 관리
    => 함수 : history.back(), history.forward(), history.go()

0개의 댓글