본문 바로가기

전체 글215

<FAST CAMPUS>자바 웹개발-객체지향 프로그래밍 인터페이스란 - 추상 메서드로만 이루어 져있다 (쓸수 있는게 없어서 new 불가능) - 어떤 역할을 하는 객체인지 알려주는 설명서 같은 느낌 ( 설계 단계 ) - 상수도 선언 가능 Calc Interface Calculator추상클래스 CompleteCalc class 인터페이스를 활용한 다형성 구현 - 인터페이스는 여러개를 상속 받을수 있다. (추상클래스는 하나만 상속됨) - 인터페이스를 구현해 놓은 다양한 객체를 사용함 . - 다형성 : JDBC를 구현한 오라클, MSSQL 라이브러리 등 스케쥴 인터페이스 인터페이스의 요소들 상수 : 선언된 모든 변수는 상수로 처리됨 메서드 : 모든 메서드는 추상 메서드 디폴트 메서드 : 기본 구현을 가지는 메드 구현하는 클래스에서 재정의 할 수 있음 (java 8).. 2021. 1. 12.
[1일차]<10kg Bulk Project> 2021.01.11(월) 보호되어 있는 글 입니다. 2021. 1. 12.
<FAST CAMPUS>자바 웹개발 - 객체지향 프로그래밍 추상클래스란? 추상적이다 (구체적이지 않다) (추상 메서드)를 포함한 클래스 └ 구현 코드가 없이 선언부만 있는 메서드 ex) public abstract void run(); 구현 코드가 없는 메서드는 하위 클래스에서 구현을 해야 한다. 추상 클래스에 2개의 구현코드가 없는 메서드가 있으면 하위 클래스에서 2개를 받아서 하위클래스는 추상클래스가 되지 않는다. 1개만 받은다 해도 하위 클래스는 추상클래스가 된다. 추상 클래스는 new (인스턴스화) 할 수없음 -> 메서드의 바디가 없으니깐 불려질 부분이 없다. 템플릿 메서드 (추상클래스 응용) 템플릿 : 틀이나 견본을 의미 템플릿 메서드 : 추상 메서드나 구현된 메서드를 활용하여 전체의 흐름을 정의 해 놓은 메서드 -> final로 선언하여 재정의 할 수.. 2021. 1. 10.
<FAST CAMPUS>자바 웹개발 - 객체지향 프로그래밍 상속 새로운 클래스를 정의 할 때 이미 구현된 클래스를 상속 받아서 속숭이나 기능이 확장되는 클래스를 구현한다. Customer 클래스 VIP Customer 클래스 만들기 기능 - 제품 구매시 10% 할인 - 보너스 포인트 5% 적립 - 담당 상담원 배정 ( 더 많은 속성과 기능이 추가된다) ( customerGrade가 private으로 되어있다면 상속이 되어있어도 사용할수 없다. -> protected를 사용하면 상속에서 사용가능(하위클래스에서 사용가능)) 접근 제한자의 가시성 상속에서 클래스 생성 과정과 형 변환 하위 클래스가 생성되는 과정 - 하위 클래스가 생성 될 때 상위 클래스가 먼저 생성 됨 super(); 라는 상위클래스의 기본 생성자를 먼저 호출한다. 만약 상위클래스의 기본생성자가 없는.. 2021. 1. 9.
<FAST CAMPUS>자바 웹개발 - 객체지향 프로그래밍 배열과 ArrayList 배열이란? -동일한 자료형의 순차적 자료 구조 - int[] arr = new int[10]; - int arr[] = new int[10]; // 처음에는 0 값이 다 들어가 있으니 주의 for (int i =0; i< (10보단 arr.length); i++) { } 객체 배열 (Array List) (향상된 for 문 ) Ex) for ( Book book : library ) - library의 저장된 전체를 돌아서 book 변수에 넣어서 출력을 가능하게 함 얕은 복사 (주소만 복사 = 똑같은 놈) , 깊은 복사 다차원 배열 ArrayList 사용하기 - ArrayList 클래스 자바에서 제공되는 객체 배열이 구현된 클래스 객체 배열을 사용하는데 필요한 여러 메서드들이 구.. 2021. 1. 6.
<FAST CAMPUS>자바 웹개발 - 객체지향 프로그래밍 static 변수 , 메서드 static 메서드 -static 변수를 위한 기능을 제공하는 static 메서드 -static 메서드에서는 인스턴스 변수를 사용할 수 없음 -> 인스턴스는 new가 선언이 되고 생성이 되기 때문 -클래스 이름으로 참조하여 사용하는 메서드 ex) Student.getSerialNum(); 클래스 메서드, 정적 메서드라고도 한다. singleton Pattern - 단 하나만 존재하는 인스턴스 ex) 학교는 하나이고 학생은 여럿 -> 학교 회사는 하나이고 회사원은 여럿 -> 회사 코딩해 보세요(3) CardCompany 클래스 Card 클래스 결과 2020. 12. 31.
<FAST CAMPUS>자바웹 개발 - 객체지향 프로그래밍 생성자 (constructor) 객체를 생성할 때 new 키워드와 함께 호출 (객체 생성 외에는 호출할 수 없음) 인스턴스를 초기화 하는 코드가 구현됨 (주로 멤버 변수 초기화) 반환값이 없음, 상속되지 않음 기본 생성자 (default constructor) 프로그래머가 생성자를 구현하지 않으면 컴파일러가 생성자 코드를 넣어준다. 생성자 오버로딩 매개 변수가 다른 생성자를 2개 이상 구현 이렇게 생성자를 여러개 만들어 주면 좋은게 객체 생성에 있어 초기화 작업이 용이하다. 참조 자료형 이란? 클래스 형으로 변수를 선언한다. ex) 문자 하나하나를 저장 하고 싶다 -> char 숫자를 저장하고 싶다 -> int , long ... 학생의 정보를 저장하고 싶다 -> Student 라는 클래스를 만들어서 참.. 2020. 12. 31.
<FAST CAMPUS>자바웹개발 - 객체지향 프로그래밍 자바는 객체지향 프로그래밍으로 이루어져있다. 객체 지향 이란 이러한 객체 지향 프로그램 에는 - 객체를 코드로 구현한 클래스 - 객체가 가지는 속성을 변수로 표현한 멤버 변수 - 객체의 기능을 구현하는 함수의 일종인 메서드 Student 클래스 생성 Student 클래스 사용 이러한 클래스가 어떠한 형식으로 메모리에 올라가는가 ? 1.인스턴스 - 클래스로 부터 생성된 객체 ex) studentLee - 힙 메모리에 멤버 변수의 크기에 따라 메모리가 생성 클래스를 기반으로 new 키워드를 이용하여 여래 개의 인스턴스를 생성 2. 힙 메모리 new키워드가 malloc과 같은 기능인데 free를 안하는 이유 - 자바 같은 경우에는 Garbage Collector(GC)라는 기능이 있는데 적절한 타이밍에 한번씩.. 2020. 12. 29.