분류 전체보기 (40) 썸네일형 리스트형 #37 인터페이스 (interface) ※ 시작하기 앞서 java study 카테고리 자료는 YOUTUBE에 남궁성 강사님의 자바의 정석 영상을 가지고 공부한 내용을 정리한 것이며 상업적 목적은 전혀 없음을 알립니다. 인터페이스란 -추상 메서드의 집합 , iv를 가질 수 없다. -구현된 것이 전혀 없는 설계도, 껍데기(모든 멤버가 public) -추상 클래스와 다르다 추상 클래스는 추상 메서드를 가지고 있는 일반 클래스다. -인터페이스는 미완성 메스드만 나열 되어있다. 참고 http://www.tcpschool.com/java/java_polymorphism_interface 코딩교육 티씨피스쿨 4차산업혁명, 코딩교육, 소프트웨어교육, 코딩기초, SW코딩, 기초코딩부터 자바 파이썬 등 tcpschool.com 캡슐의 가장 바깥쪽 껍데기 인터페.. #36 추상 클래스(abstract class) ※ 시작하기 앞서 java study 카테고리 자료는 YOUTUBE에 남궁성 강사님의 자바의 정석 영상을 가지고 공부한 내용을 정리한 것이며 상업적 목적은 전혀 없음을 알립니다. 추상 클래스 https://terms.naver.com/entry.naver?cid=42346&docId=859502&categoryId=42346 추상화 컴퓨터 과학 분야에서 주어진 문제나 시스템의 복잡도를 단순화하여 인식하기 쉽게 만드는 개념화 작업. 핵심 요소를 잘 파악하여 필요 이상으로 상세, 복잡한 요소들을 결합하거나 단순화하고 terms.naver.com -미완성 설계도. 미완성 메서드를 갖고 있는 클래스 abstract class Player{// 추상 클래스 (미완성 클래스 ) abstract void play(i.. #35 여러 종류 객체 배열로 다루기 ※ 시작하기 앞서 java study 카테고리 자료는 YOUTUBE에 남궁성 강사님의 자바의 정석 영상을 가지고 공부한 내용을 정리한 것이며 상업적 목적은 전혀 없음을 알립니다. 다형성 장점 1. 다형적 매개 변수 2. 하나의 배열에 여러 종류 객체 저장 여러 종류 객체 배열로 다루기 - 조상 타입의 배열에 자손들의 객체를 담을 수 있다. 가변 배열 기능을 가진 Vector 클래스 배열의 길이를 자동으로 관리해준다. object [] 계열의 배열을 가지고 있어 모든 종류의 객체를 저장할 수 있다. public class Vector extends AbstractList implements List, Cloneable, java.io.Serializable{ protected Object elementDa.. #34 매개변수의 다형성 ※ 시작하기 앞서 java study 카테고리 자료는 YOUTUBE에 남궁성 강사님의 자바의 정석 영상을 가지고 공부한 내용을 정리한 것이며 상업적 목적은 전혀 없음을 알립니다. 다형성의 장점 1. 다형적 매개변수 2. 하나의 배열로 여러 종류 객체 다루기 매개변수의 다형성 - 참조형 매개변수는 메서드 호출 시, 자신과 같은 타입 또는 자손 타입의 인스턴스를 넘겨줄 수 있다. Ex) class Product { int price;// 제품의 가격 int bonusPoint;// 제품구매 시 제공하는 보너스점수 Product(int price) { this.price = price; bonusPoint = (int)(price/10.0);// 보너스점수는 제품가격의 10% } } class Tv1 exte.. #33 instanceof 연산자 ※ 시작하기 앞서 java study 카테고리 자료는 YOUTUBE에 남궁성 강사님의 자바의 정석 영상을 가지고 공부한 내용을 정리한 것이며 상업적 목적은 전혀 없음을 알립니다. instanceof 연산자 -참조 변수의 형 변환 가능 여부 확인에 사용, 가능하면 true 반환 -형 변환 전에 반드시 instanceof로 확인해야 함 Void doWork(Car c) {// Car또는 Car에 모든 자손이 들어올수 있다. if(c instanceof FireEngine) {//1.instanceof 연산를 통해 형변환이 가능한지 확인 FireEngine fe = (FireEngine)c;//2.형변환이 가능하다면 형변환 fe.water(); } else if (c instanceof Amblunce) { .. #32 참조변수의 형변환 ※ 시작하기 앞서 java study 카테고리 자료는 YOUTUBE에 남궁성 강사님의 자바의 정석 영상을 가지고 공부한 내용을 정리한 것이며 상업적 목적은 전혀 없음을 알립니다. 참조 변수의 형 변환 -사용할 수 있는 멤버의 개수를 조절하는 것 -조상 자손 관계의 참조변수는 서로 형 변환 가능 class Car { String color; int door; void drive() {// 달리는 기능 System.out.println("drive, Brrrr~"); } void stop() {// 멈추는 기능 System.out.println("stop"); } } class FireEngine extends Car { // Car를 부모로 하는 소방차 void water() {// 물 뿌리는 기능 Sys.. #31 다형성(polymorphism) ※ 시작하기 앞서 java study 카테고리 자료는 YOUTUBE에 남궁성 강사님의 자바의 정석 영상을 가지고 공부한 내용을 정리한 것이며 상업적 목적은 전혀 없음을 알립니다. 다형성 -여러 가지 형태를 가질 수 있는 능력 -조상 타입 참조 변수로 자손 타입 객체를 다루는 것 class Tv { boolean power; int channel; void powr(){power = ! power;} void channelUP(){++channel; } void channelDown(){--channel; } } class CaptionTv extends Tv { String text;// 캡션(자막)을 보여 주기 위한 문자열 void caption() {/* 내용생략 */ } } Tv t - new Ca.. #30 캡슐화 ※ 시작하기 앞서 java study 카테고리 자료는 YOUTUBE에 남궁성 강사님의 자바의 정석 영상을 가지고 공부한 내용을 정리한 것이며 상업적 목적은 전혀 없음을 알립니다. 캡슐화와 접근 제어자 접근 제어자를 사용하는 이유 -외부로부터 데이터를 보호하기 위해서 -외부에는 불필요한, 내부적으로만 사용되는, 부분을 감추기 위해서 -코드 변경 후 테스트할 경우 테스트 범위를 최소화할 수 있다. 예를 들어 아래 코드에서 boolean 타입 메서드를 변경할 경우 private 접근 제어자를 사용하고 있기 때문에 같은 클래스 내에서만 테스트해보면 된다. Ex) package pkg1; class Time { private int hour;// 0~23 사이의 값을 가져야함. private int minute;.. 이전 1 2 3 4 5 다음