개인 자료란 (JE)

  서버 커뮤니티

Profile ImF 대표칭호 없음
Profile

질문하기 플러그인

플러그인 HashMap 변수 상속 오류

2023.07.04 조회 수 33 추천 수 0
이해도 입문자 
게임버전 (JE) 1.16.5 
게임버전 (BE) 관련없음 

플러그인 강좌들 보면서 따라하는데

public class EventListener implements Listener{
    HashMap<UUID, Integer> mapInt = new HashMap<UUID, Integer>();

    @EventHandler
    public void join(PlayerJoinEvent e) {
        UUID uuid = e.getPlayer().getUniqueId();
        if (mapInt.containsKey(uuid)) {
            mapInt.put(uuid, mapInt.get(uuid) + 1);
        } else {
            mapInt.put(uuid, 1);
        }
        int count = mapInt.get(uuid);
        e.setJoinMessage(count + "번째 입장했습니다!");
    }
}

저 MapInt 변수를 저장하려고 다른 클래스에서 상속받으면 Integer 부분이 null이 되버려요 

public class CommandCk extends EventListener implements CommandExecutor {
    @Override
    public boolean onCommand(CommandSender sender, org.bukkit.command.Command command, String label, String[] args) {
        Player player = (Player) sender;
        UUID uuid =  player.getUniqueId();
        sender.sendMessage(""+mapInt.get(uuid));

        return false;
    }
}

이렇게 명령어 하나 만들어서 출력 해보면 계속 null만 왜그럴까요?

뭔가 방법이 잘못 된거나요?

3개의 댓글

작은거인
2023.07.04

플러그인을 배우실떄는 자바 기초 문법을 먼저 배우시는것을 추천드려요!

클래스를 상속한다고 그 값이 전부 같아지는건 아니에요...

명이
2023.07.04

상속은 값을 전달하지 않습니다.

위임(delegation)을 통해 EventListener 인스턴스의 값을 사용해보세요.

0reo
2023.07.04

이벤트 클래스에서 생성자를쓰든 멀해서 인스턴스를 가져오셔야해용

뉴스 및 창작물
/files/thumbnails/268/789/003/262x150.crop.jpg?20240515192032

레드스톤

벌레먹은 돌 빠르게 제거하는 법

GlassesFilm

2024-05-15

0

/files/thumbnails/797/788/003/262x150.crop.jpg?20240515090924

건축

마인크래프트로 구현한 카르카손 보드게임

Warak

2024-05-15

1

/files/thumbnails/487/784/003/262x150.crop.jpg?20240508233607

모드

Windows Borderless 모드에서 악성코드 발견

학교가기싫다

2024-05-08

1

/files/thumbnails/384/778/003/262x150.crop.jpg?20240512002324

업데이트

마인크래프트 자바 에디션 스냅샷 24w18a

학교가기싫다

2024-05-06

0

/files/thumbnails/855/781/003/262x150.crop.jpg?20240505141129

레드스톤

레이저 클리너

GlassesFilm

2024-05-05

1