美文网首页
第十八天_阶段测试(2018-08-17)

第十八天_阶段测试(2018-08-17)

作者: 董秀才 | 来源:发表于2018-08-17 17:23 被阅读0次

                                    大数据1801阶段考试题

1、面向对象的思想归根揭底是啥?面向对象三大特征是什么?

面向对象的思想其实就是找合适的对象做合适的事情。三大特征:封装、继承、多态。

2、抽象类和接口有什么区别?

1)接口一般只含有抽象方法【其实可以含有非抽象想法】,抽象类和一般类没什么差别,只是含有抽象方法。

2)接口一般都是公开的public,抽象类中的属性和方法可以是任意访问权限

3)接口中其实没有变量,只有静态常量。

4)接口中没有构造方法,抽象类有构造方法,但是两者都不能被实例化。抽象类中的构造方法是被子类调用的。

5)接口可以继承接口,抽象类可以继承某个类,也可以实现多个接口。

3、打印一个对象,不想打印出来是内存地址,怎么解决?

System.out.println(newStudent());

通过重写toString()方法可以自定义打印的内容【内容一般是属性的值】

4、遇到可能出现异常的代码如何处理?

1)try {

}catch(Exceptione){

}

2) 抛出异常

5、多态的好处是什么?

丰富了参数的类型和返回值的类型

public Animal  getAnimal(Dog a){

a.eat();

a.run();

}

public Animal  getAnimal(Cat a){

a.eat();

a.run();

}

// 多态

public Animal  getAnimal(Animal  a){

a.eat();

a.run();

return  a;

}

6、final和finally的区别

Final 可以修饰变量、类、方法,表示变量不可变,类无法继承,方法无法重写。

Finally 表示在异常出现时,不管异常如何处理,最后都执行finally代码块,和final没有什么关系。

7、throw和throws的区别

Throws 出现在定义方法的后面,表示该方法可能出现某类异常,调用该方法的地方,必须处理该异常。

Throw 一般后面跟异常类的一个实例化对象,表示代码执行到此处需要报个异常错误,肯定会出现异常的。

throw  new NoWheelExcetpion(“轮子掉了”);

8、数组的两种初始化方法,用代码表示

 Int[]  arr={1,2,3,4,5};

Int[] arr=new int[7];

Arr[0]=1;.....

9、什么是内部类?内部类分为哪几种?

出现在类中的类就叫内部类,根据出现位置不同分为:成员内部类、静态内部类,局部内部类。   含有特殊的:匿名内部类,一般和接口同时出现。

10、什么是值传递,什么是引用传递,数组和集合属于什么传递?

Int a=3;int b=5;

Swap(a,b);  //值传递

Student  stu =new Studnet();

Swap(stu); // 引用传递

数组和集合属于引用传递。

11、如何将一个int类型转换为String类型,将String类型转换为int类型

Int==>String

String  a = 10+””;

String b =String.valueOf(10);

String ==>int

Int c = Integer.parseInt(“10”);

Int d = Integer.valueOf(“10”).intValue();

12、如何获取到String  a=”hello world”中hello的值

1)   String[] arr =a.split(“ ”);

     String s = arr[0];

2)   String s= a.subString(0,a.indexOf(“hello”)+”hello”.length+1);

13、如何判断一个字符串中是否包含另一个字符串

1) “hello world”.contains(“hello”);

[2)  “hello world”.indexOf(“hello”)!=-1

14、[endif]书写一个邮箱的正则表达式

String regex =”\w+@[a-zA-Z0-9]+\\.[a-z]+”;

15、StringBuffer和StringBuilder的区别

StringBuffer:  线程安全,但是速度慢

StringBuilder: 速度快,不安全

16、定义一个枚举类,并在switch中使用

Public enum  Season{

   SPRING,SUMMER,AUTUMN,WINTER

}

Season s = Season.SPRING;

Switch(s){

   Case SPRING:

     Breeak;

   .........

}

17、打印当前时间,格式为2018年8月16日20:04:30

Date date=new Date();

SimpleDateFormat format =new SimpleDateFormat(“yyyy-MM-dd HH:mm:ss”);

String dateStr = format.format(date);

18、Date和Calendar的相互转换

 Calendar c =  Calendar.getInstance();

Date d  =c.getTime();

 Calendar c =  Calendar.getInstance();

Date date =new Date();

c.setTime(date);

19、使用两种方法获取【0,100】的随机数。

第一种方法:

    double d = Math.random()*101;

Int   random = (int)d;  【0-100】

第二种方法:

Int  random02 = 

  (int)Math.ceil(Math.random*100); [0-100]

第三种:

Random random =new Random();

Int random03 = random(101);

20、简述ArrayList和LinkedList之间的区别

1)  ArrayList 查找快,增删慢

2) LinkedList  增删快,查找慢

3)  ArrayList 底层是Object[],LinkedList底层是链表

21、HashSet的存储原理

HashSet底层使用Hash表存储,其实就是一个HashMap,当存储一个对象时,先调用该对象的hashCode方法,经过一些运算,得出该对象在hash表中的位置,如果该位置没有对象存储,直接添加进去,如果有对象存储,需要调用该对象的equals方法,比较两个对象是否相等【规则自己定】,如果相等表示两个对象是同一个对象,不允许存储,如果不是,也存储在相同的位置【hash表中的一个位置是桶装结构的】。

22、TreeSet如何判断一个数是否为重复的元素。

TreeSet是一个可以排序的Set集合,所以存储的时候对象要么实现Comparable接口,要么生成一个比较器。一个对象要想存储在TreeSet中必须是比较结果不为0才算是不重复的元素,否则统一视为重复元素,不允许添加。

23、Collection接口中的常用方法有哪些?至少写出8个

Add、addAll、remove、removeAll、contails、clear、isEmpty、size、iterator,toArray

24、定义一个Map对象,要求该对象可以根据学号,拿到学生信息,根据学生信息可以知道学生的各个学科的学习成绩。

Map> map=new HashMap>();

// 或者

Map  map=newHashMap();

25、请简述HashMap的三种循环方式,简单描述即可。

1、map.keySet()  拿到key的一个结合,通过迭代器进行循环

2、map.values()   拿到value集合,通过迭代器循环

3、map.entrySet()  拿到Entry的一个Set结合,通过迭代器循环。

26、如何将一个list集合转换为数组,如何将数组转换为list集合。

  list.toArray()可以将list转换为数组,

  Arrays.asList(数组)  可以将数组转换为集合

27、TreeMap和HashMap的区别?

TreeMap相比hashMap是排序的,排序指的是key排序

28、单元测试方法有何特点?@Before是什么意思?

  方法必须是public  void修饰的,方法没有参数,方法上必须有@Test注解,方法名称一般都是以test开始的。

 @Before当这个注解写在某个方法上时,每一个@Test测试方法在执行前都会执行该方法。

29、Instanceof有哪些用法?

三个作用:

1) dog instanceOf  Dog  判断一个对象是否为一个类的实例化对象

2) dog   instanceOf Animal判断一个对象的类是否为某个类的子类

3) dog  instanceOf Huiro   判断一个对象的类是否实现了某个接口

30、final的用法

Final 可以修饰变量、类、方法,表示变量不可变,类无法继承,方法无法重写

相关文章

网友评论

      本文标题:第十八天_阶段测试(2018-08-17)

      本文链接:https://www.haomeiwen.com/subject/ehetiftx.html