Java基础----刷题集(一)

练习一


1、加密算法

常用的对称加密算法有:DES、3DES、RC2、RC4、AES
常用的非对称加密算法有:RSA、DSA、ECC
使用单向散列函数的加密算法:MD5、SHA


2、新建一个流对象,下面哪个选项的代码是错误的?()

A)new BufferedWriter(new FileWriter(“a.txt”));
B)new BufferedReader(new FileInputStream(“a.dat”));
C)new GZIPOutputStream(new FileOutputStream(“a.zip”));
D)new ObjectInputStream(new FileInputStream(“a.dat”));

答案:B


3、下面程序的运行结果是什么()

class HelloA {

    public HelloA() {
        System.out.println("HelloA");
    }

    { System.out.println("I'm A class"); }

    static { System.out.println("static A"); }

}

public class HelloB extends HelloA {
    public HelloB() {
        System.out.println("HelloB");
    }

    { System.out.println("I'm B class"); }

    static { System.out.println("static B"); }

    public static void main(String[] args) { 
     new HelloB(); 
   }

}

答案为:
static A
static B
I’m A class
HelloA
I’m B class
HelloB


4、下面代码的运行结果为:()

import java.io.*;
import java.util.*;

public class foo{
    public static void main (String[] args){
        String s;
        System.out.println("s=" + s);
    }
}

A 代码得到编译,并输出“s=”
B 代码得到编译,并输出“s=null”
C 由于String s没有初始化,代码不能编译通过
D 代码得到编译,但捕获到 NullPointException异常

答案:C

解析:开始以为会输出null什么的,运行后才发现Java中所有定义的基本类型或对象都必须初始化才能输出值。


5.重载的概念是:

方法名称相同,参数个数、次序、类型不同
因此重载对返回值没有要求,可以相同,也可以不同
但是如果参数的个数、类型、次序都相同,方法名也相同,仅返回值不同,则无法构成重载


6.有关java classloader

ClassLoader就是用来动态加载class文件到内存当中用的

ClassLoader使用的是双亲委托模型来搜索类的

Java默认提供的三个ClassLoader是Boostrap ClassLoader,Extension ClassLoader,App ClassLoader


7.关于Collection和Collections描述

Collection是java.util下的接口,它是各种集合结构的父接口

Collections是java.util下的类,它包含有各种有关集合操作的静态方法


8.关于getDeclaredMethods()和getMethods()

public Method[] getDeclaredMethods()返回类或接口声明的所有方法,包括public, protected, default (package) 访问和private方法的Method对象,但不包括继承的方法。当然也包括它所实现接口的方法。

public Method[] getMethods()返回类的所有public方法,包括其继承类的公用方法,当然也包括它所实现接口的方法。


9.关于final

final修饰的成员变量为基本数据类型是,在赋值之后无法改变。当final修饰的成员变量为引用数据类型时,在赋值后其指向地址无法改变,但是对象内容还是可以改变的。

final修饰的成员变量在赋值时可以有三种方式。
1、在声明时直接赋值。2、在构造器中赋值。3、在初始代码块中进行赋值。


10.如果一个接口Cow有个方法drink(),有个类Calf实现接口Cow,则在类Calf中正确的是? ( )

public void drink() { …}

子类重写父类方法时,方法的访问权限不能小于原访问权限,在接口中,方法的默认权限就是public,所以子类重写后只能是public

你可能感兴趣的:(牛客网刷题,Java)