일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 판다스
- 카카오클라우드스쿨2기
- 생활코딩
- 개발자
- Python
- 데이터베이서
- 야학
- tensorflow
- LeNet
- 데이터베이스 개론
- 머신러닝야학
- CNN
- 생활코딩 데이터베이스
- 연산자
- Database
- 파이썬
- 머신러닝
- 머신러닝(딥러닝)
- pandas
- Java
- flatten
- reshape
- 생활코딩 머신러닝야학
- 데이터베이스
- JavaScript
- MySQL
- 딥러닝
- 이것이 자바다
- Today
- Total
목록CS/Java (10)
IT's 우

컬렉션은 다수의 데이터 프레임워크는 표준화된 프로그래밍 방식 방식을 의미한다. 컬렉션 프레임워크란? 데이터 그룹을 저장하는 클래스들을 표준화한 설계. 컬렉션 프레임워크를 활용하면 객체 지향적이고 재사용성이 높은 코드를 작성할 수 있다. 컬렉션 프레임워크 사용 이점 라이브러리 사용으로 인한 시간 감소 검증되어 있기 때문에 코드 품질 보장 재사용 가능 컬렉션 프레임워크와 배열의 차이 배열 - 정적 메모리 할당 ( int [4]) collection - 공간이 필요한 만큼 추가할 수 있는 (동적 메모리) 컬렉션 프레임워크의 주요 인터페이스로는 List, Set, Map이 있다. List와 Set은 공통된 부분이 많아 둘의 공통 메서드만 모아서 새로운 인터페이스인 컬렉션으로 ..
객체 지향 프로그래밍 특징 중 하나인 다형성과 밀접한 연관 2023.07.26 - [CS/Java] - 객체 지향 프로그래밍(OOP) 특징 다형성: 어떤 객체의 속성이나 기능이 상황에 따라 여러 가지 형태를 가질 수 있는 성질 오버로딩(Overloading) 오버로딩(Overloading)은 사전적으로 ‘과적하다’라는 뜻이다. C언어에서는 함수명이 고유하게 존재해야 하지만 자바에서는 하나의 메서드 이름으로 여러 기능을 구현 가능하다. 오버로딩 정의 자바의 한 클래스 내에 이미 사용하려는 이름과 같은 이름을 가진 메소드가 있더라도 매개변수의 개수 또는 타입이 다르면, 같은 이름을 사용해서 메서드를 정의할 수 있다. (중복 정의) 오버로딩의 조건 메소드의 이름이 같고, 매개변수의 개수나 타입이 달라야 한다...
캡슐화 정보 은닉 : 필요 없는 정보는 외부에서 접근하지 못하도록 제한 정보 보호: 외부로부터 클래스에 정의된 속성과 기능들을 보호 접근제어자 default- 동일 패캐지 내에서만 접근 가능 public - 접근 제한 없음 protected - 동일 패키지 + 다른 패키지의 하위클래스에서 접근 가능 private - 동일 클래스 내에서만 접근 가능 getter/setter → 높은 응집도, 낮은 결합도로 유연함과 유지보수성 증가 추상화 객체의 공통적인 속성과 기능을 추출하여 정의하는 것 ex) 추상 클래스와 인터페이스 상속 하위 클래스가 상위 클래스의 모든 것을 물려받는 것 → 코드 중복 방지 → 상위 클래스 내용을 확장하고자 할 때..
리플렉션 리플렉션(Reflection)이란? 👉 구체적인 클래스 타입을 알지 못해도 그 클래스의 메서드, 타입, 변수들에 접근할 수 있도록 해주는 자바 API 런타임에 지금 실행되고 있는 클래스를 가져와서 실행해야하는 경우 동적으로 객체를 생성하고 메서드를 호출하는 방법 자바의 리플렉션은 클래스, 인터페이스, 메소드들을 찾을 수 있고, 객체를 생성하거나 변수를 변경하거나 메서드를 호출할 수 있다. 어떤 경우에 사용되나? 자바는 정적인 언어라 부족한 부분이 많은데 이 동적인 문제를 해결하기 위해서 리플렉션을 사용합니다. 👉 정적 언어: 컴파일 시점에 타입을 결정 ex) Java, C, C++ 등.. 동적 언어: 런타임 시점에 타입을 결정 ex) Javascript, Python, Ruby 등.. 코드를 작..
Abstract 해당 클래스 / 메서드가 추상 클래스/추상 메서드임을 명시하는 예약어 작성법 // ① abstract를 접근 제어자 앞에 작성 abstract 접근 제어자 class 클래스명 { abstract 접근 제어자 반환형 메소드명(); } // ② abstract를 접근 제어자 뒤에 작성 접근 제어자 abstract class 클래스명 { 접근 제어자 abstract 반환형 메소드명(); } 추상 메서드 abstract 키워드와 함께 원형만 선언되고 코드는 작성하지 않은 메서드 메서드는 () 선언부와 {} 구현부로 나누어지는데 추상 클래스는 () 선언부까지만 작성하고 구현부는 작성하지 않는 메서드 메서드 내용이 상속받는 클래스에 따라 달라지기 때문에 추상 메소드 사용 구현부는 해당 클래스를 상속..
final 키워드 → 변경 ❌ 변수, 메서드 클래스가 변경 불가능 하도록 만든다. 기본 타입 변수에 적용 시 해당 변수의 값 변경 ❌ 참조 변수에 적용 시 참조 변수가 힙 내의 다른 객체를 가리키도록 변경할 수 ❌ 메서드에 적용 시 해당 메서드를 오버라이드 할 수 없다.(오버로딩은 가능) 💯 오버로딩(Overloading) 자바의 한 클래스 내에 이미 사용하려는 이름과 같은 이름을 가진 메서드가 있더라도 매개변수의 개수 또는 타입이 다르면, 같은 이름을 사용해서 메서드를 정의할 수 있다. - 오버로딩의 조건 메서드의 이름이 같고, 매개변수의 개수나 타입이 달라야 한다. 주의할 점은 **‘리턴 값’**만 다른 것은 오버로딩을 할 수 없다는 것이다. 오버라이딩(Overriding) 부모 클래스로부터 상속받은..
backtony 씨의 답안 📌 == - 참조 비교로 두 객체가 같은 메모리 공간을 가리키는지 확인 equals - 두 객체의 내부 값이 같은지 내용을 비교한다. - 기본 타입(Primitive Type)에 대해서는 적용할 수 없다. - 객체 비교 시 override 해서 원하는 방식으로 수정할 수 있다. 자바의 최상위 클래스는 Object 클래스이다. Object 클래스에는 기본적으로 equals(), hashCode(), toString(), clone(), notify()등 여러 메서드가 존재 == 연산자 primitive type 에 대해서는 값을 비교. reference type에 대해서는 주소값을 비교 사실 primitive type도 Constant Pool에 있는 특정 상수를 참조하는 것이기..

backtony 씨의 답안 📌 Char은 내용물이 1개인 문자로 제한되는 반면에 String은 문자열을 담을 수 있다. Char의 경우 변수 안에 직접적으로 문자를 가지고 있지만 String은 reference 타입으로 실질적인 문자열이 아니라 주소값을 가지고 있다. 이 때문에 비교 방식에 차이가 있다. Char의 경우 값이 같다면 ==(동일성) 비교를 사용할 수 있지만, String의 경우 내용이 같더라도 생성되는 주소가 다르기 때문에 == 비교를 사용하면 다른 결과가 나오게 되고 equals를 사용해야 한다. 기본 타입(primitive type) 데이터의 실제 값을 의미 정수 타입, 실수 타입, 문자 타입, 논리 타입으로 분류 문자 타입 : char char은 Character의 약자 단 하나의 문..