일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 해외유학
- CSUS
- 부산외대
- 미국유학
- Kenneth Park
- 사이드프로젝트
- 만다라트프로젝트
- 케네스
- JVM아키텍처
- 미국유학생
- California State University Sacramento
- 케네스로그
- 유학생 준비물
- 미국대학
- Java 스터디
- 파이데이아창의인재학과
- 비전공자 git
- 미국대학생활
- jpa
- 개발일지
- F1학생비자
- java
- 유학생대학생활
- 미국유학생활
- 자바 스터디
- i-20
- 2+2
- 자바
- 복수학위제도
- 개인 프로젝트 개발일지
- Today
- Total
목록전체 글 (87)
케네스로그
메소드의 정의 access_modifier return_type method_name (parameter...) { // implementation } public void demoMethod (int a) { // this is example method } 메서드의 구성 접근 제어자(access modifier) 리턴타입(return type) 메소드 이름 파라미터 접근제어자 public o o o o protected o o o default o o private o private: 해당 클래스에서만 접근이 가능 default: 패키지 내부에서만 접근가능 protected: 동일 패키지의 클래스 또는 해당 클래스를 상속받은 다른 패키지의 클래스에서만 접근 가능 public: 어떤 클래스에서라도 접근..
클래스 클래스는 객체에 대한 프로토타입 또는 청사진이라고 할 수 있습니다. 객체는 속성(property)과 메소드(method)들을 지니며, 이것은 클래스를 통해 정의할 수 있습니다. 클래스를 정의하는 방법 접근제어자(modifier) public 또는 디폴트(default). public인 경우, 어떠한 class에서든 접근할 수 있다 class 키워드 class 이름 class의 첫글자는 대문자로 시작한다 body superclass: extends 키워드를 톨해 부모클래스를 명시 interface: 1개 이상의 인터페이스를 implements 키워드를 통해 명시 modifier class class_name extends super_class implements interfaces { // clas..
관계 연산자 Comparison Operator 관계연산자는 같은 타입의 값들을 비교하는 연산자를 말하며, 결과 값은 true 또는 false로 반환합니다. 균등연산자, 관계연산자 equality & relational operator == equal to != not equal to > greater than >= greater than or eqaul to
쉬프트 연산자 shift operator shift v. 옮기다 이동하다 쉬프트 연산자는 비트 표현의 자릿수를 옮기는 연산을 말합니다. 비트 연산자와 마찬가지로 저수준에서 사용할 수 있으며, 2진법 체계의 특성을 응용하여 연산을 할 수 있습니다. 왼쪽 쉬프트 연산 1)); // 101 System.out.println("y>>1 : "+Integer.toBinaryString(y>>1)); // 11 Unsigned 쉬프트 연산 >>> unsigned shift는 쉬프트 연산 후 밀어버린 부분을 전부 0으로 채워줍니다. 단, >>>연산은 음수를 보장하지 않습니다. long b = -2147483648 // 1000 0000 0000 0000 0000 0000 0000 0000 System.out.prin..
비트, 쉬프트 연산은 주로 네트워킹 작업에서 사용되는 저수준의 연산자입니다. 보통은 플래그를 이용한 테스트에서 사용됩니다. 비트수준의 연산은 기본적으로 2진 연산과 보수 시스템에 대한 이해를 필요로 합니다. 💡low-level연산의 표현 단위 long타입이 포함된 경우, 결과는 long타입(8byte/32bit)으로 표현된다. 그외에는 int타입(4byte/16bit)으로 표현됨. 🛑 bitwise 연산은 실수, boolean, 배열, 객체는 사용할 수 없다. 비트 보수 연산자 ~ bitwise complement 비트 결과 0 1 1 0 ~ 단일 연산은 not 연산과 마찬가지로 피연산자 값의 비트 표현식에 반전을 취합니다. 12의 2진법 표현은 1100, 비트 보수 연산의 결과는 0011 byte b ..
연산에 사용되는 기호를 연산자 operator라고 하며, 연산자와 함께 연산되는 값을 피연산자 operand라고 합니다. 이러한 연산자와 피연산자의 연산과정을 연산식 expression이라고 하죠. 산술 연산자 Arithmetic Operator 산술연산자는 부동소수점, 문자형, 정수형과 함께 사용할 수 있으며, 연산의 결과는 숫자 타입(byte, short, int, long ...)으로 결과값이 나옵니다. 더하기 + Addition System.out.println(5+3); // 8 System.out.println(5+3.0); // 8.0 Numeric type: 실수형이 포함된 경우, 실수형으로 캐스팅되어 연산됩니다. System.out.println("Kenneth" + "Log"); // ..
타입 추론 이 글은 참조(https://velog.io/@composite/Java-10-에서-var-재대로-사용하기) 하였습니다. 타입추론은 정적 타이핑을 지원하는 언어에서, 타입이 정해지지 않은 변수에 대해서 컴파일러가 변수의 타입을 스스로 찾아낼 수 있도록 하는 기능을 말합니다. 이를 통해서, 타입을 명시하지 않아도 되며, 코드량을 줄이고 코드의 가독성을 높일 수 있습니다. Java10부터 var키워드가 생겼으며, Java11부터는 이를 통한 람다 타입도 지원합니다. 컴파일러는 개발자가 입력한 초기화 값을 통해 타입을 유추하는데, var는 컴파일러가 타입을 유추할 수 있도록 반드시 데이터를 초기화 해줘야만 합니다. // Java 9 String message = "Good bye, Java 9" /..
배열이란? 배열은 같은 타입의 데이터를 연속적으로 저장한 자료구조입니다. 배열의 특징은 '정적'이라는 점과 '연속적'이라는 것이죠. 정적이라는 말은 처음 배열의 크기가 정해지면 크기를 변경할 수 없음을 뜻합니다. 연속적이라는 건 메모리 상에서 배열의 첫번째 요소는 두번째 요소와 연이어 붙어있다는 것을 말합니다. 즉, 모든 요소들이 저장된 위치는 연속적으로 붙어있습니다. 배열의 생성 int[] a = new int[4]; 배열을 만들기 위해 new 키워드를 사용합니다. 위의 코드예시와 같은 int[] a = new int[4];와 같은 형식입니다. 이를 풀어서 이야기하자면, "4개의 정수를 저장할 수 있는 배열 객체를 만들고, a라는 reference type 변수에 저장하라"는 것입니다. 따라서, arr..
묵시적 형 변환 (자동 형 변환) 작은 메모리 크기의 데이터 타입을 큰 메모리 크기의 타입으로 변환합니다. int smallNum = 10; long bigNum = smallNum; 명시적 형 변환 (강제 형 변환) 데이터 타입을 변환하는데에 있어 형 변환 키워드를 통해 직접 변환합니다. int num = 56; byte value = (byte) num; 단, 이때 캐스팅 할 데이터 타입의 범위를 벗어난 값의 경우엔 형 변환을 실행할 수 없습니다다. byte타입의 범위는 -128~127인데, num의 값이 -128 미만이거나 127초과인 경우엔 명시적으로 형 변환을 실행할 수 없게 됩니다.. 타입 프로모션 연산식에서 서로 다른 데이터 타입의 피연산자가 있을 경우, 두 피연산자 중 크기가 큰 타입으로 ..
변수의 스코프 변수는 해당 변수가 선언된 위치에 따라 적용되는 범위가 달라지게 됩니다. class A { int instanceValue; // 인스턴스 변수 static int classValue; // 클래스 변수(static, 공유 변수) void method() { int localValue = 0; // 지역변수 } } 클래스 내부에 선언되는 변수를 멤버변수라고 합니다다. 여기서 static 키워드를 사용한 변수는 클래스 변수, static 키워드가 없는 변수를 인스턴스 변수라고 부릅니다. 메소드 내부에 위치한 변수는 해당 메소드에서만 사용할 수 있는 지역변수입니다. 인스턴스 변수 클래스 영역에 선언되며, 클래스의 인스턴스를 생성할 때 만들어집니다. 인스턴스 변수 값을 읽어오거나 저장하기 위해서..