1. 判断以下值对比是否相等,并说出原因

    int a , b = 100;
    System.out.println( a == b )
    
    Integer c = 100;
    Integer d = 100;
    System.out.println(c == d )
        
    boolean isReboot1 = true;
    Boolean isReboot2 = new Boolean("1");
    System.out.println( isReboot1 ==  isReboot2 );
    
    boolean isReboot1 = true;
    Boolean isReboot2 = new Boolean(true);
    System.out.println( isReboot1 ==  isReboot2 );
    

    相同,

  2. 写出 Object 的常用方法的作用

    public String toString()

    public String toString()

    public native int hashCode()

  3. 写出以下代码的执行顺序

    public class Demo {
    
     static {
         count = 20;
     }
     
     {
         size = 20;
         count = 30;
     }
     
     public int size = 10;
     public static int count = 10;
     
     public Demo() {
         System.out.println("我是构造器");
         System.out.println( "size = "+ size );
         System.out.println( "count = "+ count );
     }
     
     public static void main(String[] args) {
         new Demo();
     }
    }
    

    我是构造器
    size = 10
    count = 30

  4. 方法重载有什么作用 ?判断重载的依据是什么 ?

    Several methods can have same name
    Number of parameters(参数个数)
    Parameter type(参数类型)

    在公司里编程,有时候一个方法名,要用到很多次,而且每次跟每次的参数都不一样,而且这个方法名,特别适合某个业务(比如登录),这个时候你变成其他的方法名,对大家来讲都很别扭,这时候就用到重载的概念了。

  5. System.out.println()与System.out.print()区别

    println 会打印换行符
    print 不会打印换行符

  6. 类里面都可以拥有什么元素?

    属性、方法、构造方法、块以及内部类

  7. 一个源文件里面可以写多少个类 ? 哪个类可以使用 public 关键字修饰 ?

    两个,class

  8. 一个源文件里面写多个类,编译出来的 class 文件是怎么命名的 ?1,5

    class,下面代码的结果是1,5

    public class StaticTest {
     public static void main(String[] args) {
         Cat cat = null;
         for (int i = 0; i < 5; i++) {
             cat = new Cat();
             new Dog();
         }
         System.out.println(cat.counter);
         System.out.println(Dog.counter);
     }
    }
    
    class Cat {
        public int counter = 0;
        public Cat() {
            counter++;
        }
    }
    
    class Dog {
     public static int counter = 0;
     public Dog() {
         counter++;
     }
    }
    
  9. 基础类型和包装类型的区别是什么?

    包装类型是对象,基础类型不是

  1. this关键字的作用是什么?

    this调用当前属性:其主要作用是当需要给类中的数据进行初始化时,可以通过this来进行赋值,而不用随便定义一个变量来进行赋值,更有利于代码的阅读与理解

  2. String是基础类型么?

    String不是基本的数据类型。

  3. 内部类有什么?有什么作用 ?

    成员内部类、局部内部类、匿名内部类和静态内部类。

    成员内部类,就是位于外部类成员位置的类
    局部内部类,不能被public、private、static修饰

    匿名内部类,可以访问外部的所有成员,但不能访问未加final

    静态内部类,属于外部类,而不是属于外部类的对象

  4. 怎么创建并调用一个内部类对象?

    外部类.内部类. 属性=new 外部类().new 内部类();

  5. 定义雇员类,包含雇员的编号、姓名、年龄、职位、部门等信息。

    public class main01 {
        String empid;
        String ename;
        int age;
    
    
        public class Postrion{
            String pid="pid";
            String pname="pname";
            public Postrion() {
                System.out.println("职位内部类:\n编号:"+pid+"\n职位名称:"+pname+"\n");
            }
    
        }
    
       
        public class Dept{
            String dno="dno";
            String dname="dname";
            String Dept="Dept";
            String loc="loc";
            public Dept() {
                System.out.println("部门内部类:\n编号:"+dno+"\n部门名称:"+dname+"\n上级部门:"+Dept+"\n部门所在地"+loc);
            }
        }
    
        public static void main(String[] args) {
            main01 guyuan=new main01();
            Postrion a=guyuan.new Postrion();
            Dept b=guyuan.new Dept();
        }
    
    }
    
```java
编号:empid
姓名:ename
年龄:age
职位:类:Position
部门:类:Dept
```

职位和部门是2个不同的类,每个类都包含各自的信息。

职位:编号、职位名称

```
编号:pid
职位:pname
```

部门:编号、部门名称、上级部门、部门所在地

```
编号:dno
部门名称:dname
上级部门:Dept
部门所在地:loc
```
  1. 以下哪个约束符可用于定义成员常量 B

    A.static

    B.final

    C.abstract

    D.const

  1. 看下面代码给出答案 B

    class Test{
      private int m;
      public static void fun() {
        // some code...
      }
    }
    

    如何使成员变量m 被函数fun()直接访问?

    A.将private int m 改为protected int m

    B.将private int m 改为 public int m

    C.将private int m 改为 static int m

    D.将private int m 改为 int m

  1. 以下代码的执行结果是 C

    public class Example {
    
        static int i = 1, j = 2;
    
        static {
            display(i);
            i = i + j;
        }
    
        static void display(int n) {
            System.out.println(n);
        }
    
        public static void main(String[] args) {
    
            display(i);
        }
    }
    

    A.1 2

    B.0 1

    C.1 3

    D.1 1

你可能感兴趣的:(类)