Access modifiers in object-oriented languages set the accessibility of classes, methods, and members. The main types are default, private, protected, and public. Default members are accessible only within the same package, private only within the same class, protected within the same package or subclasses in other packages, and public globally accessible. Access modifiers control encapsulation by restricting access to components from other code outside their defined scope.