[JAVA] Abstract
·
JAVA
abstract는 자바에서 클래스나 메서드를 추상화할 때 사용되는 키워드이다. 추상 클래스는 객체를 직접적으로 생성할 수 없고, 추상 메서드는 메서드의 구현이 없는 상태로 선언된다. 1. 추상 클래스 (Abstract Class): 추상 클래스는 하나 이상의 추상 메서드를 포함하며, 객체를 직접적으로 생성할 수 없다. 추상 클래스는 상속을 통해 자식 클래스에게 메서드의 구현을 강제할 수 있다. abstract class Shape { abstract void draw(); // 추상 메서드 void display() { System.out.println("Shape"); } } class Circle extends Shape { void draw() { System.out.println("circle."..
[JAVA] static
·
JAVA
자바에서 static은 클래스 멤버를 정의할 때 사용되는 키워드이다. static 키워드가 사용된 변수나 메서드는 해당 클래스의 인스턴스와 관계없이 클래스 자체에 속한다. 즉, 클래스의 모든 인스턴스가 동일한 static 멤버를 공유한다. 1. 정적 변수 (Static Variables): 정적 변수는 클래스에 속하며, 클래스의 모든 인스턴스가 공유한다. 따라서, 객체를 생성하지 않고도 클래스 이름을 통해 접근할 수 있다. public class Example { static int count = 0; // 정적 변수 public static void main(String[] args) { Example.count++; // 정적 변수 접근 System.out.println("Count: " + Exam..
[JAVA] Call By Value / Call By Reference
·
JAVA
Call by value와 Call by reference는 함수 호출 시 매개변수가 전달되는 방식을 나타내는 용어이다. 1. Call by Value (값에 의한 호출): 매개변수로 전달되는 것은 값의 복사본이며, 호출된 함수에서 해당 값의 변경이 있어도 호출한 쪽에는 영향을 주지 않는다. 기본 데이터 타입(primitive type)을 매개변수로 전달할 때 발생한다. public class CallByValueExample { static void modify(int num) { num = num + 10; } public static void main(String[] args) { int number = 5; modify(number); System.out.println("Number: " + nu..
[JAVA] 오버로딩(Overloading)과 오버라이드(Override)
·
JAVA
오버로딩(Overloading)과 오버라이드(Override)는 객체 지향 프로그래밍에서 중요한 개념이다. 이 두 가지 개념은 다형성(polymorphism)을 구현하는데 사용된다. 다형성은 같은 이름의 메서드나 연산자가 다양한 상황에서 다르게 동작할 수 있는 능력을 의미한다. 1. 오버로딩 (Overloading): 오버로딩은 같은 이름의 메서드를 여러 개 정의하는 것을 말한다. 오버로딩된 메서드들은 서로 다른 매개변수의 타입 또는 개수를 가져야 한다. 컴파일러는 호출된 메서드와 일치하는 매개변수를 찾아 실행한다. public class Calculator { // 정수형 덧셈 메서드 public int add(int a, int b) { return a + b; } // 실수형 덧셈 메서드 publi..
[JAVA] Class
·
JAVA
자바(JAVA)에서 클래스(Class)는 객체 지향 프로그래밍(OOP)의 기본 구성 요소이다. 클래스는 객체(Object)의 설계도로서 사용되며, 객체는 데이터와 해당 데이터를 다루는 메서드(Method)로 이루어진 하나의 단위이다. 클래스는 멤버 변수(데이터)와 메서드(동작)로 구성된다. // 클래스 정의 public class Car { // 멤버 변수(상태) private String brand; private String model; private int year; // 생성자(Constructor) public Car(String brand, String model, int year) { this.brand = brand; this.model = model; this.year = year; } ..
[JAVA] 예외 발생 Exception 및 그 밖의 Exception 종류 및 예시
·
JAVA
ClassNotFoundException 또는 NoClassDefFoundError: 이유: 필요한 JDBC 드라이버 클래스를 찾을 수 없음. 예시: JDBC 드라이버를 프로젝트의 클래스패스에 추가하지 않은 경우. SQLException: Communications link failure: 이유: 데이터베이스 서버와의 연결이 끊겼거나 연결을 설정할 수 없음. 예시: 데이터베이스 서버 주소 또는 포트가 올바르지 않거나, 네트워크 문제. SQLSyntaxErrorException: Table or view not found: 이유: SQL 쿼리에서 참조하는 테이블이나 뷰가 존재하지 않음. 예시: MyBatis 매퍼 XML 파일에서 잘못된 테이블 이름을 참조하는 경우. DataAccessException: D..