일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- OOP
- 자바
- External Scheme
- 리눅스 마스터 1급
- systemd
- Entity Set
- literal
- Unity
- Mac
- dbms
- python
- X.org
- Java
- Polymolphism
- selenium
- descriptive statistics
- Binary Search
- Inheritance
- Physical Scheme
- Entity
- preprocessing
- Operator
- Reference Type
- spring
- BFS
- 리눅스
- Class
- 셀레니움
- X윈도우
- 백준
- Today
- Total
목록Programming Language/Java (26)
Byeol Lo
java의 IDE(integrated development environment)로는 Intellij가 주로 쓰인다. 물론 language에 상관없는 VSC를 쓰는게 더 좋을 수 있지만, java에 특화된 환경이어서 관련 기능들을 많이 제공해준다. Intellij 공식 홈페이지에 들어가서 Community Edition을 다운받아준다. MacOS는 설치파일이 .dmg로 되어 있다. 파일을 실행시키면 기본적으로 설치 위치, 기본 자바 환경 변수 세팅을 지정한다. ( 후에 설정을 따로 할 수 있으니 Next만 눌러줘도 된다. ) 해당 화면의 좌측 메뉴에는 역할 별로 Projects, Customize, Plugins, Learn이 보이게 된다. Projects는 말 그대로 어떠한 프로세스들을 모아놓은 업무,..
우선 해당 영상을 참고했고, 내용을 정리했습니다. Junit5은 단위테스트를 작성하기 위해 Java 8 이상의 버전에 제공되는 프레임워크이다. Junit4는 하나의 jar 파일로 되어있었지만, Junit5 부터 Junit4에 포함한 jar파일의 수정된 부분과 2가지의 모듈을 더해 3가지의 모듈이 제공된다. Platform은 테스트 코드를 실행해주는 런처를 제공한다. 그 위에 올라와 있는 Jupter는 Junit5를 지원하는 TestEngine API 구현체이고, Vintage는 Junit 4와 3을 지원하는 TestEngine 구현체이다. 즉, Junit5로 작성한 테스트인 경우 Jupiter로, 3, 4의 경우에는 Vintage로 동작된다. Junit5를 시작하려면, 우선 스프링 부트 2.2버전 이상부..
현실에서 상속이라는 것은 부모의 자산을 자식이 대신 물려받는 것이다. 객체 지향 프로그램에서도 상속이라는 개념이 사용된다. 클래스 간의 부모 자식의 관계를 명시할 수 있다. 프로그램에서는 부모 클래스를 상위 클래스라고 부르기도 하고, 자식 클래스를 하위 클래스라고 부르기도 한다. 다음은 extends 를 사용해 B를 A에 상속시키는 예제이다. // A.java pubilc class A { int field1=100; void main() { } } // B.java public class B extends A { void main() {} } // App.java public class App { public static void main(String[] args) { B b = new B(); Sys..
프로그램에 구현에 있어서 필요한 객체(부품)을 먼저 개발(생산)하고 이 객체(부품)들을 하나씩 조립해서 완성된 객체(부품)을 만드는 기법(방법)을 객체 지향 프로그래밍 이라고 한다. 객체(Object) 물리적으로 존재하거나, 추상적 논리적으로 생각할 수 있는 것 중에서 자신의 속성(값)을 가지고 있고, 동작(함수)할 수 있는 것. 자바에서는 속성과 동작들을 각각 필드 field 와 메소드 method 라고 부르고, 현실 세계의 객체를 소프트웨어 객체로 설계하는 것을 객체 모델링 (Object Modeling) 이라고 한다. 현실 세계는 모든 객체들이 서로 상호작용 하에 흘러가고 있다. 소프트웨어도 마찬가지이다. 객체들은 각각 독립적으로 존재하고, 다른 객체와 서로 상호작용 하면서 동작한다. 객체들 사이의..
데이터 타입에는 크게 기본 타입, 참조 타입이 있는데, 서로간의 선언된 변수들은 차이가 있다. primitive 타입으로 선언된 변수는 실제값을 변수 안에 저장하지만, 참조 타입인 배열, 열거, 클래스, 인터페이스를 이용해서 선언된 변수는 메모리의 번지를 값으로 갖는다. 번지를 통해 객체를 참조한다는 뜻에서 참조 타입이라고 부른다. 변수들은 스택영역에 생성되고 객체는 힙 영역에 생성되는데, 참조 타입 변수가 100번지 주소를 가지고 있는것 자체는 스택 영역에 있는 것이고 스택 영역의 값을 읽어서 힙영역의 객체에 접근하게 된다. 참조타입을 알아보기 전에 우선 JVM이 사용하는 메모리 영역을 알아보자. java.exe로 JVM이 시작되면 JVM은 운영체제에서 할당받은 메모리 영역(Runtime Data Ar..
조건문 : 조건에 대해 수행되는 중괄호 문장들 반복문 : 조건에 따라 반복되는 중괄호 문장들 논리식을 적절히 활용하여 컴퓨터에게 연산 과정들을 조작해 수행할 수 있다. if문 //유형 1 if (조건) { } //유형 2 if (조건) { } else { } //유형 3 if (조건) { } else if { } else { } for 문에는 특이한 for문이 있는데, 배열(순서가 있는 인스턴스)를 하나씩 받아와서 반복시키는 문법이 있다. python의 for ~ in 문과 같다. public class Main { public static void main(String[] args) { char[] array = {'a', 'b', 'c', 'd', 'e'}; for(char i:array) { Sys..
연산자 : 연산을 수행하는 기호 피연산자 : 연산자를 통해 수행하고 싶은 계산을 당하는 대상 식 : 연산자와 피연산자를 조합하여 계산하고자 하는 바를 표현한 식 자바 연산자 종류 연산자 종류 연산자 피연산자 수 산출값 기능 설명 산술 +, -, *, /, % 이항(2) 숫자 사칙연산 및 나머지 계산 부호 +, - 단항(1) 숫자 음수와 양수의 부호 문자열 + 이항(2) 문자열 두 문자열을 연결 대입 =, +=,-=, *=, /=, %=, &=, ^=, |=, =, >>>= 이항(2) 다양 우변의 값을 좌변의 변수에 대입 증감 ++, -- 단항(1) 숫자 1만큼 증가/ 감소 비교 ==, !=, >, =, >, > 이항 숫자 비트를 좌측/우측으로 밀어서 이동 ※ 연산자는 무조건 하나의 값을 산출함. 연산방향..
변수 : 하나의 값을 저장할 수 있는 메모리 공간을 의미한다. 메모리에 자기가 원하는 데이터를 저장할 수 있도록 컴퓨터에게 명령을 할 때, 자바는 다음과 같이 선언을 하게 된다. // 선언할 데이터의 형태에 따라 다음과 같이 선언한다. int age; double value; int는 정수(음수, 0, 양수)의 데이터를 저장하고 싶을때, double은 실수의 데이터를 저장하고 싶을때 사용한다. (데이터형) (변수이름) 으로 코드 파일에 넣으면 된다. 이때, 변수 이름을 명명하는데에는 아무런 규약이 없지만, 프로그래머들이 서로서로 잘 알아 볼 수 있도록 다음과 같이 어떤 규칙하에 적자고 약속한다. 작성 규칙 설명 첫 번째 글자는 문자이거나 '$', '_'이어야 하고 숫자로 시작할 수 없다. 안되는 것 : ..
Modifier 제어자 클래스, 변수, 메서드의 선언부에 사용되어 부가적인 의미를 부여한다. 접근 제어자 : public, protected, default, private 그 외 제어자 : static, final, abstract, native, trasient, synchronized, volatile, strictfp 하나의 대상에 대해서 접근 제어자는 하나 그 외에는 여러 개 조합 가능하다. static "공통적인" 이라는 의미이다. 클래스 변수라고도 하고 인스턴스 생성을 하지 않고도 사용 가능하다. 메서드에 사용될 때 인스턴스 멤버들을 직접 사용할 수 없다. final "변경 될 수 없는"의 의미를 가진다. 클래스에 사용되면 확장되거나 변경되지 못하게 되고, 변수에 사용되면 상수 선언을 하게 ..
입출력 장치는 다양하게 있는데, 자바에서는 가장 기본이 되는 입력장치와 출력장치를 표준 입출력 장치로 정의하고 있다. 그렇기 때문에 키보드는 표준입출력장치로 System.in 으로 정의되어 있고, 표준 출력의 경우 System.out으로 정의되어 있다. 이들은 java.io.InputStream, java.io.PrintStream 클래스의 인스턴스이다. 입출력을 자세하게 알면 다양한 형태의 데이터들을 빠르게 불러올 수 있게 된다. java.util.Scanner Scanner 클래스는 입력 스트림으로 부터 데이터를 읽어오기 위한 유틸리티 클래스인데, 스트림은 데이터 입출력을 위한 일종의 통로로 파일과 연결된 스트림을 사용하면 ㄹ파일로 부터 데이터를 읽을 수 있고, 네트워크와 연결된 스트림을 사용하면 네..