1. 클래스 실행

  1. 최초 클래스 메모리 로딩

(1) static 정적 변수,메서드 로딩

기본값으로 먼저 초기화 된다.

(4)초기화 블록

(5)생성자

객체의 초기화 작업을 진행한다. 인스턴스 변수에 원하는 값을 설정할 수 있따.

2)최초 클래스 메모리 로딩이 아닌 경우

       (1)전역변수 로딩

  (2)초기화 블록

객체 생성시 외부 파라미터와 관련하여 초기화 작업을 수행 할 때 사용한다.

  (3)생성자 함수

3.프로그램 종료

기본예제

package com.java.class01.design.calculator;

import java.util.Scanner;

public class CalculExam {
	//클래스 실행순서  1.static 메서드 2.전역변수  3.생성자 메서드
	int a; //2.전역변수

	//1.static 메서드
	public static void main(String[] args) {
		// 계산기 프로그램

		// 1.객체 생성
		Calculaltor c = new Calculaltor(); //3.생성자 메서드:초기화 메서드

		System.out.println("*******[계산기]*********** ");

		// 2.값 입력

		output(); //static 이텔릭체
		
		int num1 = 0;
		int num2 = 0;

		System.out.print("첫번째 정수값:");
		num1 = c.inputNumber();
		System.out.print("두번째 정수값:");
		num2 = c.inputNumber();

		System.out.println("첫번째 정수값:" + num1 + "입니다.");
		System.out.println("첫번째 정수값:" + num2 + "입니다.");

		int add = c.addCal(num1, num2);
		int minus = c.minusCal(num1, num2);
		int multiple = c.multipleCal(num1, num2);
		double division = c.divisionCal(num1, num2);
		int remainder = c.remainderCal(num1, num2);
		
		System.out.println("두정수의 합:" +add);
		System.out.println("두정수의 차:" +minus);
		System.out.println("두정수의 곱:" +multiple);
		System.out.println("두정수의 몫:" +division +"나머지:" +remainder);
		

	}

	private static void output() {
		// TODO Auto-generated method stub
		
	}

}