자바동영상강좌

페이지 정보

profile_image
작성자다스붸이다 조회 32회 작성일 2020-09-21 11:11:18 댓글 0

본문

자바 기초 프로그래밍 강좌 1강 - Hello World! (Java Programming Tutorial 2017 #1)

자바 기초 프로그래밍 강좌 1강 - Hello World! (Java Programming Tutorial 2017 #1) 강의 동영상입니다. JDK, 환경 변수 설정, 이클립스 설치를 거쳐서 완전한 자바 개발 환경을 구축한 이후에 Hello World를 출력하는 방법에 대해서 공부합니다.
김말이 : 클래스 생성할때 src가 안나오는데 뭐가 잘못된걸까요ㅠㅠ
뀰북.. : eclipse 깔때 자바를 최신버전으로 받으라고 뜨고 eclipse가 실행이 안되는데 어떻게 해요?
질문빌런 : 형님 그래도 1080p는 되야하지 않을까요
asdf asdf : 영상 초반부에 6개 파트로 나누어서 설명을 해주신다고 하신거 같은데 저 6개 파트를 완벽히 숙지한다면 자바를 다룬다고 말할 수 있을정도가 되나요??
도야지 : 환경 변수설정은 왜 하는 거예요?
수화수화 : 자바를 배우고싶었는데 사는 곳에 그런 학원이없어서 유튜브를 뒤져봤는데 이런 대박 강의가 무료라니요..ㅠㅠㅠ 감사합니다..♡
스이잉 : 와 대학생이고 컴공인데 자바 배우는데 교수님은 기초지식 가지고 다 있는줄알고 수업하셔서 전역한 직후라 귀에 하나도 안들어왔는데 감사합니다
giwoo kweon : ㅠㅠ 2017년인게 아쉽.....
jigukbap Deh : 이형 ㅈㄴ빠르네
똥괭이처돌이 : 정말 감사합니다. 열심히 하겠습니다!

자바[java]프로그래밍 동영상 강좌 인강 독학 배우기 강의 교육 학습 다운로드 기초 문법.

강의보시고 구독을 부탁드립니다 ☞
http://www.ib96.com, 온라인교육 전문사이트
http://down.ib96.com 동영상강좌 다운로드마켓
(주)아이비컴퓨터교육닷컴은 IT 자격증,디자인 프로그래밍 오피스등 다양한 교육컨텐츠를 제작 서비스하는 교육청 등록 평생교육 기관입니다 샘플 강좌를 보시고 컴퓨터와 모바일기기에서
쉽게 컴퓨터 프로그램을 배우시고 실무에 활용하세요

JAVA의 인터페이스란? 인터페이스목적,개요, 실습, 추상클래스와 비교, 추상메소드(자바/JAVA/자바교육/자바강의/자바동영상/자바강좌/추천JAVA강좌/JAVA동영상)

강의자료 : http://ojc.asia/bbs/board.php?bo_table=LecJava\u0026wr_id=755

1. 인터페이스(interface) 사용목적

인터페이스는 추상클래스와 마찬가지로 어떤 클래스를 만들 때 그 “틀” 로 서 사용 되는 것이 주 목적 입니다. (계약상의 의무)

자바 컴파일러가 코드가 의존하는 계약(인터페이스에 정의한 추상 메소드)이 실제로 충족되는지(자식 클래스가 모두 구현했는지) 확인할 수 있다.

자바는 단일 상속만 지원하므로 인터페이스를 이용하여 다중 상속 기능을 구현할 수 있습니다.

자바프로그래밍에서 결합도를 떨어뜨리는 프로그래밍을 할 때 인터페이스를 기반으로 하여 프로그래밍 합니다.

Emp라는 인터페이스가 있고 이를 구현한 Programmer, Designer 클래스가 있을 때

Emp e1 = new Programmer();

e1.work(); //Dynamic Binding, Late Binding

Emp e2 = new Programmer();

e2.work(); //Dynamic Binding, Late Binding





자바컴파일러는 컴파일 시점에는 Emp 타입에 work() 메소드가 있는지 체크만 하고 work() 메소드의 호출을 실제 바인딩 하지 않고 런 타임중에 오른쪽에 new 되는 클래스의 매소드로 바인딩 합니다. 이를 late binding, dynamic binding, run-time binding 이라고 합니다.

바인딩이란 “logical address를 physical address로 mapping하는것”





2. 인터페이스(interface)



추상클래스는 일부 메소드를 구현할 수 있고, 또 일부는 추상 메소드로 만들어 추상메소드를 상속받는 자식 클래스에서 재정의 하라고 하는 것 입니다.

인터페이스는 모든 메소드가 미완성 메소드인 추상 메소드이고 접근지정은 기본적으로 public으로 설정 됩니다. 추상클래스의 경우 protected, private 설정 가능합니다.

클래스를 설계도 라는 관점에서 보면 추상클래스는 “미완성 설계”도 이고, 인터페이스는 하나도 만들어 지지않은 “기본 설계도”로 볼 수 있습니다.

인터페이스는 상수(final 변수)와 추상 메소드로 구성 됩니다.

추상클래스와 마찬가지로 객체의 인스턴스를 생성할 수 없습니다.

클래스는 필드의 타입으로 기본자료형, 클래스 등이 올 수 있지만 인터페이스는 int, double 등의 기본 자료형 만이 필드로 사용될 수 있습니다. 또한 각 필드는 반드시 초기화가 되어야 하는데 초기화가 되어야 하는 이유는 인터페이스의 필드는 암시적으로 final과 static으로 설정되어 있기 때문 입니다.

int age = 5  static final int age = 5;

클래스가 인터페이스를 구현하게 되면 인터페이스 내에 정의된 상수는 상속된 것 처럼 직접 사용 할 수 있습니다.



클래스가 구현하는 인터페이스의 모든 메소드를 재정의 하지 않으면 abstract 클래스로 선언되어야 합니다.

서로 관련이 없는 클래스들 사이의 유사성을 표현시 용이 합니다. (수평적인 개념)

인터페이스는 여러 개의 인터페이스를 상속 가능 합니다.



interface I1

{ void m1(); }



interface I2

{ void m2(); }



interface I3 extends I1, I2

{ void m3(); }







클래스는 상위 클래스를 extends 하는 대신에 여러 개의 인터페이스 구현 가능 합니다.

인터페이스 계층 구조와 클래스 계층 구조는 다를 수도 있습니다.



3. Abstract class \u0026 interface



추상 메소드를 가지고 있고 이를 상속 받거나 구현하는 클래스는 이 추상 메소드를 재정의하고 구현해야 한다는 점, 그리고 다형성을 구현하는 방법이라는 점, 메소드들이 동적으로 바인딩 된다는 점들은 비슷합니다.

차이점

- 인터페이스는 서로 연관성이 없는 클래스들에 의해 구현될 수 있고 따라서 수평적인 구현이 가능하지만 추상클래스의 경우 단일 상속 개념 하에 수직적인 구조로 상속을 해야만 합니다.

- 인터페이스에서는 메소드를 선언만 할 수 있으며 구현할 수 없고 이 구현은 인터페이스를 구현하도록 설정된 클래스에서 가능 합니다. 하지만 추상클래스의 경우에는 추상 클래스 내부에서 메소드의 선언과 구현이 모두 가능하며 또한 이를 상속 받은 클래스에서도 재정의가 가능 합니다.



인터페이스의 모든 메소드는 구현되지 않은 추상 메소드이고 추상클래스는 구현된 메소드도 가질 수 있습니다.

자바 인터페이스 안에 정의된 변수는 기본적으로 public static final 입니다. 즉 더 이상 수정이 불가능한 상수이지만 추상클래스의 필드는 private, protected등을 가질 수 있습니다.

추상클래스는 확장해서 상속 받아야 하며(extends), 인터페이스는 구현(implements) 해야 합니다.

인터페이스도 상속을 받는 것이 가능하지만 다른 인터페이스만 상속을 받을 수 있으며, 추상클래스는 다른 자바클래스를 상속받을 수 있고 다른 인터페이스도 여러 개 구현할 수 있습니다.

Java 클래스는 여러 인터페이스를 구현할 수 있지만 하나의 클래스 만 확장하여 상속받을 수 있습니다.

인터페이스, 추상클래스 모두 인스턴스화 할 수 없습니다.

추상 클래스는 인스턴스화 할 수 없지만 main ()이 있으면 호출 할 수 있습니다.





package javatest;



/**

* 사원이 되려면 출근하고, 일하고, 퇴근해야 한다는 규칙, 계약사항

* @author jclee

*/

interface Emp {

void gotoWork();

void work();

void getOff();

}



class Programmer implements Emp {

private String ename;



public Programmer(String ename) { this.ename = ename; }

public void gotoWork() {

System.out.println(ename + "사원이 걸어서 출근 합니다.");

}



@Override

public void work() {

System.out.println(ename + "사원이 개발을 합니다.");

}



@Override

public void getOff() {

System.out.println(ename + "사원이 걸어서 퇴근 합니다.");

}

}



class Designer implements Emp {

private String ename;



public Designer(String ename) {

this.ename = ename;

}



public void gotoWork() {

System.out.println(ename + "사원이 차타고 출근 합니다.");

}



@Override

public void work() {

System.out.println(ename + "사원이 디자인을 합니다.");

}



@Override

public void getOff() {

System.out.println(ename + "사원이 차타고 퇴근 합니다.");

}

}



public class EmpTest {

public static void main(String[] args) {

Emp p = new Programmer("홍길동"); p.gotoWork(); p.work(); p.getOff();

Emp d = new Designer("김길동"); d.gotoWork(); d.work(); d.getOff();

}

}



홍길동사원이 걸어서 출근 합니다.
홍길동사원이 개발을 합니다.
홍길동사원이 걸어서 퇴근 합니다.
김길동사원이 차타고 출근 합니다.
김길동사원이 디자인을 합니다.
김길동사원이 차타고 퇴근 합니다.




#자바인터페이스, #인터페이스, #JAVA인터페이스, #추상클래스, #자바추상클래스, #추상메소드, #자바추상메소드, #자바동영상, #자바강의, #자바교육, #자바강좌, #자바, #JAVA, #자바동영상강의, #추천자바강의, #추천자바강좌, #JAVA동영상, #JAVA강의, #JAVA강좌, #JAVA교육, #JAVA, #추천JAVA강의, #추천JAVA교육, #추천JAVA강좌, #자바소스, #자바실습

... 

#자바동영상강좌

댓글목록

등록된 댓글이 없습니다.

전체 534건 1 페이지
게시물 검색
Copyright © www.dapafair.kr. All rights reserved.  Contact : help@oxmail.xyz