minlog
article thumbnail
[ JAVA ] 객체 지향 / Extends 객체 간의 상속 관계
BackEnd/JavaProgram 2023. 2. 23. 00:07

클래스 상속 새로운 클래스를 정의 할 때 이미 구현된 클래스를 상속(inheritance) 받아서 속성이나 기능을 확장하여 클래스를 구현함 이미 구현된 클래스보다 더 구체적인 기능을 가진 클래스를 구현해야 할때 기존 클래스를 상속함 이미 개발된 클래스를 재사용, 중복코드를 줄여준다. 부모(상위)클래스의 필드나 메서드는 자식(하위)클래스의 소유로 사용할 수 있다. 자바의 다형성을 보여준다. 상속은 클래스간의 결합도가 높은 설계 💡 상속 문법 public class 자식클래스(현재 파일 클래스 명) extends 부모클래스 { } ※ extends 키워드 뒤에는 단 하나의 클래스만 올 수 있음 = 자식은 한명의 부모로 부터만 상속이 가능하다. = 자바는 단일 상속(single inheritance)만을 지원..

article thumbnail
[ JAVA ] 자바 배열 문법 1 / 1차원 배열과 2차원 배열
BackEnd/JavaProgram 2023. 2. 1. 21:26

1차원 배열 배열이란 하나의 변수를 사용하더라도 10개의 데이터를 저장 할 수 있는 것. 동일한 자료형의 순차적 자료 구조 인덱스 연산자[ ]를 이용하여 빠른 참조가 가능 물리적 위치와 논리적 위치가 동일 배열의 순서는 0부터 시작 자바에서는 객체 배열을 구현한 ArrayList를 많이 활용함 배열 표기법 💡 타입 식별자[ ] | 타입 [ ] 식별자 int arr[]; // 여러개의 int 값이 들어갈 수 있는 배열 선언 int [] arr; 배열의 선언과 초기화 💡 배열 변수 선언 | int arr [ ] ; 주소값이 들어갈 수 있는 변수로 참조 변수라고 한다. 단 한개의 데이터 형를 저장할 수 있는 메모리가 확보 ( 변수 생성, 주소값 없음) 💡 배열 생성 | new int [ 배열 길이 ]; new..

article thumbnail
[ JAVA ] 싱글톤 패턴 (Singleton pattern)
BackEnd/JavaProgram 2023. 2. 1. 01:44

싱글톤 패턴이란? 한 번의 메모리만 할당하고 그 할당한 메모리에 대해 객체로 관리하기 위함입니다. 프로그램에서 인스턴스가 단 한 개만 생성되어야 하는 경우 사용하는 디자인 패턴 ex ) Calendar 클래스 🍫 싱글톤패턴 company.java package ch18; public class Company { // 2. 유일한 인스턴스가 바로 생성될 수 있도록 내부에서 static으로 생성해준다. private static Company instance = new Company(); // 1. 다른 곳에서 생성 하지 못하게 하기 위해 private로 생성자를 만들어준다. private Company() {} // 3. 유일한 인스턴스를 외부에서 접근하기 위한 메서드 public static Compan..

article thumbnail
[ JAVA ] static 변수와 메서드, 변수의 유효 범위
BackEnd/JavaProgram 2023. 1. 30. 23:02

공통으로 사용하는 변수가 필요한 경우 ? 여러 인스턴스가 공유하는 기준 값이 필요한 경우 Example > 학생마다 새로운 학번 생성 카드회사에서 카드를 새로 발급할때마다 새로운 카드 번호를 부여 회사에 사원이 입사할때 마다 새로운 사번이 필요한 경우 static int serialNum; 💡 static 변수의 정의 인스턴스가 생성될 때 만들어지는 변수가 아닌, 처음 프로그램이 메모리에 로딩될 때 메모리를 할당 클래스 변수, 정적변수라고도 함 (vs. 인스턴스 변수) 인스턴스 생성과 상관 없이 사용 가능하므로 클래스 이름으로 직접 참조 💡 static 메서드의 정의 static 메서드는 인스턴스 생성과 무관하게 클래스 이름으로 호출 될 수 있음 인스턴스 생성 전에 호출 될 수 있으므로 static 메서..

article thumbnail
[ JAVA ] 객체 간의 협력 / 예제 문제 풀어보기
BackEnd/JavaProgram 2023. 1. 30. 22:36

객체 지향 프로그래밍에서의 협력 객체 지향 프로그램에서 객체 간에는 협력이 이루어짐 협력을 위해서는 필요한 메세지를 전송하고 이를 처리하는 기능이 구현되어야 함 매개 변수로 객체가 전달되는 경우가 발생 객체 협력의 예 🍫 과제 문제 풀어보기 Example . 앞의 예제에서 Edward는 지각을 해서 택시를 타야 했습니다. 20000원을 가지고 있었는데 10000원을 택시비로 사용했습니다. 택시는 '잘나간다 운수' 회사 택시를 탔습니다. Console 결과 값 Person.java package ch15; public class Person { private String personName; // 사람이름 private int money; //보유 금액 public Person() {} public Per..