public : 어디서든 사용가능private : private가 정의 된 해당 contract 내부에서만 사용가능external : exernal이 정의된 contract가 아닌 외부 contract에서 사용가능internal : internal이 정의된 contr