| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | |||||
| 3 | 4 | 5 | 6 | 7 | 8 | 9 |
| 10 | 11 | 12 | 13 | 14 | 15 | 16 |
| 17 | 18 | 19 | 20 | 21 | 22 | 23 |
| 24 | 25 | 26 | 27 | 28 | 29 | 30 |
| 31 |
- Algorism study
- side project
- View
- AWS
- github
- 게시판 리뷰 만들기
- 클래스 상속
- spring boot
- MegabyteSchool
- 패스트캠퍼스
- 내일배움카드
- Entity
- 게시판 만들기
- 메가바이트스쿨
- MVC
- Sts
- Interface
- 클래스 class
- 개발자취업부트캠프
- Java
- Spring
- GIT
- crud
- array
- 국비지원교육
- group study
- tomcat
- #javaStudy
- #패스트캠퍼스 #국비지원교육 #메가바이트스쿨 #MegabyteSchool #개발자취업부트캠프 #내일배움카드
- MVC 패턴
- Today
- Total
목록Java (22)
tuter77
● super 키워드 - 하위 클래스에서 가지는 상위 클래스에 대한 참조 값 - super() 는 상위 클래스의 기본 생성자를 호출 한다. - 하위 클래스에서 명시적으로 상위 클래스의 생성자를 호출하지 않으면, super()가 호출된다.(이때 반드시 상위 클래스의 기본 생성자가 존재해야한다.) - 상위 클래스의 기본생성자가 없는 경우에(다른 생성자가 있는 경우) 하위 클래스에서는 생성자에서는 super를 이용하여 명시적으로 상위 클래스의 생성자를 호출한다. - super는 생성된 상위 클래스 인스턴스의 참조 값을 가지므로 super를 이용하여 상위 클래스의 메서드나 멤버변수에 접근할 수 있다. 정리하면 하위클래스가 생성될 때는 무조건 상위클래스가 먼저 생성되고 호출되는데, 아무것도 없으면 super()를..
● 상속에서 클래스 생성과정과 형 변환 ▷하위 클래스가 생성되는 과정 - 하위 클래스를 생성하면 상위클래스가 먼저 생성된다. - new VIPCustomer()를 호출하면 Custormer() 가 먼저 생성된다. -예제를 통해 보면, public Customer() { customerGrage = "SILVER"; bonusRatio = 0.01; System.out.println("Customer() call"); } public VIPCustomer() { bonusRatio = 0.05; salesRatio = 0.1; customerGrage = "VIP"; System.out.println("VIPCustomer() call"); } 이와 같이 코드를 작성했을때 Test클래스에서 vip만 호출해..
● 객체지향 핵심.(chapter3 시작) 총 6개의 chapter 중 절반! 객체간 상속으로 시작. ▷ 클래스 상속 - 새로운 클래스를 정의할 때 이미 구현된 클래스를 상속받아서 속성이나 기능을 확장하여 클래스를 구현한다. - 이미 구현된 클래스보다 더 구체적인 기능을 가진 클래스를 구현해야할 때 기존클래스를 상속한다. 위 다이어그램으로 볼때 상위 클래스(상속하는)는 클래스는 A클래스로 parent class, base class, super class 등으로 부른다. 하위 클래스(상속받는)는 클래스는 B클래스로 child class, derived class, subclass 등으로 부른다. ▷ 상속의 문법 class B extends A{ } extends 키워드 뒤에는 단 하나의 클래스만 올 수 ..
● 배열 - 배열 내부에는 중간에 자료가 빠지면 이어진 자료들을 당겨줘야한다. [1,1,1,1,null,1,1,1]인 경우 [1,1,1,1,1,1]과 같이 변경. ▷배열 초기화 하기 - 배열은 선언과 동시에 자료형에 따라 초기화 된다.(정수는 0, 실수는 0.0, 객체는 null)- 필요에 따라 초기값을 지정할 수 있다. 예시)int[ ] numbers = new int[ ] {10, 20, 30}; //개수 생략해야함.int[ ] numbers = {10, 20, 30}; // new int[] 생략가능int[ ] ids;ids = new int[ ] {10, 20, 30}; //선언 후 배열을 생성하는 경우는 new int[ ] 생략 불가. ▷ 배열 사용하기 - [ ] 인덱스 연산자 활용 : 배열요소..
● 싱글톤 패턴 - 프로그램에서 인스턴스가 단 한 개만 생성되어야 하는 경우 사용하는 디자인패턴 - static 변수, 메서드를 활용하여 구현할 수 있음. ▷ 예시 public class Company { private static Company instance = new Company(); private Company() { } public static Company getInstance() { //일반메서드로 선언하면 이 메소드를 호출하기 위해 인스턴스를 새로 하나 만들어야 해서 static으로 선언. if(instance == null) { //방어적인 코드 instance = new Company(); } return instance; } } 위 예시처럼 회사와 같이 하나의 인스턴스만 존재해야하는..
*static이면 객체 생성이 필요없이 메인이 호출가능하다. ● 객체 간의 협력 - 객체 지향 프로그램에서 객체 간에는 협력이 이루어짐.(메세지가 오간다.) - 협력을 위해서는 필요한 메시지를 전송하고 이를 처리하는 기능이 구현되어야 한다. - 매개 변수로 객체가 전달되는 경우가 발생한다. 구현된 협력 기능 함수들은 ctrl 을 누른상태로 클릭하면 해당 클래스의 메소드로 갈 수 있다. ● 여러 인스턴스에서 공통으로 사용하는 변수 선언 - static 변수 ▷ 공통으로 사용하는 변수가 필요한 경우 - 여러 인스턴스가 공유하는 기준 값이 필요한 경우 - 학생마다 새로운 학번 생성 - 카드회사에서 카드를 새로 발급할 때마다 새로운 카드 번호를 부여 - 회사에 사원이 입사할 때마다 새로운 사번이 필요한 경우. ..
● 참조자료형 변수 ▷ 참조자료형(reference Data type) 클래스형으로 변수를 선언하다. 기본자료형은 사용하는 메모리의 크기가 정해져 있지만, 참조 자료형은 클래스에 따라 다르다. 참조자료형을 사용할 때는 해당 변수에 대해 생성해야한다.*예외적으로 String 클래스는 생성하지않고 사용이 가능하다.대표적으로 String과 Class가 있다. ▷ 참조자료형 정의하여 사용하기 예시)학생(Student)과 학생과목(Subject) 점수에 대한 클래스 생성. 일반적으로 클래스를 생성하면, 학생클래스에 학생이 수강하는 과목과 그 점수를 같이 생성하는데, 학생이 수강한 과목들의 성적을 산출하기 위한경우라면, 학생클래스 속성에 과목이 모두 있으면 불합리하다. 왜냐하면 각각의 학생들이 수강한 과목이 다를것..
● 인스턴스와 힙 메모리 ▷ 인스턴스 - 클래스는 객체의 속성을 정의, 기능을 구현하여 만들어놓은 상태 - 실제 클래스 기반으로 생성된 객체(인스턴스)는 각각 다른 멤버 변수값들을 가지게 된다.(인스턴스들이 다른 힙메모리에 위치하기 때문이다.) - new 키워드를 사용해서 인스턴스를 생성할 수 있다. ▷ 힙 메모리(Heap) - 힙은 동적메모리로서 생성된 인스턴스가 이곳에 저장된다. - c언어나 c++ 언어에서는 사용한 동적메모리를 프로그래머가 해제시켜야 한다.(free(), delete) - 자바에서는 위와 달리 GC(Garbage Collector)가 주기적으로 사용하지 않는 메모리를 수거한다. - 하나의 클래스로부터 여러개의 인스턴스가 생성되어 저장되고 각각 따른 메모리 주소를 갖게 된다. *인스턴..