6일차(중첩제어문,탈출문,객체지향프로그래밍(6,7장)
c:\webtest
java
6일차(중첩제어문,탈출문,객체지향프로그래밍)
p131->p137->중첩제어문
j0902
|
-ForTest2
=>탈출문(continue,break,return)
(=분기문)
break->주로 반복문(while,do~while,for)에서
특정한 조건이 만족->이 break문과 가장
가까운 제어문을 탈출
이클립스가 익숙하지않으면
원래상태로 전환=>window->reset perspective
break->1.레이블이 없는 break문(ForTest2.java)
2.레이블이 있는 break문->p142
=>특정 레이블(책갈피)가 있는 부위의 제어문을
탈출하고 싶을때 사용하는 방법(BreakTest.java)
continue문=>skip문
=>특정조건에 만족하는 continue문을
만나게 되면 continue구문이하의 문장을
수행하지 않고(skip)
=>continue문과 가장 가까운 루프로 이동
=>for문의 경우->증감식으로 이동
while문의 경우->조건식으로 이동
================================
=>BreakTest.java->Save As->ConTest.java
continue문
a=1,b=1
a=1,b=3
a=1,b=4
a=1,b=5
=======
a=2,b=1
a=2,b=3
a=2,b=4
a=2,b=5
=======
a=3,b=1
a=3,b=3
a=3,b=4
a=3,b=5
=======
a=4,b=1
a=4,b=3
a=4,b=4
a=4,b=5
=======
a=5,b=1
a=5,b=3
a=5,b=4
a=5,b=5
=======
for반복문 종료!
<문제>=>SumBreak.java저장
조건1:1~100까지의 합계를 구하시오.(int sum,int i)
조건2:3의 배수 또는 5의 배수의 경우에만 합계를 구하시오
|| (for문 if문 사용)
조건3:->3의배수 또는 5의 배수값을 출력(i값을 출력)
합계가 200이 넘어가는 i값의 최소값을 구하시오
=>if(sum > 200) break;
while(true){
...
}
<문제>->Star1.java
--->별을 체크->j
--->행증가--->i
package j0902;
public class Star1 {
public static void main(String[] args) {
// TODO Auto-generated method stub
System.out.println("1.별을 출력");
for(int i=1;i<=5;i++){ //행
for(int j=1;j<=i ;j++){
// for(int j=5;j>=i;j--){
System.out.print("*");//*****
}
System.out.println();//줄바꿈
}//outer for
}//main
}
==================
*
**
***
****
*****
*****
****
***
**
*
================
A
AA
AAA
AAAA
AAAAA
package j0902;
public class Alpha {
public static void main(String[] args) {
// TODO Auto-generated method stub
System.out.println("1.별을 출력");
char mun='A';
for(int i=1;i<=5;i++){ //행
for(int j=1;j<=i ;j++){
System.out.print(mun);//*****
}
System.out.println();//줄바꿈
}//outer for
}//main
}
======
A
BC
DEF
GHIJ
KLMNO
package j0902;
public class Alpha {
public static void main(String[] args) {
// TODO Auto-generated method stub
System.out.println("1.별을 출력");
char mun='A';
for(int i=1;i<=5;i++){ //행
for(int j=1;j<=i ;j++){
System.out.print(mun);//*****
mun++;//65->66->67...
}
System.out.println();//줄바꿈
}//outer for
}//main
}
=============================
객체지향 프로그래밍->Java,C#,Delphi,PowerBuilder,,,
=>윈도우에서 프로그램작성법
1.추상화->p176~190 클래스의 개요,작성,구성요소
메서드작성방법(6장~7장)
2.캡슐화->메서드작성방법(09장)
접근제어 지시자,정보은닉
3.다형성=>p190 생성자,오버로딩(11장),메서드작성방법(6장)
4.상속성=>14~16장(클래스의 상속)
도스->C
======================================
p184
하나의 파일에 클래스가 한개만 작성된 예제->ConTest.java
==========================
하나의 파일에 클래스가 한개이상인 경우의 예제
class A(main())------->A.java
class B B.java
class C C.java
....=>갯수는 제한이 없다.
=============
1.하나의 파일에 클래스 여러개가 있어도->main()메서드를 가진 클래스를
파일명으로 부여
2.public class로 시작하는 클래스를 파일명으로 부여한다.
->main()를 가진다
하나의 파일에 public class로 시작하는 것은 하나만 가능
=================================
public class A(main())------->A.java
public class B B.java
class C
3.class A
class B
class C
======================
->main()메서드도 없고,public class로 시작하는 클래스는 없는경우
=>1)A.java 2)B.java 3)C.java 4)그날의 컨디션 A,B,C.java부여
-----------------------------------------------------------------
추상화->ppt자료
현실세계에 존재하는 모든 사물(객체)의 공통적인 상태,특징과
행동양식을 유추(->잘 생각해서) 클래스를 만들어내는
일련의 과정들
ex) 자동차(종류,회사별,이름,,키보드,연필,,,
===>8가지 자료형으로도 도저히 저장할 수 없는 대상->공통의특징,
행동양식
=>자동차,사람,컴퓨터,자판기,....
========================================
자동차->Car.java,==>운전->CarHandling.java
//1.main()메서드 있는 클래스->실행목적
//2.main()메서드가 없는 클래스->데이터저장 목적
1.단순하고,반복적인 기능을 가진경우->메서드작성
형식) 접근지정자 반환형(void) 메서드명(){
}
=>클래스의 구성요소 메서드작성.ppt
2.매개변수가 존재하고 반환형이 없는 메서드
=>데이터를 저장하거나 출력
=============================
클래스-->새로운 자료형을 만들기위한 설계도(빵틀)
->자동차===================>공장
대량생산
사물(객체)
객체를 생성====>자동차를 저장하기위한 공간을 메모리상에
만들어라
===================================
Car.java->CarHandling.java->