일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 추상 클래스
- abstract
- polymorphism
- 17472
- python
- 최소신장트리
- Encapsulation
- 열거형
- 프림알고리즘
- 생성자
- 와일드카드
- 백준
- 상속
- 제네릭
- 객체 지향
- java
- 객체지향
- 추상화
- inheritance
- Scanner
- enum
- this
- 내부 클래스
- 다형성
- nextInt
- Final
- 버퍼비우기
- 인터페이스
- 캡슐화
- Today
- Total
목록전체 글 (60)
쫑쫑이의 블로그
Scanner를 사용하여 입력값을 받는 과정 중에 다음과 같은 예시가 있으면 Scanner s = new Scanner(System.in); System.out.println("num 값 입력"); int num = s.nextInt(); System.out.println("str1 값 입력"); String str1 = s.nextLine(); // 실행 안됐다고 느껴짐 System.out.println("str2 값 입력"); String str2 = s.nextLine(); num 값을 입력하고 enter를 누르면 "str1값 입력"과 "str2 값 입력"이 연속으로 출력됐다 String str1 = s.nextLine(); 부분이 그냥 넘어가 구글링 해보니... nextInt가 버퍼에서 enter..
잡설로 Abstract을 보면 논문 가장 앞에 써있던 초록이 생각난다 공통적인 기능을 구체적인 내용(메서드 바디)은 정의하지 않고, 메서드 시그니처(메서드명, 반환타입, 매개변수)만 정의하는 것으로 알고 있다 ================================================================================== 추상화를 사용하면 코드 재사용성을 높혀 코드 중복을 줄이고 유지보수하는데 용이하다 추상 클래스 추상 클래스는 추상 메서드를 1개 이상 갖는 클래스이다 추상 클래스는 객체를 생성 할 수 없다 abstract 제어자를 클래스와 추상 메서드 앞에 적어준다 하나의 추상 클래스만 상속받을 수 있다 다른 클래스처럼 extends를 붙여 상속한다 추상 클래스는 일반..
다형성은 다양한 형태를 갖는 것이고, 장점으로는 재사용성이 있다고 알고 있다 다형성의 예시로 메서드 오버로딩과 오버라이딩이 있다고 알고 있다 ============================================================= 하위 클래스는 상위 클래스의 멤버의 수와 같거나 많은 멤버를 갖는다 상위 클래스에서 하위 클래스를 참조할 수 있다 하위 클래스 내에 상위 클래스 멤버들을 모두 가지고 있기 때문이다 반대로 하위 클래스에서 상위 클래스 참조할 수 없다 상위 클래스 내에 하위 클래스 멤버들을 모두 가지고 있지 않을 수 있기 때문이다 class Person { void status() { system.out.println("아는 사람"); } } class Friend exten..
캡슐화에 대해 알고 있던 것들을 먼저 정리해보면, 정보 은닉 목적으로 캡슐처럼 감싸서 접근을 제한한다 접근 제한자의 종류에는 public protected default private 가 있다 getter / setter 메서드 클래스 내부 변수에 직접적인 접근을 막고 메서드를 사용하여 변수에 접근하여 값을 얻거나 세팅하게 한다 캡슐화에 대한 대략적인 목적이나 내용은 알지만 왜 사용하고 접근 제한자 별 어디까지 접근을 허용하는지에 대해서는 잘 모른다 ====================================================================== 공부한 내용을 정리하면 캡슐화 의미와 목적 외부로부터의 데이터에 대한 접근을 막고, 내부에서만 사용하는 값들을 숨긴다 (정보은닉) ..
'캡상추다' 로 외웠던 기억이 있는 객체지향의 4대 특성 먼저 상속에 대해 알고 있었던 내용을 정리하면 상위 클래스에 하위 클래스의 공통 기능들을 정의하고 하위 클래스에서는 개별적인 기능 또는 공통 기능 재정의해서 재사용 오버라이딩은 상위 클래스의 메서드를 재정의하는 것 예를 들어 상위 클래스 동물은 걷는다 하위 클래스 사람은 2발로 걷는다 하위 클래스 말은 4발로 걷는다 오버라이딩과 오버로딩 항상 헷갈렸었다 ======================================================= 오늘 상속에 대해 공부한 내용을 정리해보면 상위 클래스에 있는 멤버들을 하위 클래스에서 상속 받아 사용한다 하위 클래스는 상위 클래스의 모든 멤버들을 포함하고 더 많은 멤버를 가질 수 있다 메서드 오..
생성자에 대해 공부하기 전에는 생성자는 new를 가리키는 것으로, this는 클래스 내부 메서드에서 필드값 참조할때 사용하는 것이라고 알고 있었다. 내부클래스는 클래스 내부에 선언한 클래스일텐데 왜 만들고 어디에 사용하는지는 모른다. 생성자인줄 알았던 new는 키워드이고, 생성자의 역할은 인스턴스 변수를 초기화 하는 것이며, 생성자는 클래스 이름과 같게 써야한다. 생성자와 메서드의 차이 생성자는 기본적으로 반환값이 없다 메서드의 경우 반환값이 없을 때 void를 써줘야하지만 생성자는 쓰지 않는다 클래스 내에 생성자를 적지 않으면 눈에 보이지 않게 자동으로 기본 생성자를 생성해준다. class Test { public Test() { System.out.println("기본 생성자"); } } 생성자를 직..