jsp(1) - 자바 문법 간단 공부

Solar ·2022년 7월 23일
0

while 문

조건을 지정하고 조건이 true일 때 실행됨. false이 될 때까지 반복된다. false가 되지 않으면 무한 루프가 발생한다.

while 형태

while(조건) {반복할 코드}

package ch01; //이 파일이 속한 폴더에 있는 파일들의 모듈을 모두 사용할 수 있음

public class HowToUseWhile { //class 선언하기

public static void main(String[] args) {      

//psvm이라고 외워두기 .메인메소드 실행문 
      
      int a=1;        

}

}

선언문

break

제어문을 강제로 종료시킴 or 종결을 나타냄

continue

continu밑에 기술한 코드는 실행되지 않고 다시 제어문의 선언부로 돌아간다.

package ch04;//패키지에 들어간다는 것을 선언해줌

public class BreakandContinue { //클래스

public static void main(String[] args)   {     //psvm
               

for(int i = 1; i<10 ; i++) { //i값 선언, i 범위(얼마나 반복할지), 증감
System.out.println(i);

if   (i=5) {//여기서 if는 for문 안에 속한 for의 조건문. i를 반복해서 출력하기는 하는데, 얼마나 출력할거임  
            break;

}

}

}

}//클래스

//홀수 출력하기

package ch04;
class BreakandContinue {

  public static void main(String[] args) {    //메인 메소드

          for (int i =1; i<50; i++) {
              if(i%2= 0 )
                 continue;     //2로 나누어서 떨어지는(짝수이면 )
                 System.out.println(i);   //System.out.println(i)
//그런데 continue이하의 코드는 실행이 안되므로 짝수는 출력이 안된다. 그리고 홀수만 출력이 되게 됨 

}
}
}

객체 지향 프로그래밍

자동차가 있을 때 자동차의 바퀴, 엔진, 미션, 브레이크, 점화 플러그 등의 구성품을 객체라고 할 수 있음

객체 선언하고 생성하는 방법

Object o = new Object();

Object : 객체가 포함될 클래스 이름
o : 객체 이름
new : 그 클래스에 포함될 새로운~
Object : 클래스 이름

//클래스 선언

class 클래스 이름 {}

//상속

클래스와 클래스 간에 상속을 받기. 상속을 해주는 클래스를 부모 클래스라고 하고 상속을 받는 클래스를 자식 클래스라고 함.

자식 클래스 extends 부모클래스

public class ChildClass extends ParentsClass{}

//클래스 상속이 어떻게 이루어지는 지 살펴보기

myapp 프로젝트 -> 오른쪽 마우스 -> 새로 작성 -> 패키지에서 out패키지를 생성하고 해당패키지에 parent클래스를 생성하기 = 부모 클래스 작성

package out;

public class Parents {
public String parent = “부모 클래스의 변수입니다. ”;

}

Parents{}를 자식 클래스인 Child에서 상속받음

ch4패키지에 Childjava클래스 를 생성하기

package ch04;

import out.Parents; //import out.class; 는

public class Child extends Parents{

 public static void main(String[] args) {
   
    Parents p = new Parents(); //Parents 클래스에 새로운 객체(지역변수라고 보면 됨)p을 생성해준 뒤, 
    System.out.println(p.parent);    //p는 부모클래스의 변수인 parent를 참조(물려받음)한다.

}

}

//생성자

클래스가 메모리상에 객체를 생성시켰을 떄 가장 먼저 수행할 작업을 기술하는 메소드

생성자는 클래스와 같은 이름을 가지며 리턴 값을 반환할 필요가 없다.

구조

public 클래스와 동일한 이름{} = class는 쓰지 않음

예시

package ch04;

public class Constructor() {

public Constructor()   {                //클래스와 같은 이름을 가지는 생성자를 선언함

       int a = 1;    //생성자 내부에 변수 a를 선언하고 그 값을 출력하는 코드를 작성함 
       System.out.println(a);

}

public static void main(String[] args){

new Constructor();
          }

}

//new Constructor();를 통해 객체를 생성하고 객체가 생성되면 자동으로 생성자를 호출하고 생성자에 기술된 변수 a값을 출력한다.

잘 이해가 안된다 ㅠㅠ

멤버 변수

클래스에 속한 변수.
클래스에서 선언한 멤버 변수와 같은 이름으로 지역변수를 선언할 수 있다. 하지만, 이 같은 이름을 가졌다 하더라도 둘은 전혀 상관없다.

예시

package ch04;

public class Member {

  String m;
  String m1= “멤버 변수입니다. ”;      //class 안에 속해 있기 때문에 멤버 변수 


public Member {

string m = “지역 변수입니다.”;
system.out.println(m);

//public class Member class가 없기 때문에 생성자라고 보면 된다. 그리고 생성자 안에서 선언되는 변수는 지역변수라고 한다.
}

public static void main(String[] args) {

   Member member = new Member();
   System.out.println(“초기화하지 않은 멤버변수 : ” + member.m);
   System.out.println(“초기화된 멤버변수 : ” + member.m1);

}

}

접근 제어자

클래스와 클래스 간 또는 패키지와 패키지 간의 접근 권한을 지정하는 예약어

profile
Hiiiii I'm Solar:)

0개의 댓글