no image
Generics
Generics 프로그래밍 언어에서 여러 데이터 타입에 대해 일반화된 알고리즘, 클래스, 인터페이스를 작성할 수 있도록 해주는 프로그래밍 기법입니다. 제네릭스를 사용하면 코드의 재사용성을 높이고 타입 안전성을 제공하며, 불필요한 형변환을 줄일 수 있습니다. 또한 다양한 타입의 객체를 지원하는 클래스나 인터페이스 또는 메서드를 정의하며 똑같은 동작을 하는 클래스나 메서드를 여러 번 만들 필요 없이 한 번만 정의하고 나서 여러 타입에 대해 지원할 수 있도록 해주는 역할입니다. public class Generics { public static void main(String[] args) { Int[] iArray = {1,2,3,4,5}; // 기본 자료형 ) (int double, float, boolea..
2023.10.22
no image
Super
super super는 상속 관계에서 부모 클래스의 멤버를 참조할 때 사용하는 키워드입니다. 단일 상속만 지원하는 자바에서 Super는 바로 상위 클래스의 인스턴스를 지정하는 키워드 입니다. super() super()는 자식 클래스의 생성자에서 부모 클래스의 생성자를 호출하기 위해 사용됩니다. super() 는 생성자 코드 안에서 사용될 때, 다른 코드에 앞서 첫 줄에 사용되어야 합니다. 자식 클래스의 생성자에서 명시적으로 super(매개변수)와 같이 특정 부모 클래스의 생성자를 호출할 수 있습니다. 자바 클래스 간에서 상속 관계에 있을 때, 자식 클래스는 부모 클래스의 특성과 메서드를 상속받고 자식 클래스에서 부모 클래스의 멤버와 동일한 이름을 가진 멤버를 정의할 수 있습니다. class HamBur..
2023.10.21
no image
인터페이스와 추상 클래스
인터페이스 인터페이스는 추상화된 메서드의 집합을 나타내는 틀입니다. 클래스와 달리 추상 메서드만을 가질 수 있고, 멤버 변수나 일반 메서드를 가질 수 없습니다. 인터페이스는 다른 클래스에서 구현할 수 있는 메서들을 정의하는 데 사용하며 자바에서는 다중 상속을 지원하지 않기 때문에 여러 클래스에서 공통적으로 사용될 메서드를 인터페이스로 정의하고 구현함으로써 다중 상속과 유사한 기능을 가지고 있기 때문에 인터페이스는 기본 설계도라고 생각할 수 있습니다. (ex) 인터페이스 (interface) public interface MyInterFace { // 추상 메서드 정의 void myMethod(); // 또 다른 추상 메서드 정의 void anotherMethod(); } (ex) 구현 (implement..
2023.10.20
no image
다형성
다형성 동일한 인터페이스를 사용하여 여러 객체 타입을 처리하는 능력을 나타냅니다. 자바는 다형성을 지원하며 이를 통해 코드의 유연성과 재사용성을 높이고 복잡성을 줄일 수 있습니다 // class Person : 사람 // class Student extends Person : 학생 (학생은 사람이다. Student is a person) // class Teacher extends Person : 선생님 (선생님은 사람이다. Teacher is a person) // 다형성을 이용해서 FactoryCam, SpeedCam이 아닌 Camera로도 사용가능! // 이름이 Camera라는 Camera라는 부모 클래스로 어떻게 서로 다른 형태의 개체를 만들 수 도 있는게 다형성!! Camera camera = ..
2023.10.18
no image
객체지향언어
객체지향언어 기존의 프로그래밍언어와 다른 전혀 새로운 것이 아닌 기존의 프로그래밍 언어에서 발전한 형태를 말합니다. 소프트웨어를 객체와 객체 간의 상호 작용으로 구성된 시스템으로 생각하며, 객체는 데이터와 해당 데이터를 조작하는 메서드로 구성됩니다. 객체는 속성과 메서드를 포함하며, 다른 객체와 협력하며 복잡한 시스템을 구축합니다. 특징 (캡상추다) 클래스와 객체 : 객체 지향 프로그래밍에서 모든 것은 클래스와 객체로 구성됩니다. 클래스는 객체를 생성하기 위한 템플릿 또는 설께도 역할을 하며, 객체는 실제로 메모리에 할당되는 인스턴스입니다. 캡슐화 : 데이터와 데이터를 조작하는 메서드를 하나의 단위로 묶는 개념을 나타냅니다. 이를 통해 데이터의 상태를 숨기고 외부에서 직접 접근하지 못하게 할 수 있으며,..
2023.10.17
no image
JAVA
Java 언어 어디서나 마시는 커피처럼 어디서나 동작 가능한 자바 커피에서 이름을 따서 만든 언어! JVM(Java Virtual Machine) 자바 프로그래밍 언어를 실행하는 데 사용되는 가상 머신입니다. JVM은 자바 언어로 작성된 소스 코드를 컴파일하여 중간 바이트 코드로 변환하고, 이 바이트 코드를 특정 운영 체제나 하드웨어 플랫폼에 종속되지 않는 형태로 실행하는 역할을 합니다. JRE(Java Runtime Environment) 자바 프로그램을 실행하는 데 필요한 실행 환경을 제공하는 소프트웨어 패키지입니다. JRE는 자바 응용 프로그램을 실행하기 위한 필수 구성 요소를 포함합니다. JRE 주요 구성 요소 JAVA 애플리케이션을 실행하기 위한 환경을 제공하며 JAVA 바이트 코드를 기계 코드..
2023.10.14
no image
JAVA (Variable Naming)
변수 이름(Variable Naming) 변수를 선언할 때 사용하는 이름을 지정하는 것을 말합니다. 변수 이름은 코드의 가독성과 이해도를 높이는 데 큰 영향을 미치므로 명확하고 의미 있는 이름을 선택하는 것이 중요합니다. 변수 이름 규칙 1. 식별자 사용 규칙 : 변수 이름은 자바에서 사용되는 식별자 규칙을 따라야 합니다. 변수 이름은 문자로 시작해야 하며, 문자나 밑줄 ('_')로 시작해야 합니다. 변수 이름은 대소문자를 구분합니다. myVariable 과 MyVariable 은 다른 변수로 간주됩니다. 변수 이름에는 문자, 숫자, 밑줄, $ 가 포함될 수 있습니다. 예약어 (if, for, class등)는 식별자로 사용할 수 없습니다. 일반적으로 자바에서 변수 이름은 카멜케이스 표기법을 따릅니다. 카..
2023.08.25
no image
variables (변수)
변수 데이터를 저장하고 관리하는 데 사용되는 기본적인 개념입니다. 변수는 이름을 가지며, 해당 이름을 사용하여 값을 저장하고 검색할 수 있습니다. 변수는 프로그램 내에서 데이터를 임시로 보관하거나 처리하는 데 사용됩니다. 변수 규칙 자바에서 변수의 이름을 지을 때는 몇 가지 규칙을 따라야 합니다. 이 규칙들을 준수하여 변수 이름을 작성하면 코드의 가독성을 높일 수 있고, 충돌이나 혼동을 방지할 수 있습니다. 유효한 문자 : 변수 이름은 문자, 숫자, '_', $,로 구성될 수 있습니다. 하지만 변수 이름은 문자로 시작해야 하며, 숫자로 시작해서는 안 됩니다. 대소문자 구분 : 변수 이름은 대소문자로 구분합니다. 'myVariable'과 'myvariable'은 다른 변수 이름으로 간주됩니다. 예약어 사용..
2023.08.24
no image
DATA TYPE
Data Type 기본 데이터 타입 참조 데이터 타입 (Reference Data Type) 실제 값이 아닌 객체의 주소를 저장합니다. 객체는 클래스의 인스턴스이며, 이러한 객체의 주소를 변수에 저장하여 객체를 참조합니다. 참조 데이터 타입은 클래스, 인터페이스, 배열 들이 포함됩니다 int age = 25; // 기본 데이터 타입 double salary = 50000.50; // 기본 데이터 타입 String name = "John"; // String 클래스의 인스턴스, 참조 데이터 타입 Person person = new Person(); // Person 클래스의 인스턴스, 참조 데이터 타입 int[] numbers = {1, 2, 3, 4, 5}; // 배열, 참조 데이터 타입 Referenc..
2023.08.18