java 기초 면접 문제 자주 나오기 (1)

2970 단어
1."=="equals 방법과 차이점은?
1.== 조작부호는 기본 데이터 형식 변수에 대해 두 값이 같은지 비교하는 것이고 인용 유형에 대해서는 인용된 메모리의 첫 번째 주소, 즉 같은 대상을 인용하는 것을 비교한다.1
  • Obeject의 equals 방법은 구체적인 업무에 따라 개발자가 이를 다시 쓰고 다시 쓰지 않으며 기본적으로 =를 사용한다.(Object 클래스에는 두 가지 방법으로 객체의 ID를 추정할 수 있습니다: equals()와 hashCode().만약 equals () 방법에 따라 두 대상이 서로 같다고 판단한다면, 이 두 대상 중의 모든 호출hashCode () 방법은 반드시 같은 정수 결과를 생성할 것이다.그러나 반대로 두 개의hashCode()가 되돌아오는 결과가 같으면 두 대상의 equals() 방법은 반드시 같지 않다.기본적으로 equals () 방법은 두 대상의 주소 값을 비교하는 데 사용되고 원시적인hashCode () 방법은 그 대상의 물리적 주소를 되돌려주는 데 사용됩니다)
  • String은 equals 메소드를 다시 쓰는 세 가지 방법이 있습니다.
  • 비교 대상과 현재 대상이 같은 대상(Object의 equals 방법)이고true로 되돌아오기;
  • 들어오는 대상은String 유형으로 두 문자열의 길이를 비교하고 서로 다른false를 되돌려준다. 길이가 같으면 한 글자씩 비교하고 한 글자씩true를 되돌려준다.
  • 들어오는 대상은 String 형식이 아니며false로 되돌아갑니다.


  • 2.==와 equal 주의
  • 포장류의'=='연산은 산술 연산을 만나지 않은 상황에서 자동으로 상자를 뜯지 않는다
  • 포장류의 equals() 방법은 데이터 변환을 처리하지 않는다
  • 2. String, StringBuilder, StringBuffer 차이점
  • String은 내용이 변할 수 없는 문자열로 밑바닥에final char[] 배열 StringBuffer와 StringBuilder 밑바닥에final 키워드가 없습니다.
  • String에 대한 수정은 사실 new에 String Builder가 있고 append 방법을 호출한 다음에 toString을 호출해서 새로운String을 되돌려줍니다.
  • StringBuffer는StringBuilder를 바탕으로 자물쇠를 잠그는 것이다. 자물쇠는 중량급 작업으로 운영체제의 핵을 호출하여 실현해야 하기 때문에 시간이 비교적 걸린다.따라서 효율성: String

  • 3. ArrayList와 LinkedList의 차이점과 사용 장면
  • ArrayList와LinkedList는 모두java를 실현했다.util.List(범주 지원, 다양한 유형의 객체 저장), Cloneable(클론 지원), java.io.시리얼화를 지원합니다.
  • 모두 라인이 안전하지 않습니다. 다중 라인에서 그들을 호출하려면 Collection을 사용할 수 있습니다.synchronizedList 방법
  • ArrayList 밑바닥은 수조를 사용하고LinkdLlist 밑바닥은 체인 테이블을 사용하며 수조는 무작위 접근 특징을 가지고 특정한 요소를 조회할 수 있으나 삽입 삭제와 수정이 비교적 느리다
  • 4. 변수 초기화 문제
  • 클래스 변수는 초기 값을 설정하지 않을 때 기본값을 부여하고 국부 방법에서 성명한 국부 변수와final 성명 변수는 수동으로 초기화해야 하며 기본값을 부여하지 않습니다.
  • Java의 기본 데이터 형식 기본값: short: 0 int: 0 long: 0 float: 0.0 double: 0.0 char: 0 String:null Java의 대상 참조 기본값: null
  • 5.java 파일의 공통 클래스와main 방법
  • 한 파일에 여러 개의publicclass가 있을 수 있다. 즉, 외부 클래스는public이고 내부 클래스도 있을 수 있다.
    public class Main { public class Inner{
    
        }
    }

  • 한 파일에 여러 개의 클래스가 있을 수 있고 여러 개의 병렬 클래스가 될 수도 있고 외부 클래스, 내부 클래스가 결합될 수도 있다.
  • 한 클래스에 여러 개의main 방법이 있는데 이것은 다시 불러올 수 있지만public static void main(String[]args) 방법은 하나밖에 없습니다.
  • 류에서main방법이 있을 수도 있고main방법이 없을 수도 있고,main()방법이 있을 때도 임의로 접근할 수 있다.이 클래스는 반드시 집행해야 하는 것이 아니라 보조 클래스일 수 있기 때문이다.
    public class MainTest { void main(){
        }
    }


  • 5. 배열 선언
    (1) 자바에서 하나의 수조를 설명할 때 수조의 길이를 직접 제한할 수 없고 실례화 대상을 만들 때만 주어진 수조의 길이를 정할 수 있다.
    전재 대상:https://www.cnblogs.com/sjxbg/p/8795333.html

    좋은 웹페이지 즐겨찾기