자바의 정적 클래스

3060 단어 java
이 기사를 보고 자바에서 정적 클래스가 무엇이며 어떻게 만들 수 있는지 연구할 것입니다. 나중에 정적 클래스 사용의 몇 가지 구현 고려 사항과 이점에 대해 논의합니다.

원본 기사를 방문하십시오: https://www.java8net.com/2020/11/static-class-in-java.html

정적 클래스에 대한 자습서를 시작하기 전에 먼저 "정적이란 무엇입니까?", 정적은 정적 멤버를 생성하기 위해 클래스, 변수, 메서드 및 블록과 함께 사용할 수 있는 키워드라는 것을 간단히 상기시키고 싶습니다. 정적 멤버는 특정 인스턴스가 아닌 클래스에 속합니다. 즉, 멤버를 정적으로 만들면 개체 없이 액세스할 수 있습니다.

정적 멤버는 다음과 같을 수 있습니다.
  • 정적 변수,
  • 정적 메서드,
  • 정적 블록 또는 정적 초기화 블록 및
  • 정적 클래스

  • 정적 클래스는 기본적으로 Java에서 클래스를 그룹화하는 방법입니다. Java에서는 최상위 정적 클래스를 생성할 수 없습니다. 중첩된(내부) 클래스만. 이러한 이유로 정적 클래스는 정적 내부 클래스 또는 정적 중첩 클래스라고도 합니다. Java에서 정적 클래스를 정의하는 방법을 살펴보겠습니다. Java에서 정적 클래스를 정의하는 방법을 살펴보겠습니다.

    class Employee {
        private String name;
        private String email;
        private String address;
    
        User(String name, String email, String address) {
            this.name = name;
            this.email = email;
            this.address = address;
        }
        public String getName() {
            return name;
        }
        public String getEmail() {
            return email;
        }
        public String getAddress() {
            return address;
        }
    
        static class Validator {
    
            boolean validateEmployee(Employee employee) {
                if (!isValidName(employee.getName())) {
                    return false;
                }
                if (!isValidEmail(employee.getEmail())) {
                    return false;
                }
                return true;
            }
            private boolean isValidName(String name) {
                if (name == null) {
                    return false;
                }
                if (name.length() == 0) {
                    return false;
                }
                return true;
            }
            private boolean isValidEmail(String email) {
                if (email == null) {
                    return false;
                }
                if (email.length() == 0) {
                    return false;
                }
                return true;
            }
        }
    }
    
    


    정적 클래스를 작성할 때 고려해야 할 사항
  • 중첩 또는 내부 클래스만 가능합니다.
  • 다른 정적 멤버와 마찬가지로 모든 액세스 수정자(private, protected, public 또는 default)를 가질 수 있습니다.
  • 둘러싸는 클래스의 정적 멤버에만 액세스할 수 있습니다.
  • 둘러싸는 클래스의 비정적 멤버에 직접 액세스할 수 없습니다. 오직 자신을 둘러싸고 있는 클래스의 객체를 통해서만 비정적 멤버와 상호작용할 수 있습니다.

  • 자바 정적 클래스의 장점
  • 클래스를 정적으로 만들어 클래스 내부에 관련 클래스나 도우미 클래스를 정의할 수 있습니다.
  • 개체 참조를 통해 바깥쪽 클래스의 private 멤버에 액세스할 수 있습니다.
  • 중첩 클래스에 대한 멋진 네임스페이스를 제공합니다.
  • 둘러싸는 클래스가 업데이트되면 동일한 위치에서 정적 클래스도 업데이트할 수 있습니다.
  • Classloader는 포함하는 클래스가 로드될 때가 아니라 처음 사용할 때만 JVM의 정적 클래스를 로드합니다.

  • 원본 기사를 방문하십시오: https://www.java8net.com/2020/11/static-class-in-java.html

    결론

    이 기사에서 우리는 자바에서 정적 클래스가 무엇인지, 어떻게 생성하는지, 그리고 그 이점에 대해 공부했습니다. 유효한 사용자인지 여부를 확인할 수 있는 기능을 제공하기 위해 UserValidator 클래스가 있는 User를 만들었습니다. 둘러싸는 클래스 내부에 정적 클래스로 도우미 클래스를 두는 것이 좋습니다.

    좋은 웹페이지 즐겨찾기