system : 클래스out : 멤버변수println : 문자열 출력우리가 어떤 instance method를 부를때는Object.methodName(argu) 형태로 작성하여야 함."Hello, World!" 는 스트링 클래스의 인스턴스그래서 "Hello, World
값 복사 : (=)x = expression기본 연산자 : (+, -, \*, /, %)정수로 정수 나누면 정수, 실수를 정수로 나누면 실수단항 연산자(Unary Operators)후위 증감 : n++ , n--전위 증감 : ++n , --nex>Mathmatics m
C++과 동일하게 삼항 연산자를 지원한다.ex) when a = 0xA7 (16진수)Bit assignment operator&= |= ^= <<= >>=ex>위의 두가지 표현은 같은 결과를 가지고 온다.여기에서 Integer.toString은 Integer
변수를 선언하는 것에 있어서도 new를 사용하고 안하고는 큰 차이가 생김new 를 쓴다는 것은 공간을 생성하여서 값을 대입하는 것이기 때문에 이때 변수에 저장된 것은 메모리 공간의 주소이지 메모리 공간의 값이 저장된 것이 아니다.그렇기 때문에 우리는 String 에 내
선언방법초기 값int,long,float : 0boolean : falsechar : ASCII CODE 0string, frame : null
# Java : An Object-Oriented Language In Java, most variables and literals are objects An __object__ is an __instance of a class__ ```java class Empl
클래스 변수에 선언과 동시에 초기화 가능만약 초기화가 아예 진행되지 않았다면? 그러면 클래스 자체적으로 default constructor가 발동하여number : 0 / boolean : false / object : null로 값이 초기화 된다.하지만 local v
Encapsulation(캡슐화)여러 클래스 간의 member variable과 method들을 함부로 접근하는 것을 방지하기 위해 꼭 필요한 것만 public으로 설정하고 그 이외의 것들은 private으로 유지한다.Abstraction(추상화)"interface"기
변수들은 모두 자동으로 public static final variable 이 된다. 그렇기 때문에 이 변수들은 클래스의 실채와 상관없이 사용 가능하며 final은 값이 바뀌지 않기 때문에 상수처럼 사용할 수 있게 된 것이라고 생각해 볼 수 있다.이제 interface
constructor 문제 -> 객체를 생성하면 constructor이 호출됨 마치 C++에서의 initializer과 동일함만약 constructor가 없다면 default constructor가 호출됨, 이건 superclass의 constructor을 호출하게 됨
class object는 구지 extend하지 않아도 상속되어지는 클래스를 말한다고 하였다. 저번에는 toString을 배웠으니 이번에는 equals라는 함수에 대해서 알아보자위와 같이 작성이 되어 있을 때 equals 라는 함수를 사용하면 두개의 클래스가 같은 객체인
자바에서 발생할 수 있는 에러들Compile-time error컴파일이 만들어 내는 에러로 object files를 생성 못함Syntax errorRun-tume error컴파일이 에러나 object files 생성에 문제는 없음하지만 프로그램은 실행불가능Logical
Generic Programming: 여러가지 타입의 객체를 같은 코드로 만들고자 하는 테크닉동일한 류의 코드는 한 번만 사용하기 위해서 하는 프로그램 테크닉예를 들어 다음과 같은 코드 두개가 있다고 가정해 보자BoxA 와 BoxB는 같은 역활을 수행하지만 클래스명이
generic class는 non-generic class를 상속받을 수 있다.generic class는 generic class으로 부터 상속 받을 수 있다.상속을 받는 generic class 클래스와 받을 수 있는 클래스 타입을 정의할 수 있다.위와 같이 기능은
작성중
ArrayList와 LinkedList 모두 List라는 interface로 부터 상속 받아 구현되어져 있다. 하지만 두 List는 구현 방식이 다르고 성능도 다르다.ArrayList에 대해서 회고하여보면 ArrayList는 정말 배열 그자체로 연속적인 공간이 배정이
try-catch 필수로 삽입하기Scanner은 반드시 닫아주기
Collection Framework (3) 5. Iterator
연결리스트와 set의 차이는 Set은 중복을 허용하지 않는다. null인 성분이 하나만 존재한다. 순서가 존재하지 않는다.Set의 Class는 위와 같이 구성이 된다. 우리는 HashSet과 TreeSet을 주로 사용하게 될 계획이다.ConstructorsConstru
Map interface는 아래와 같이 구성된다. HashMap이라는 이름이 붙은 이유는 저장하는 방식이 Hashing이기 떄문이다. 그리고 탐색을 할때 빠른 속도를 보장한다.HashMap의 class정의는 아래와 같이 구성이 된다.HashMap의 정의 함수는 위와같이
네트워크 구조는 두개로 나뉘어 진다.Client-Server한개의 서버에 여러개의 client가 접속하는 구조(대부분의 통신 방식)e.g) web server(HTTP), file server(FTP), application serverPeer-to-Peer(P2P)서
우리는 데이터를 URL로 부터 읽어들일 수 있다. 이 과정은 파일로 부터 데이터를 읽어오는 것과 매우 유사하다.위와 같이 URL에서 가져온 파일을 읽어들일 수 있다는 것을 확인할 수 있다.jsoup : Java 외부 라이브러리로 HTML 로 부터 데이터를 뽑아내거나 복
컴퓨터를 키고 프로그램을 실행시키면 운영체제가 프로세스를 만들어준다. 이 프로세스가 프로그램을 돌리기 위한 자원을 분배하게 된다. 이때 중요한 것이 메모리로 프로그램 별로 메모리를 할당해주는 과정을 운영체제가 담당하게 된다.그래서 작업관리자를 실행시키면 메모리를 프로그
TCP(Transmission Control Protocol) and UDP(UserDatagram Protocol)TCP : reliable data transfer(신뢰할만한 데이터 전송)UDP : fast communication than rekliability,
Multiple User을 지원하는 채팅 프로그램을 제작, 이번에는 UDP를 활용한 서버를 구현MultiChatServerManages Usersclient sends a message, server redirects the message to all other cli
서버와 통신하는 스레드의 상태는 위와 같이 구성되게 된다.new : 지금 막 생성된 상태runnable : 운영될 준비됨blocked : 어떤 이유로 스레드가 코드를 실행하지 않고 막혀있음(어떤 코드 블락이나 리소스를 접근해야 하는 상황에서 다른 스레드가 해당 블락이나
일단 TreeSet을 사용하고 내부 서버를 연결하는 것부터 제작해 보자특정 문자들이 있는지 확인https://highcode.tistory.com/6