[Java/기초] Overloading, Overriding
JAVA/JAVA 기초2024. 3. 4. 15:50[Java/기초] Overloading, Overriding

Overloading이란 같은이름의 맴버들을 작성하는 걸 뜻한다. 매개변수등이 달라져도 같은 동작을 하는 맴버들을 만들기 위해서 사용한다. 메소드 오버로딩 생성자 오버로딩 2가지가 있다. Overriding은 부모 클래스의 메소드가 자식 클래스에 맞지 않아서 재정의 하는 것을 의미한다. 메소드 Overriding이 있다. 부모의 메소드와 동일한 이름, 변수리스트, 리턴타입을 가져야 한다. 접근 제한을 더 강하게 오버라이딩할 수 있다. 새로운 예외를 할 수 없다. 생성자 오버로딩 다양한 데이터를 사용해서 객체(class)를 생성하려면 생성자도 다양화 될 필요가 있다. 이때 Overloading을 사용하면 편리해진다. public class Person { private String name; private..

[Java/기초] Static, Final
JAVA/JAVA 기초2024. 3. 4. 15:15[Java/기초] Static, Final

Static, Final이란? static이랑 final은 class의 필드(변수들) 이랑 메소드(함수들)을 선언할 때 사용한다. 둘은 맴버들(필드,메소드)들을 어떻겍 사용하는지에 대한 정의 권한이라고 생각하면 편하다. 그럼 2개를 나눠서 알아보자 Static static은 '고정된'이라는 의미를 가진 단어이다. 정적, static맴버는 클래스에 고정된 맴버로써 객체를 생성하지 않고 사용할수 있는 필드와 메소드를 뜻한다. 일반적으로 선언된 맴버들은 인스턴스 맴버라고 해서 사용을하려면 객체(class)를 생성하고 사용해야하지만 static맴버들은 클래스가 메모리로 로딩되기만 하면 .연산자를 사용해서 바로 접근할 수 있다. 예시코드 public class Calculator{ static double pi ..

[Java/기초] Getter Setter
JAVA/JAVA 기초2024. 2. 13. 15:25[Java/기초] Getter Setter

Java의 Getter와 Setter에 대해서 알아보자 객체지향으로 프로그래밍을 하다보면 객체의 데이터는 외부에서 직접적으로 접근하는걸 막게된다. private double speed; 이런식으로 객체의 무결성이 깨질수도 있기 때문이다. 아래 예시를 한번 보자 Setter 예시 Mycar.speed = -50; 어떤 클래스에 이런 차의 속도를 저장하는 필드값이 있다고 할때, 속도는 음수가 될수 없음으로 메소드를 사용해서 제약조건을 걸수도 있다. void setSpeed(double speed){ if(speed < 0){ this.speed = 0; return; } else { this.speed = speed; } } 0이하의 속도는 0으로 만드는 set메소드를 만들었다 이것이 바로 Setter이다...

[Java/기초] Interface
JAVA/JAVA 기초2024. 1. 14. 23:54[Java/기초] Interface

Interface란??!!!클래스와 관련된 추상화 매커니즘을 제공한다. 클래스가 특정한 ㅁ[서드를 구현할 것을 보장하는데 사용한다.'interface'키워드를 사용해서 인터페이스를 정의할 수 있다.인터페이스는 특징이 5가지가 있다.1. 추상 메서드 (Abstract Method)인터페이스는 추상 메서드를 정의할 수 있다. 단지 선언만 할 수 있다.// 인터페이스 정의interface MyInterface { void myMethod(); // 추상 메서드 (abstract method) 선언}2. 상속(Constant)인터페이스는 상수을 정의할 수 있다.interface MyInterface { // 추상 메서드 void abstractMethod();} 3. 다중 상속 지원클래스는 단..

[Java/기초] 상속
JAVA/JAVA 기초2024. 1. 14. 00:14[Java/기초] 상속

상속이란 객체 지향 프로그래밍의 중요한 개념이다. 코드의 재 사용성을 높이고, 계층 구조를 통해 클래스 간의 관계를 정의하는데 사용한다. 이때 extends를 사용해서 상속 관계를 설정한다. 1. 상속의 특징 class 부모클래스 { // 부모 클래스의 멤버들 } class 자식클래스 extends 부모클래스 { // 자식 클래스의 멤버들 } 이런식으로 작성하면 자식 클래스에서 부모클래스의 method, 변수 들을 사용,확장할 수 있다. 자식은 상속받은 매서드 이외에 다른 매소드 변수들을 추가할 수 있다. 부모의 매서드를 같은 시그니처로 정의하는 것을 매서드 오버라이딩이라고 한다. 2. Super와 This class Animal { String name; Animal(String name) { this..

[JAVA/기초] 간단한 객체지향 인스턴스 OPP
JAVA/JAVA 기초2023. 12. 22. 21:08[JAVA/기초] 간단한 객체지향 인스턴스 OPP

객체지향 프로그래밍은 현실 세계의 모델을 반영하여 프로그램을 설계하고 구현하는 패러다임입니다. 여기서 객체는 현실 세계의 개념이나 사물을 프로그램 안에서 표현한 것으로, 이러한 객체들은 데이터와 해당 데이터를 처리하는 메서드(함수)로 이루어져 있습니다.이를 코드로 구현한 예제를 통해 객체지향의 핵심 개념을 자세히 설명하겠습니다.// 객체를 표현하는 클래스 정의class Accounting { // 객체의 속성(멤버 변수) public double valueOfSupply; public double vatRate; public double expenseRate; // 객체의 메서드 public double getIncome() { return valueOfSup..

728x90
image