study/Java

[sist] 2024.01.02_Java : Operator(연산자), Package(패키지), Compile(컴파일)

듀2 2024. 1. 28. 17:51

 5. 논리 연산자

 - 비트 논리: 비트의 연산(비트를 합치거나 분리할 때 사용)

 - & (AND) : 상위비트와 하위비트 모두 1일 때만 1 내림.

 - | (OR) : 상위비트와 하위비트 모두 0일 때만 0 내림.

 - ^ (XOR - eXclusive) : 상위비트와 하위비트 둘 중 하나만 1일 때 1 내림. 

 

 

 6. 삼항 연산자(조건 연산)

  ? : 

  전항(관계연산자, 일반논리) ? 항1(true) : 항2(false) -> 항은 변수, 상수, 연산식

 

 - 점수를 저장하는 변수를 선언하고, 임의의 값을 할당한다.

  할당된 값이 0~100 사이라면 "유효"를 출력하고, 그렇지 않다면 "무효"를 출력하는 코드를 작성.

int score = 101;
score >= 0 && score <= 100 ? "유효" : "무효"
score > -1 && score < 101 ? "유효" : "무효"

 

 - 수가 음수인지 양수인지 출력

int number = 1;
System.out.println(number + "은(는)" + (number >= 0 ? "양수" : "음수"));

 

 7. 대입 연산자

 =, (순수 대입)

 +=, -=, *=, /=, %=, (산술 대입)

 <<=, >>=, >>>=, (쉬프트 대입)

 &=, |=, ^= (비트논리 대입)

 

 = : 기존에 존재하는 값을 새로운 값으로 대체하는 일.

int i = 0;
i = 2024;
i = 1;

 

 * 연산 후 연산의 결과를 가지고, 대상체의 값을 변경한다.

 - 산술대입

int i = 1;
i += 2; // i = i + 2;

int i = 0;
i++;

int i = 0;
i+=1;

int i = 0;
i = i + 1;

 

 - 쉬프트 대입

i <<= 3; // i = i << 3; // 0000 0110 << 3 == 0011 0000

 

 - 비트논리 대입

 &=, |=, ^=

i = 10;
i &= 12; // i = i & 12;

// 0000 1010 &
// 0000 1100
// 0000 1000

 


 * Package

 - 자바에서 클래스(*.class => bytecode)를 저장하는 기본 단위(directory)

 - 같은 이름의 클래스를 여러 개 만들 수 있다.

 - 업무를 구현한 클래스들을 묶어서 관리할 수 있다.

 - class 작성할 때 가장 윗줄에 한 번만 선언할 수 있다.

 - 패키지 컴파일을 수행한 후, 패키지 명을 포함하여 실행해야 한다.

 - java의 패키지명과 동일하게 설정X

 

 작성법)

package 패키지명;

 class 클래스명 {
 
 }

 

 - 역방향 도메인 사용.

 - Network에서의 도메인: id address로 컴퓨터를 식별(사람이 기억하기 어렵다.), 사람이 기억하기 좋게 domain을 만들었다. sist.co.kr을 입력하면 DNS Server에 요청하여 해당 컴퓨터의 id address를 얻는다.

 - 자바에서의 도메인: 거꾸로 작성하는 것. 유일, 간단 정보제공 (kr.co.sist.하는일)

package day0102;
 class Test{
 }
// -> day0102 - Test.class

package kr.co.sist;
 class Test{
 }
// -> kr - co - sist - Test.class

 


 * 패키지 컴파일

javac -d. 소스코드명.java

 -d : 패키지명으로 directory를 생성

 . 소스코드명.java : 생성된 패키지 안에 bytecode 배포해 

 

 * 패키지 컴파일 된 bytecode의 실행

 - 가장 외부에 존재하는 패키지 명이 보이는 위치에서 실행한다.

java 패키지명.bytecode명

 


* eclipse

 - IDE(Integrated Development Environment) 통합 개발 환경. 코딩, 디버깅, 배포를 한 번에 할 수 있는 툴.

 - eclipse project은 2001에 IBM사에서 시작 => 2004년 발표.

 - EPL이므로 무료로 사용 가능.

 

 * 개발 directory 구성

728x90