minlog
article thumbnail
[ JAVA ] this 레퍼런스
BackEnd/JavaProgram 2023. 1. 30. 21:47

자바에서 ' this ' 는 중요한 키워드로서 객체 자신을 가르키는 레퍼런스이다. 💡 ' this ' 가 하는 일 생성된 인스턴스 자신의 메모리를 가리킴 생성자에서 또 다른 생성자를 호출 할때 사용 자신의 주소(참조값)을 반환 함 public void setYear(int year){ this.year = year; } 💡 ' this() ' 사용시 주의 사항 'this()' 는 생성자가 다른 생성자를 호출할 때 사용되는 자바 코드이다. 반드시 생성자 코드에서만 호출 할 수 있다. 반드시 같은 클래스 내 다른 생성자를 호출할때 사용된다. 반드시 첫번째 문장이 되어야한다. public class Person { String name; int age; public Person() { this("이름없음", ..

article thumbnail
[ JAVA ] 접근 지정자와 캡술화, 정보 은닉
BackEnd/JavaProgram 2023. 1. 30. 03:15

접근 지정자 클래스 외부에서 클래스의 멤버 변수, 메서드, 생성자를 사용할 수 있는지 여부를 지정하는 키워드 접근 지정자 설정은 객채를 사용할때 오류를 줄일 수 있다. 💡 접근 지정자 변수 필드는 private로 선언하는 것이 좋다. (다이렉트로 필드에 접속하는 일은 없도록 , 상수 빼고) 접근 지정자 사용방법 내용 private private 클래스(..) 같은 클래스 내부에서만 접근가능 (default) 클래스 (..) 같은 패키지 내에서 접근가능 protected protected 클래스 (..) 같은 패키지 내에서 + 상속관계 접근 가능 public public 클래스(..) 모든 패키지에서 생성자 호출 가능 💡 GET / SET 메서드 private 으로 선언된 멤버 변수 (필드)에 대해 접근,..

article thumbnail
[ JAVA ] 오버로딩(Overloading)과 오버라이딩(Overriding)
BackEnd/JavaProgram 2023. 1. 30. 01:18

오버로딩(Overloading) 오버로딩이란 매개 변수가 다른 동일한 이름의 메서드가 여러개 존재하는 것을 말한다. 💡 오버로딩의 특징 매개 변수의 타입(데이터형,자료형)또는 매개 변수의 갯수가 다를때 오버로딩이 가능하다. //1 ---> 가능 public int overloading(int x, int y) { return x+y; } //2---> 1번과 같은 데이터 형으로 불가능 public int overloading(int a, int b) { return a+b; } //3 ---> 가능 public int overloading(int x, short y) { return x+y; } //4---> 가능 public int overloading(short x, int y) { // return..

article thumbnail
[ JAVA ] 인스턴스 생성과 힙 메모리(heap memory) / 생성자 구현
BackEnd/JavaProgram 2023. 1. 29. 23:35

인스턴스 (instance) 클래스는 객체의 속성을 정의하고, 기능을 구현하여 만들어 놓은 상태 실제 클래스를 기반으로 생성된 객체(인스턴스)는 각각 다른 멤버 변수 값을 가지게 됨. new 키워드를 사용하여 인스턴스 생성 💡 main 파일에서 클레스 불러오는 방법 클레스타입 변수명 (인스턴스 변수 선언) = new 객체 생성 (인스턴트화); Account account; // 참조변수 account = new Account(); // 인스턴스 생성 System.out.println(account); // 참조값 인스턴스 변수 선언 : 객체를 담기 위한 변수 객체 생성; 인스턴스화 : 별도의 변수, 메서드에 대한 메모리(힙 메모리) 할당/ 임의의 주소 값을 가진다. 힙 메모리(heap memory) 생성..

article thumbnail
[ JAVA ] 객체 지향 프로그래밍이란 ? 클래스 / 메서드
BackEnd/JavaProgram 2023. 1. 29. 23:04

객체 현실세계를 상태(특성)와 행동(기능)으로 구분한 것. 의사나 행위가 미치는 대상 구체적, 추상적 데이터 단위 (학생,회원,생산,주문,배송) ex) 핸드폰→ 상태 : 제조사, 색상 / 행동 : 사진촬영, 연락, 메모 객체 지향 프로그래밍 / 절차 지향 프로그래밍 객체 지향 프로그래밍(Java,Python): 관계를 기준으로 실행되는 프로그래밍 절차 지향 프로그래밍 (C언어) : 시간의 흐름에 따른 프로그래밍 💡 객체 지향 프로그램은 어떻게 구현되는가 ? 객체를 정의 각 객체 제공하는 기능들을 구현 각 객체가 제공하는 기능들 간의 소통(메세지 전달)을 통해 객체간의 협력 클래스 (Class) - 클래스는 객체를 추상화해서 코딩하는것. - 클래스가 존재하여야 원하는 객체들을 무한으로 생성할 수 있다. (..