일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- Mac
- Entity
- selenium
- BFS
- spring
- systemd
- Polymolphism
- literal
- Physical Scheme
- External Scheme
- descriptive statistics
- Entity Set
- preprocessing
- OOP
- Inheritance
- 리눅스 마스터 1급
- Operator
- Reference Type
- Binary Search
- 백준
- X윈도우
- X.org
- Class
- python
- Unity
- 리눅스
- dbms
- 셀레니움
- 자바
- Java
- Today
- Total
목록Programming Language/Java (26)
Byeol Lo
Casting 클래스 간의 타입을 변경하는 것을 Casting이라고 한다. sub class에서 super class로의 전환 그리고 super class에서 sub class로의 전환이 casting의 예가 되겠다. 여기서 전자를 Upcasting, 후자를 Downcasting이라고 한다. Upcasting class Person{...} class Student extends Person{...} Student s = new Student(); Person p = s; // Upcasting is occured! 선언해준 p에서 s를 넣어주기만 하면 Upcasting을 쓸 수 있다. 여기서 s라는 Student 인스턴스는 Person의 member를 접근할 수 있게 되지만, Student의 멤버에 접..
Method 메소드는 객체의 행동, 연산을 지정하는 것이다. public int getSum(int i, int j){ int sum; sum = i + j; return sum; } 메서드를 구분하는 것을 시그니처(Signiture)라고 하는데, 시그니처는 메서드 이름, 매개변수의 타입이 들어가 있는 리스트의 조합을 말하며, 둘이 전부 동일할 때 해당 메소드는 동일하다고 한다. Method: Instance Member 메소드에서도 인스턴스 필드 처럼 인스턴스 메소드라는 개념이 존재한다. 따라서 이는 instance를 통해서 접근할 수 있는 메소드이다. public class Car{ int gas; void setSpeed(int speed){ ... } } 위는 인스턴스 필드와 인스턴스 메소드의 예..
Axiom - "모든 것은 객체로 이루어져 있다."를 머리 속에 담고 읽자. Class(클래스) 객체들은 클래스로 부터 생성된다. 클래스는 설계도이다. 우리가 조립할 때, 각 부품들을 설명서에 맞게 조립하듯이 클래스는 객체를 만들기 위한 설계도(Frame/Blueprint)에 해당한다. (물론 각 부품들도 객체라고 볼 수 있다.) 객체들은 서로 관계를 형성하면서 상호작용을 한다. 그 관계에는 다음과 같은 세 가지 유형이 있다 Association : 연관 Composition/Aggregation : 구성 Inheritance : 상속 위의 관계들에 의해서 모든 객체들은 서로서로 영향을 주면서 실제 세계를 가상 세계로 구현시킬 수 있다. OOP(Objected Oriented Programming) 모든..
Data type 원시 타입 Primitive type Integer (byte, char, short, int, long) Floating-point (float, double) Boolean 참조 타입 Reference type Array Enum Class (+String, Wrapper) Interface 메모리에서 변수의 저장은 간단하게 Stack과 Heap의 영역에 저장된다. Stack 메모리 영역중에 하나로 Reference Type의 데이터는 주소값이 저장되고, Primitive Type은 실제값이 저장되는 곳이다. LIFO(Last-In-First-Out) 구조로 가장 마지막에 저장된 데이터가 가장 먼저 제거된다. 여러 개의 Thread가 프로그램 내에서 동시에 실행될 때 각 Thread..
보통 프로그램들은 일련의 순서로 처리가 된다. 이를 Sequential flow라고 하는데, 우리는 어떤 조건에 따라 이 순차 처리를 경우를 나눠 처리하고 싶을 때가 있다. Condition 조건문 보통 Relational Operators(==, =, ), Conditional Operators(||, &&, !) 등을 사용해서 조건문 표현을 하게된다. IF Statements : 다양한 변수에 대한 조건을 처리하고 싶을때 사용 Switch Statements : 하나의 변수에 대한 다양한 값에 따라 조건을 달리 하고 싶을때 사용 if((n = 2) == 3) { // 값 할당과 동시에 조건문 비교 System.out.println("hihi"); } int n = 10; switch(n) { case..
수식을 프로그래밍언어에서는 expression이라고 부르고, 그안에는 operands(피연산자)와 operators(연산자)가 있다. Priority Operator Associativity Operand Description 1 [] . ++ -- +, - ~ ! new (type) ⇐ All Reference Integer, Float-point Integer, Float-point Integer, Float-point Integer Boolean Reference All 배열 요소 지정 객체 멤버 지정 값 증가 값 감소 부호에 사용 비트Bit 반전 논리Boolean 반전 객체 생성 (Casting) 형 변환 연산자 2 +, /, % ⇒ Integer, Float-point 산술 계산 3 +, - +..
키보드와 같은 데이터를 입력 받으려고 할 때, Stream형태로 입력을 받을 수 있도록 하는 것이 System.in이다. System.in은 사용자의 입력을 byte 형태(byte stream)로 받고, 사용자 편의에 초점이 맞춰져 있지 않아서 이를 위해 java.util에서는 Scanner 객체를 지원하고, Scanner는 이런 System.in의 byte Stream을 꺼내서 사용하게 된다. Scanner은 사용자에게 편리한 입력들을 제공하게 된다. 우리는 입력을 할 때 Enter 단위로 데이터를 끊어서 입력하지만, Scanner는 Whitespace에 대하여 데이터들을 나누게 된다. Whitespace는 다음과 같이 back slash(\)를 통해서 주로 선언이 되는 문자이다. Whitespaces..
Java의 서로 용량(크기)이 다른 데이터 타입끼리의 연산을 살펴보자. Casting(형변환) 형변환을 Casting이라고 하는데, 이는 "연산 수행시가 아니"라 그냥 형변환이 일어나는 곳에 사용하는 개념이다. (연산 수행시는 뒤에 나올 예정이다.) Narrowing Casting (축소 형변환, 강제 형변환) 크기가 큰 데이터 타입에서 작은 데이터 타입으로 변환하고 싶을 때 적용(사용)되는 개념이고, 일반적으로 그냥 Casting이라고 함은 이를 의미한다. long bigNum = 100000000000000000L; int num = (int) bigNum; //(Narrowing Casting 사용) Widening Casting (확대 형변환, 자동 형변환) 크기가 작은 데이터 타입에서 큰 데이터..
모든 프로그래밍 언어는 자원을 관리하는 방법, 코드, 컨벤션을 제공한다. 해당 포스트은 데이터를 저장하는 방법을 알아본다. Variables (변수) 선언 방법은 다음과 같다. type identifier; 변수의 type을 먼저 써주고 변수의 이름을 써준다. Java는 Python과는 다르게 Statement의 마지막에 Instruction의 끝남을 의미하는 ;을 붙여주어야 한다. 해당 선언은 RAM의 어떤 공간을 지칭하게 되는 이름이 붙어지며, type에 따라 그 space의 size가 달라진다. identifier 에 들어갈 변수 이름은 해당 데이터가 어떤 데이터인지 직관적이고 제 3자가 봐도 알 수 있도록 이름을 지어준다. 그리고 모든 변수의 이름을 지으려고 할 때는 다음 rules를 따르도록 한..
Java의 소개에 앞서 사전 개념들을 먼저 소개한다. Machine Language 오로지 Machine만 읽을 수 있는(readable) 코드이다. 특징으로는 Binary(0 or 1)로 되어 있으며, CPU만 오로지 이 코드들을 이해할 수 있는 언어이다. Programming Language 사람들이 읽을 수 있는 코드들을 프로그래밍 언어라고 부른다. 컴퓨터에게 명령을 하려면 Machine Language를 써야 하는데, 우리는 이에 대해 정확히 알지 못할 뿐더러 쓰기 난해하고 복잡하다. 따라서 우리는 Machine 과 Human을 이어주는 하나의 의사소통 수단인 Programming Language를 쓰게 된다. 따라서 Bridge between a machine and a human이라고 할 수 ..