21xrx.com
2025-03-25 16:42:42 Tuesday
文章检索 我的文章 写文章
Java面试基本问题解析及代码案例
2023-06-18 21:47:35 深夜i     8     0
Java基本数据类型 大小 代码案例

在面试Java开发岗位时,经常会被问到一些基本问题,本文将对这些问题进行解析并提供相应的代码案例。

1. Java的基本数据类型及其大小

Java的基本数据类型包括八种:byte、short、int、long、float、double、boolean和char,它们的大小分别为1、2、4、8、4、8、1和2字节。

代码案例:

public class DataTypeSize {
  public static void main(String[] args) {
    System.out.println("byte:" + Byte.SIZE / 8 + "字节");
    System.out.println("short:" + Short.SIZE / 8 + "字节");
    System.out.println("int:" + Integer.SIZE / 8 + "字节");
    System.out.println("long:" + Long.SIZE / 8 + "字节");
    System.out.println("float:" + Float.SIZE / 8 + "字节");
    System.out.println("double:" + Double.SIZE / 8 + "字节");
    System.out.println("boolean:" + Boolean.toString(false).length() + "字节");
    System.out.println("char:" + Character.SIZE / 8 + "字节");
  }
}

2. Java的四种访问权限修饰词及其作用

Java的四种访问权限修饰词包括public、protected、default和private,它们分别用来修饰类、属性和方法的访问权限。public表示可以被所有类访问,protected表示可以被同一个包内的类访问和不同包中的子类访问,default表示可以被同一个包内的类访问,private表示只能被类内部的其它方法访问。

代码案例:

public class AccessModifiers {
  public int publicVar;
  protected int protectedVar;
  int defaultVar;
  private int privateVar;
  public void publicMethod() {
    System.out.println("public method");
  }
  protected void protectedMethod() {
    System.out.println("protected method");
  }
  void defaultMethod() {
    System.out.println("default method");
  }
  private void privateMethod() {
    System.out.println("private method");
  }
}
public class SubClass extends AccessModifiers {
  public static void main(String[] args) {
    SubClass subClass = new SubClass();
    System.out.println(subClass.publicVar);
    System.out.println(subClass.protectedVar);
    System.out.println(subClass.defaultVar);//同一包下可以访问
    //System.out.println(subClass.privateVar);//不能访问
    subClass.publicMethod();
    subClass.protectedMethod();
    subClass.defaultMethod();//同一包下可以访问
    //subClass.privateMethod();//不能访问
  }
}

关键词:Java访问权限修饰词、作用、代码案例

3. Java中的抽象类和接口的区别

Java中的抽象类和接口都是用来实现多态性的,抽象类可以有构造方法和非抽象方法,可以定义静态方法、静态变量和实例变量,而接口不能有构造方法、实例变量和静态方法,只能定义静态变量和抽象方法。一个类只能继承一个抽象类,但是可以实现多个接口。

代码案例:

public abstract class AbstractClass {
  public abstract void abstractMethod();
  public void nonAbstractMethod() {
    System.out.println("non abstract method");
  }
}
public class InterfaceClass implements Interface1, Interface2 {
  public static void main(String[] args) {
    InterfaceClass interfaceClass = new InterfaceClass();
    interfaceClass.interfaceMethod1();
    interfaceClass.interfaceMethod2();
  }
  @Override
  public void interfaceMethod1() {
    System.out.println("interfaceMethod1");
  }
  @Override
  public void interfaceMethod2() {
    System.out.println("interfaceMethod2");
  }
}
public interface Interface1 {
  void interfaceMethod1();
}
public interface Interface2 {
  void interfaceMethod2();
}

关键词:Java抽象类、接口、区别、代码案例

  
  

评论区

请求出错了