то не проще будет присвоить объекту модификатор static?
Нет, не проще. static поле принадлежит самому классу (объекту класс), а не объектам. Как вы будете его модифицировать?
volatile позволяет увидеть изменения переменной во всех потоках сразу, однако не стоит забывать, что это верно только для атомарных операций!
Если же вы ищете конкретное решение конкретной проблемы - посмотрите в сторону AtomicInteger, AtomicLong и т.д. если вам нужно что-то похожее на счетчики, в сторону ReentrantLock если у вас какой-то разделяемый ресурс, и в сторону ConcurrentHashMap если у вас коллекция, с которой должно работать множество потоков...