자바 11일차

11. 추상클래스,인터페이스, 중첩클래스(p193) -> 익명의 Inner class,  GUI Programming개요



=> 자바문법을 정리(API참조)
=> 이벤트처리-> 객체형변환 -> 6장 다형성
=> 9장 예외처리->11장 자바 입출력->12장 스레드
=> 10장 또는 17장 네트워크 프로그램(채팅) => 시험
오라클->1.5주 ->10장 다중데이터처리-> 14장.JDBC->미니프로젝트
=============================================
과제풀이) ReverseTest.java로 저장
실행결과
문자열을 입력?adgagdga
->agdgagda-> 거꾸로 출력
Ex) ReverseTest.java(강사님코딩)

ReverseTest
리뷰
일반클래스-> 객체를 생성하기위해서
추상클래스=> 프로그램의 설계->p182~183
 


● 인터페이스

1. 추상메서드만 존재
public (static final) int size =10; == public int size=10;
public abstract void go();=> 일반메서드도 있기때문에
public void go();=> 일반메서드없이 무조건 추상메서드만 있기때문에
2. 객체생성 불가
3. 차이점 -> 다중 상속이 가능하다.
추상클래스는 단일상속만 가능하다.
4. 추상클래스->extends, 인터페이스->implements(구현), 보완
5. 상속받을때 추상메서드를 -> 반드시 오버라이딩
6. 강제성통일성을 부여(전체 프로그램의 설계목적)

오버로딩 개념-> 하나의 클래스에 비슷한 기능

Ex) Volume.java(Sound개발  설계목적)

Volume

Ex) AdvanceVolume.java(상속포함)

AdvenceVolume
Ex) TV.java                            

TV

Ex)Radio.java                

Radio

Ex)MP3.java

MP3
 Ex) VolTest.java(main())

VolTest

Flyer flyer = new Airplane(); //객체형변환
p174=> Manager m = (Manager)e;//객체형변환
p192=> class MyInterImpl implements Inter03 {
method01,method02,method03
}
Airplane air = new Airplane();
 


※ Frame(창)

Ex) FrameDemo.java

FrameDemo
java.lang.Object
java.awt.Component->컴포넌트
java.awt.Container->Frame, Dialog
java.awt.Window-> 창
java.awt.Frame-> 창

setSize(w,h)
 


● awt & swing

1. 창을 생성->실행->JFrame생성
Ex) FrameDemo.java
2.JFrame클래스를 상속
Ex) FrameDemo2.java

FrameDemo2
3. 창에 컴포넌트를 부착시켜서 화면에 보여주는 방법
Ex)PanalDemo.java

PanelDemo
setLayout()화면구조를 변경
setBackground()
add()
====> 반드시 contentPane객체->getContentPane()
this().getContentpane()(컨텐트패인객체명).add(namePanel)(부착시킬 컴포넌트명)

Ex) BorderTest.java

BorderTest
※ 생성할때는 JFrame -> JPanel -> JButton
※ 부착할때는 JButton -> Jpanel -> JFrame

BorderLayout->왼,오,위,아래,가운데 5군데 영역(부착(JFrame))
FlowLayout -> 왼쪽을 기준 –> 오른쪽으로 배치시키는 방법 =>JPanel의 기본 레이아웃
GridLayout ->행과 열을 지정해서 화면에 배치

과제)
ShapeTest.java로 저장할것
도형(원, 삼각형, 직사각형….)
실행결과)
원하시는 도형을 선택? 1.원 2. 사각형 3.종료
1
원의 반지름? 3 -> 3*3*3.14
최종 원의 면적은 ?
원하시는 도형을 선택? 1.원 2. 사각형 3.종료
가로? 5
세로? 4
최종 사각형의 면적은? 20
원하시는 도형을 선택? 1.원 2. 사각형 3.종료
3
정상적으로 프로그램이 종료됩니다.
public class circle
public class quadrangle

Quadrangle&CircleShapeTest