언어/Java 15

Java 의 기본 . Class

java class 란 ?자바를 배울 때 가장 중요하면서도 기초적인 부분이다.변수(데이터,속성)와 메서드(행위)를 가지고 있는 집합이다.객체를 생성하기 위한 틀이다class 키워드로 정의하고 new 연산자를 통해서 인스턴스를 생성한다자바는 클래스들의 모임으로 이루어져 있다.※ 클래스에서 객체를 생성하는 과정을 인스턴스화라고 하며, 생성된 객체를 인스턴스라고 한다.예를들어 붕어빵을 만들기 위해서는 붕어빵틀이 필요하다.여기서 붕어빵틀이 클래스(class)이고 이 붕어빵틀로 인해 만들어진 붕어빵을 객체(Object)라고 한다.붕어빵틀 -> 클래스(Class)붕어빵 -> 객체(Object)public class fishBread { // Class키워를 사용하여 정의한다.(Class Name) ..

언어/Java 2024.09.23

getter 와 setter 란?

getter : private로 설정한 변수 값을 읽어오는데 사용하는 메서드public int getAge(){return this.age;}setter : 외부에서 접근하여 조건에 맞을 경우 데이터 값을 변경할 수 있도록 하는 메서드public void setAge(int age){this.age = age;} 여기서 this.age 가 필드변수 age를 참조하는 변수이다 !  두 메서드를 따로 사용할 수도 있지만 setter 로 데이터 값을 설정해주고 getter 로 값을 불러오는 식으로도 사용한다. 그리고 만약 private로만 이루어진 class 의 객체를 생성했을 때는getter 와 setter 메소드 없이는 데이터 값을 불러올 수 없다.

언어/Java 2024.09.23

객체 지향프로그래밍이란?

객체 지향 프로그래밍 (Object-Oriented Programming, OOP)은 프로그래밍에서 필요한 데이터를 추상화 시켜 상태와 행위를 가진 객체로 만들고, 객체들간의 상호작용을 통해 로직을 구성하는 프로그래밍 방법이다. 그렇다면 객체란?객체는 프로그램에서 사용되는 데이터 또는 식별자에 의해 참조되는 공간을 의미하며 값을 저장 할 변수와 작업을 수행 할 메소드를 서로 연관된 것들끼리 묶어서 만든 것을 객체라고 할 수 있다. 간단히 비유해보자면 객체를 레고라고 한다면 , 객체지향 프로그램은 레고의 조각을 조립해서 무언가를 만드는 방식을 객체지향 프로그램이라고 한다.

언어/Java 2024.09.19

메소드 오버로딩(Overloading) , 오버라이딩(Overriding)

메소드 오버로딩이란?처음 Java를 배울 때 변수를 선언할 때 변수명이 중복되게 선언하면 오류가 발생했다.하지만 메소드는 이름이 같더라도 매개변수의 개수 또는 타입이 다르면같은 이름을 사용해서 같은 이름이지만 여러 기능을 가진 메소드를 사용할 수 있게 되는데,이를 메소드 오버로딩이라고 한다. 예를 들어보자.package smile; public class Test { public static void main(String[] args) { Test t = new Test(); t.something(); t.something(10); t.something(10,10); t.something(10,10.1); } void som..

언어/Java 2024.09.19

24-08-27 월

오늘은 시험 날 !거의 한달만에 java 복습 , 학원에서 못들었던 특강을 다시 듣고있는 중이다.현재 메소드 오버라이딩에 대해서 보는중..부모 와 자식 class 간 누가 더 큰 범위냐?자식일 것 같지만 부모임. 부모가 모든 자식 class를 수용하고 있기 때문에.오버라이딩 없으면 그냥 부모함수 사용오버라이딩 되어있으면 자식class에서 설정한 내용이 입력되어출력을 할 때 자식 class에서 덮어쓴 내용만 출력된다.컴파일 시점 = 여기가 일단 먼저 , 기계어로 변환하는 과정 , 정적 바인딩런타임 시점 = 프로그램 실제로 실행 시점 , 동적 바인딩Nocasting : 객체 생성 시 자기 자신 참조Upcasting : 하위 클래스의 객체를 상위 클래스 타입으로 변환 하는 것.Downcasting : 상위 클..

언어/Java 2024.08.28