Java 6일차 3-1(클래스)

2022. 11. 17. 10:53코딩배움일지/JAVA

public class Phone {

    String company; /*변수*/
    String model;

    void printPhoneCompany(){  /*두개의 메소드*/
        System.out.println("제조사: " + company);
        System.out.println();
    }
    void printPhoneModel(){
        System.out.println("모델명: " + model);
        System.out.println();
    }
}

 

 

public class PhoneMain {

    public static void main(String[] args) {
        Phone iPhone14 = new Phone();  /* 자료형 */  /* iPhone = 변수명*/
        Phone galaxyS22 = new Phone(); /*new = 메모리 할당*/ /* 이값은 phone 의 자료값*/

        iPhone14.company = "Apple";

        galaxyS22.company = "SAMSUNG";

        iPhone14.printPhoneCompany();
        galaxyS22.printPhoneCompany();


    }
}

 

메모리 할당은 어떻게??

 

public class Phone {

    String company; /*변수*/
    String model;

    void printPhoneCompany(){  /*두개의 메소드*/
        System.out.println("제조사: " + company);
        System.out.println();
    }
    void printPhoneModel(){
        System.out.println("모델명: " + model);
        System.out.println();
    }
}
--- 요건 틀!!!!딱! 붕어빵 틀

동적 할당
Stack / heap 

stack(정적 메모리) = 한번 정해지면 늘리지도 줄이지도 못함. 내프로그램에 주어진것
컴파일 후 메모리 할당
ex) 100명의 학생을 입력하도록 할당 -> 200 으로 늘리고 싶다면 컴파일을 다시 해야 늘린다.

heap(동적메모리) =  정적메모리를 쓰고 남은 영역 
/*빌려오는 영역*/ 이 빌리는 행위가 new(생성) - close(돌려주는 것, 소멸)
 new = 붕어빵 찍을 거란다.
new Phone(); ()-> 생성자 :  new 메모리 영역 빌리고.

빌리는 영역에 company, model 들어 있다.

        Phone iPhone14 = new Phone();  틀은 가져왔어 찍을거야 주소값 다름 iPhone14 변수 넣을 게 주소 못외우니까 new 메모리 할당
        Phone galaxyS22 = new Phone(); 틀은 가져와썽 찍을거야 주소값 다름 galaxyS22 변수 넣을 게 주소 못외우니까 new 메모리 할당

 		iPhone14.company = "Apple";  	iPhone14.= 주소참조(여기로 찾아가라) 변수 company 접근해서 Apple을 출력하자.
        galaxyS22.company = "SAMSUNG";  galaxyS22. = 주소참조(여기로 찾아가라) 변수 company 접근해서 SAMSUNG 으로 가자

==================================================
void printPhoneCompany(){   /*메소드*/
        System.out.println("제조사: " + company);
        System.out.println();
    }
        iPhone14.printPhoneCompany(); 메소드 printPhoneComapney 껄로 출력하래 임마!
        galaxyS22.printPhoneCompany();

'코딩배움일지 > JAVA' 카테고리의 다른 글

Java 6일차 4-1 (생성자)  (0) 2022.11.17
Java 6일차 4 생성자1  (0) 2022.11.17
Java 6일차 3 (클래스)  (0) 2022.11.17
Java 6일차 2 (객체)  (0) 2022.11.17
Java 6일차 1 (메소드 사용법)  (1) 2022.11.17