Java 면접보전 1.13~1.31 [2020.5 베타 버전]

5545 단어

Java 면접보전 1.13~1.31 [2020.5 베타 버전]


1. Java 기반


1.13 정적 변수와 실례 변수의 차이는?


정적 변수
인스턴스 변수
정의
static 키워드로 선언된
실례 변수는 클래스에서 설명하지만, 방법, 구조 함수 또는 기타 블록 이외에
초기화
클래스에 속합니다. 클래스의 바이트 코드만 불러오면 공간이 분배됩니다.
공간을 할당하려면 인스턴스 객체를 만들어야 합니다.
로드 횟수
로드 초기화
객체를 작성할 때마다 로드

1.14static 방법 내부에서 비static 방법에 대한 호출을 보낼 수 있습니까?


안 돼요. static 방법이 호출될 때 대상을 만들 필요가 없어요. static 방법이 아닌 호출은 실례를 만들어야 해요. 이 시간에 마치 당신이 대상을 찾고 싶은 것처럼 수은애, 당신의 대상이 아직 태어나지 않았어요. 그건 상관없어요.

1.15 Math.round(1.5)는 얼마입니까?Math.round(-1.5)는 또 얼마입니까?

// Math.round  
Math.round(1.5)  =  2
Math.round(-1.5) =  -1
//
Math.ceil()  
Math.floor()  

1.16 아래의 코드는 어떤 타당하지 않은 점이 있습니까?

// 1
if(str.equals("test")){}

// 2
System.out.println(0.1+0.2);

첫 번째str가null이면 빈 바늘 이상을 던져서 "test"로 변경합니다.equals(str) 두 번째는 0.300000000000004를 출력하여
System.out.println(new BigDecimal(String.valueOf(0.1)).add(new BigDecimal(String.valueOf(0.2))));

1.17 자바의 역할 영역public,protected,private와 기본적으로 쓰지 않을 때의 차이


역할 영역
설명
public
모든 클래스에 접근할 수 있습니다
protected
같은 가방의 모든 클래스에 접근할 수 있고, 모든 하위 클래스에 접근할 수 있으며, 하위 클래스는 같은 가방에 접근할 수 없습니다.
private
현재 클래스의 방법에만 접근할 수 있습니다
기본값
액세스 수식자가 없으면 같은 가방의 모든 클래스에 접근할 수 있습니다. 하위 클래스가 같은 가방에 없으면 접근할 수 없습니다.

1.18 리셋과 리셋의 차이


많아요. 면접 볼 때 간단명료하게 말해요.
  • 한 클래스에 다시 싣고 부자 클래스에 다시 쓰기
  • 리셋은 한 클래스에 여러 개의 리셋이 있을 수 있지만 매개 변수 목록이 다르고 매개 변수 목록은 개수나 데이터 형식이 다르며 리셋하면 반환값과 인삼이 바뀌지 않는다
  • 다시 쓰는 방법은 부류보다 더 적은 이상을 던질 수 있을 뿐이고 접근 제한자도 부류보다 클 수 있다. ps: 파라미터는 같지만 되돌아오는 값은 같다. 다시 불러오는 것이 아니라 오류 쓰기
  • 기본적으로 이런 것들을 대답하면 OK 확장이다. 방법의 재부팅과 재부팅은 모두 다태성을 실현하는 방식이다. 전자는 컴파일할 때의 다태성이고 후자는 운행할 때의 다태성이다. 재부팅은 리씨대환원칙에 따라 자류는 부류의 기능을 확장할 수 있지만 부류의 원래 기능을 바꿀 수 없다.

    1.19 Integer와 int의 차이점

  • Integer는 int의 포장 종류로null값
  • 이 될 수 있다
  • int는 8가지 원시 데이터 유형 중 하나이고 8가지 원시 데이터 유형과 포장 유형
  • 오리지널
    포장류
    byte
    Byte
    short
    Short
    int
    Integer
    long
    Long
    boolean
    Boolean
    char
    Character
    float
    Float
    double
    Double

    1.20 구조자 Constructor는 override가 될 수 있습니까?


    구조자 Constructor는 상속될 수 없기 때문에 Override를 다시 쓸 수 없지만 Overload를 다시 불러올 수 있습니다

    1.21java의 인터페이스는 인터페이스를 계승할 수 있습니까?인터페이스에서 정적 또는 기본 방법을 정의할 수 있습니까?


    자바의 인터페이스는 인터페이스를 계승할 수 있으며, 두 번째 인터페이스는 jdk8 이후에도 지원되며, 정적 방법체를 쓸 수 있지만, 기본 방법은default 수식자를 사용해야 합니다.
    public interface TestInterface implements A,B,C{  
      
        static void staticMethod() {  
            System.out.println("static method");  
        }
     
        default void defaultMethod() {  
            System.out.println("default method");  
        }
    }
    

    1.22 추상류는 인터페이스를 실현할 수 있습니까?추상류는 구체류를 계승할 수 있습니까?추상 클래스에 정적main 방법이 있습니까?

  • 추상 클래스는 인터페이스를 실현할 수 있다
  • 추상류는 구체류를 계승할 수 있다
  • 추상 클래스에 정적main 방법이 있을 수 있음
  • 추상류는 인터페이스를 실현할 수 있으며, 반드시 인터페이스 중의 모든 방법을 실현하지 않아도 된다. 추상류와 일반류의 구별
  • 전자는 실례화할 수 없음
  • 전자는 추상적인 방법이 존재할 수 있음
  • 후자는 인터페이스를 실현하려면 인터페이스의 모든 방법을 실현해야 한다
  • 1.23 clone()은 어떤 역할을 합니까?


    super.clone () 복제본 사용
    package erdan.demo;
    
    public class TestClone {
        public static void main(String[] args) throws CloneNotSupportedException {
            Demo demo = new Demo();
            demo.a = 1;
            demo.b = 2;
            Demo demo2 = (Demo) demo.clone();
            demo2.a = 100;
            System.out.println(demo.a + " " + demo.b);
            System.out.println(demo2.a + " " + demo2.b);
        }
    
        static class Demo implements Cloneable {
            int a;
            int b;
    
            public Object clone() throws CloneNotSupportedException {
                return super.clone();
            }
        }
    }
    

    1.24 대상을 향한 특징


    특징.
    총결산
    봉인
    대상의 속성과 세부 사항을 숨기고 대외적으로 공개된 접근 인터페이스를 제공합니다
    추상
    일류 대상의 공통된 특징을 구조류의 과정으로 총결해 내다
    물려받다
    기존 클래스에서 계승 정보를 얻어 새로운 클래스를 만드는 과정
    다태
    서로 다른 하위 유형의 대상이 같은 메시지에 대한 서로 다른 응답을 허용하는 것을 가리킨다

    1.25 Java에서 멀티태스킹을 실현하는 메커니즘은 무엇입니까?


    답: 부류에는 방법fun()이 있고, 부류B와 C는 각각fun() 방법을 계승하고 다시 썼다. A a = new B()를 만들 때 a.fun()는 B의fun()을 호출하고, new C()라면 C의fun() 방법을 호출하고, 어떤 종류의fun()를 사용했는지 어떻게 판단하는가가 동적 귀속이다. 이 현상은 다태적 귀속이다.

    1.26 abstract class와interface는 어떤 차이가 있습니까?

  • abstract class는 구조 방법이 있을 수 있지만interface는 안 된다
  • 단일 계승(추상류), 다중 실현(인터페이스)
  • 방법 유형: 인터페이스에는 추상적인 방법만 있을 수 있다.추상류는 추상과 비추상적인 방법을 가지고 있을 수 있다.Java 8부터 인터페이스에 기본 메서드와 정적 메서드가 있을 수도 있습니다.
  • 최종 변수: 자바 인터페이스에서 설명하는 변수는 기본값final이고 추상 클래스는 비final 변수를 포함할 수 있습니다.
  • 변수 유형: 추상류는final,비final,static,비static 변수를 가지고 있다.인터페이스는 static 변수와final 변수만 있습니다.
  • 실현: 추상류는 인터페이스의 실현을 제공할 수 있다.인터페이스는 추상적인 실현을 제공할 수 없습니다.
  • 계승과 추상: 키워드'implements'를 사용하여 자바 인터페이스를 실현할 수 있고 키워드'extends'를 사용하여 추상 클래스를 확장할 수 있다.
  • 데이터 구성원의 접근 가능성: 기본적으로 자바 인터페이스의 구성원은 공공입니다.자바 추상 클래스는private,protected 수식이 있는 클래스 구성원
  • 인터페이스는 제약 클래스에 사용되고 추상 클래스는 기본적으로 코드 복용에 사용된다
  • 1.30 추상적인 방법은 정적일 수 있습니까?abstract와synchronized를 함께 사용할 수 있습니까?


    static 성명 방법으로 이 방법은 클래스를 생성하지 않을 때 클래스에 직접 호출될 수 있지만 abstract 방법은 호출될 수 없기 때문에 정적일 수 없습니다.synchronized는 구체적인 방법에 작용해야만 의미가 있기 때문에 안 된다

    1.31 내부 클래스란?Static Nested Class와 inner class의 차이점은?


    내부 클래스는 말 그대로 클래스 내부의 클래스로 내부 클래스에서 정적 구성원인 Static Nested Class 정적 내부 클래스를 정의할 수 없고 외부 실례에 의존하지 않고 실례화되며 일반적인 내부 클래스는 외부 실례화된 후에야 실례화할 수 있다.

    좋은 웹페이지 즐겨찾기