본문 바로가기

스타크래프트2

[java] 접근제어자 접근제어자가 나타내는 접근가능 (=데이터를 가져올수있는 지) 여부는 아래와 같다 같은 클래스 같은 패키지 다른 패키지 지만 상속된 클래스 상속되지 않은다른 패키지 public O O O O protect O O O X default O O X X private O X X X 이를 스타크래프트로 비유해보자 테란 유닛 메딕은 지상 생체 유닛이라면 타 종족의 유닛이라도 체력을 회복시켜준다 패키지를 종족별 유닛으로 구분한다고 치면 메딕의 데이터는 아래와 같다고 하자 테란 유닛.pakage ↘ 지상생체유닛.class ↘ 회복.method 를 가짐 우리의 메딕은 메딕영웅이라 우리가 아는 것과 달리 치료 대상의 범위를 멋대로 조정가능하다고 가정하자 new 메딕영웅 테란 지상생체유닛 (같은 클래스) 테란 유닛 (같은 .. 2022. 4. 22.
[java] static 의 이해 스타크래프트 게임에서 질럿을 뽑아보자 프로토스라는 패키지 안의 여러 건물과 유닛의 클래스가 존재한다 그 중 유닛인 질럿과 질럿의 업그레이드 건물 포지 질럿 생산 건물인 게이트 웨이의 관계를 이용하여 static 을 설명가능하다 질럿은 게이트 웨이에서 생산가능하며 생산 시 명령은 다음과 같다 질럿 질럿1 = new 질럿;질럿이라는 객체의 클래스를 보면 다음과 같다 class 질럿 { name : 질럿; attack : 16; hp : 100; shield : 60; }non-static 이 아닌 방식으로 attack을 높이려면 일단 new 질럿으로 생성해서 각각의 질럿들을(=인스턴스들) 만들어 하나씩 수정 할 부분의 데이터를 고치게 되지만 non-static 의 경우 class 변수 = new class(.. 2022. 4. 21.