일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 알고리즘
- db
- 소숫점처리
- 2156
- 입출력
- algoritm
- Dynamic Programming
- 문자열
- 백준
- darkest dark
- DP
- 반복문
- SQL
- 오라클
- Algorithm
- 동적계획법
- 데이터길이
- n x 2 타일링 2
- oracle
- Eclipse
- 10951
- Java
- ANSI JOIN
- 변수
- JOIN
- 자바
- Database
- 데이터베이스
- select
- 그대로 출력하기
- Today
- Total
목록Java (29)
Cracking Code
상속은 기존 클래스의 기능을 추가하거나 재정의하여 자식 클래스를 정의하는 것을 의미합니다. 상속 객체의 관계는 같은 종류여야합니다. 상속 관계가 성립되면 자식 클래스에서는 부모 클래스의 구성을 선언 없이 사용할 수 있습니다. 단, 생성자와 private으로 지정된 속성은 사용할 수 없습니다. 자바는 단일 상속만 지원하며 자식 클래스는 하나의 부모 클래스만 상속 받을 수 있습니다. public class class_name extends p_class_name {} extends 키워드를 사용하여 부모 클래스와 상속 관계를 정의할 수 있습니다. 상속 관계의 객체 생성 순서도 Man 클래스는 Emp 클래스를 상속받은 클래스입니다. 자식 클래스의 생성자가 호출되면 부모 클래스의 생성자가 호출되어 부모 객체가 ..
자바의 this 키워드는 객체 생성 후 메모리에 올라간 자기 자신의 인스턴스를 가리킨다. this // 자기 자신의 필드 참조 this.field_name = value // 자기 자신의 생성자 참조 this(data_type1 field_name1, data_type2 field_name2, ...); 다른 클래스에서 참조 변수명을 사용하여 생성된 인스턴스를 참조할 수 있지만 자기 자신이 자신을 참조할 때는 this 키워드를 사용합니다. 멤버 변수명과 매개 변수명이 같을 경우 일반적으로 setter 메소드를 사용할 때 멤버 변수명과 받는 매개 변수명을 같게 정의합니다. 이러한 경우 🚨변수명이 중복되어 식별이 불가하기 때문에 오류가 발생합니다. 이를 분간하기 위해서 this 키워드를 사용해 자기 자신의 ..
1. 접근 단순하게 생각했을 때 새로운 n번째 타일을 채울 때는 n - 1번째 타일들에 세로 직사각형 1개가 추가되는 것을 생각할 수 있었습니다. 나머지 경우의 수를 생각해보았을 때 방금 추가한 세로 직사각형이 중간에 들어갈 수 있기 때문에 상상만으로 접근하기에는 어려웠습니다. 2. 해결 그림을 그려 규칙을 찾아보는 것으로 하였습니다. 2 x 1 2 x 2 2 x 3 - 2 x 2 타일에 세로 직사각형 타일 추가 - 2 x 1 타일에 가로 두 개 타일, 정사각형 타일 추가 2 x 4 - 2 x 3 타일에 세로 직사각형 타일 추가 - 2 x 2 타일에 가로 두 개 타일, 정사각형 타일 추가 즉 n번째 타일의 경우의 수는 (n - 1번째 타일의 경우의 수) + (n - 2번째 타일의 경우의 수의 두 배) 3..
자바 객체는 클래스를 인스턴스화할 때 호출하여 초기화하는 역할을 담당합니다. 생성자 (Constructor) 생성자를 호출하여 멤버 변수에 데이터를 초기화합니다. setter 메소드를 사용하여 초기화할 수 있지만 자바에서 생성자를 호출함과 동시에 멤버 변수를 초기화할 수 있도록 하는 편의성을 제공합니다. 따라서 일반적으로 setter 메소드는 멤버 변수에 저장된 데이터를 수정하는 역할을 담당합니다. modifier class_name([data_type variable, ...]) { [...] } 메소드와 여러가지 비슷한 특징을 가지지만 리턴 타입이 없으며 반드시 클래스와 동일한 이름으로 지정해야 합니다. 만약, 생성자를 따로 정의하지 않았다면 자동으로 기본 생성자가 생성됩니다. // 기본 생성자 pu..
자바 클래스의 필드란 클래스에 포함된 변수를 의미합니다. 필드 (Field) 클래스를 정의할 때 클래스의 속성값을 저장하기 위해 선언하는 변수들을 필드라고 합니다. 필드는 클래스 안에서 선언 위치에 따라 3가지로 구분됩니다. 지역 변수 (local variable) 인스턴스 변수 (instance variable) 클래스 변수 (class variable) class class_name { static data_type variable_name; // 클래스 변수 data_type variable_name; // 인스턴스 변수 data_type method_name() { data_type variable_name; // 지역 변수 } } 지역 변수 메소드 안에 선언된 변수를 의미합니다. 메소드가 호출될..
자바 클래스에는 속성을 갖고 있는 멤버 변수와 기능을 수행하는 메소드를 가지고 있습니다. 메소드는 어떤 기능을 수행하기 위한 명령문의 집합이라고 할 수 있습니다. 메소드 일반적인 메소드의 작성 목적은 반복적인 프로그램 로직을 간추려 정의함으로써 코드의 가독성 향상과 해당 기능을 간편하게 수행, 유지보수하는 것에 있습니다. 메소드 정의 다른 언어(C, C++ 등)의 함수와 비슷하게 메소드를 정의할 수 있습니다. 접근제어자 데이터_타입 메소드_이름(인자 변수들) { 명령문...; } 접근제어자: private, public 등 데이터 타입: int, String, double, void 등 메소드 이름: 메소드를 호출하기 위한 이름 인자 변수들: int num, int num2 등 메소드에 전달되는 인자들의..
자바의 클래스란 객체를 정의하는 틀이라는 개념으로 사용됩니다. Class (클래스) 클래스는 총 3가지의 요소로 구성됩니다. 필드 (Field) 메소드 (Method) 생성자 (Constructor) public class class_name { // 필드 // 메소드 // 생성자 } 이러한 클래스를 사용하여 객체를 생성할 수 있습니다. 생성된 객체는 클래스에 정의된 변수 및 메소드에 접근, 사용할 수 있습니다. E.g. // Student.java (Student Class) public class Student { // 필드 ================== private String name; // 생성자 ========================= public Student() { System...
배열이란 같은 타입의 변수들로 이루어진 유한 집합입니다. Array (배열) 선언 datatype[] array_name; // or datatype array_name[]; 배열을 구성하는 집합의 데이터들을 요소(element)라고 하며 배열의 위치를 가리키는 숫자를 인덱스(index) 라고합니다. 자바의 배열은 항상 0부터 시작하고 양의 정수로 이루어져 있습니다. 같은 데이터형만 저장 가능하고 기본 데이터형 및 참조 데이터형 모두 배열로 관리할 수 있습니다. 배열의 길이는 배열명.length 로 반환할 수 있습니다. E.g. int[] num1; int num2[]; String[] name1; String name2[]; Array (배열) 생성 배열 선언 후 new 키워드를 사용하여 배열을 생성할..