美文网首页
Java考核总结

Java考核总结

作者: paterL | 来源:发表于2022-03-11 10:52 被阅读0次

封装、继承和多态

封装:把对象的属性和操作(或服务)结合为一个独立的整体,并尽可能隐藏对象的内部实现细节,提高代码的安全性和复用性

继承:子类继承父类的特征和行为,使得子类对象(实例)具有父类的实例域和方法,或子类从父类继承方法,使得子类具有父类相同的行为。当然,如果在父类中拥有私有属性(private修饰),则子类是不能被继承的。

多态:同一个行为具有多个不同表现形式或形态的能力。

多态的体现形式

继承

父类引用指向子类

重写

if,switch使用场景

if :

1.对具体的值进行判断。

2.对区间判断。

3.对于运算结果是boolean类型的表达式进行判断。

switch:

1.对具体的值进行判断。

2.值的个数通常是固定的。

对于几个固定值判断,建议使用switch语句,因为switch语句会将具体的答案都加载进内存。效率相对高一点。

类与对象的关系

类是模板,对象是实例化、具体化(类是对象的一个集合,对象是类的实例)

类是具备某些共同特征的实体的集合,他是一种抽象的数据类型,它是对所具有相同特征实体的抽象。在面向对象的程序设计语言中,类是对一类“事物”的属性与行为的抽象。

对象

对象就是一个真实世界中的实体,对象与实体是一一对应关系的,意思就是现实世界的每一个实体都是一个对象,所以对象是一个具体的概念。

外部类与内部类之间的相互调用

外部类访问内部类

内部类被stati修饰:可以直接new

内部类类名 对象名 = new 内部类类名();

内部类没有被static修饰:先new出来外部类的实例,再new内部类的

内部类类名 对象名 = new 外部类类名(). 内部类类名();

内部类访问外部类

外部类.this.变量

外部类访问内部类:必须建立内部类的对象

内部类访问外部类:内部类可以直接访问外部类的成员包括私有成员,因为外部类持有内部类的引用

接口

在java语言中是一个抽象类型,是抽象方法的集合,接口通常以interface来声明一个类通过继承接口的方式,从而来继承接口的抽象方法。

接口并不是类,编写接口的方式和类很相似,但是它们属于不同的概念。类描述对象的属性和方法。接口则包含类要实现的方法。除非实现接口的类是抽象类,否则该类要定义接口中的所有方法。

抽象类(可以实现一个接口)

1. 抽象类不能被实例化(初学者很容易犯的错),如果被实例化,就会报错,编译无法通过。只有抽象类的非抽象子类可以创建对象。

2. 抽象类中不一定包含抽象方法,但是有抽象方法的类必定是抽象类。

3. 抽象类中的抽象方法只是声明,不包含方法体,就是不给出方法的具体实现也就是方法的具体功能。

4. 构造方法,类方法(用 static 修饰的方法)不能声明为抽象方法。

5. 抽象类的子类必须给出抽象类中的抽象方法的具体实现,除非该子类也是抽象类。

抽象类与接口的区别

1. 抽象类中的方法可以有方法体,就是能实现方法的具体功能,但是接口中的方法不行。

2. 抽象类中的成员变量可以是各种类型的,而接口中的成员变量只能是 public static final 类型的。

3. 接口中不能含有静态代码块以及静态方法(用 static 修饰的方法),而抽象类是可以有静态代码块和静态方法。

4. 一个类只能继承一个抽象类,而一个类却可以实现多个接口。

异常处理

1.向上抛出异常:throws

2.try-catch-finally

try

{

要检查的语句序列

}

catch(异常类名 形参对象名)

{

异常发生时的处理语句序列

}

finally

{

一定会运行的语句序列

}

常见异常

算术异常类:ArithmeticExecption

空指针异常类:NullPointerException

类型强制转换异常:ClassCastException

数组负下标异常:NegativeArrayException

数组下标越界异常:ArrayIndexOutOfBoundsException

违背安全原则异常:SecturityException

文件已结束异常:EOFException

文件未找到异常:FileNotFoundException

字符串转换为数字异常:NumberFormatException

操作数据库异常:SQLException

输入输出异常:IOException

方法未找到异常:NoSuchMethodException

stream流

获取流

1.根据List获取流

// 创建List集合

        List<String> list = new ArrayList<>();

        list.add("张老三");

        list.add("张小三");

        list.add("李四");

        list.add("赵五");

        list.add("张六");

        list.add("王八");

        Stream<String> stream1 = list.stream();

2.根据set获取流

        // 创建List集合

        Set<String> set = new HashSet<>();

        list.add("张老三");

        list.add("张小三");

        list.add("李四");

        list.add("赵五");

        list.add("张六");

        list.add("王八");

        Stream<String> stream2 = set.stream();

3.根据Map集合获取流

        // 创建Map集合

        Map<Integer,String> map = new HashMap<>();

        map.put(1,"张老三");

        map.put(2,"张小三");

        map.put(3,"李四");

        map.put(4,"赵五");

        map.put(5,"张六");

        map.put(6,"王八");

        // 3.1根据Map集合的键获取流

        Set<Integer> map1 = map.keySet();

        Stream<Integer> stream3 = map1.stream();

        // 3.2根据Map集合的值获取流

        Collection<String> map2 = map.values();

        Stream<String> stream4 = map2.stream();

        // 3.3根据Map集合的键值对对象获取瑞

        Set<Map.Entry<Integer, String>> map3 = map.entrySet();

        Stream<Map.Entry<Integer, String>> stream5 = map3.stream();

4.根据数组获取流

        // 根据数组获取流

        String[] arr = {"张颜宇","张三","李四","赵五","刘六","王七"};

        Stream<String> stream6 = Stream.of(arr);

Stream流的常用方法

filter方法:过滤出满足条件的元素

        // 获取stream流

        Stream<String> stream = Stream.of("张老三", "张小三", "李四", "赵五", "刘六", "王七");

        // 需求:过去出姓张的元素

        stream.filter((String name)->{

            return name.startsWith("张");

        }).forEach((String name)->{

            System.out.println("流中的元素" + name);

        });

收集stream流

 Stream流中提供了一个方法,可以把流中的数据收集到单例集合中

        List<String> list2 = new ArrayList<>();

        list2.add("张老三");

        list2.add("张小三");

        list2.add("李四");

        list2.add("赵五");

        list2.add("张六");

        list2.add("王八");

        // 需求:过滤出姓张的并且长度为3的元素

        Stream<String> stream = list2.stream().filter((String name) -> {

            return name.startsWith("张");

        }).filter((String name) -> {

            return name.length() == 3;

        });

        // stream 收集到单列集合中

        List<String> list = stream.collect(Collectors.toList());

        System.out.println(list);

        // stream 手机到单列集合中

        Set<String> set = stream.collect(Collectors.toSet());

        System.out.println(set);

相关文章

  • Java考核总结

    这是我进入强化班以来第一次的Java考核,在心态上我挺紧张的,因为之前我没有经历过这种场合,再加上我一紧张就会结巴...

  • Java考核总结

    封装、继承和多态 封装:把对象的属性和操作(或服务)结合为一个独立的整体,并尽可能隐藏对象的内部实现细节,提高代码...

  • 我不是积极废人

    考核其实是总结的开始,别人的考核其实是自我反思的开始。 这两天随着游戏代码多懂了几条,我就感觉其实我对JAVA游戏...

  • 一个人幸运的前提,其实是他有能力改变自己

    Java小游戏阶段总结 就在昨天下午我的Java小游戏阶段终于考核了,十二三天的努力终于有了结果,顿时觉得夏日...

  • JAVA考核

    考核完了,心里轻松了不少。但是在考核的过程中发现自己还有好多东西都不会。很多东西都只是有点印象或者了解一点点。 这...

  • 考核总结。

    这周已经开始做游戏了,在做游戏前,对以前学习的知识点有个简单的总结。 总结如下 1、java跨平台性由字节码文件c...

  • 测试部绩效考核

    考核工作事项及流程 1、季度工作总结。部门员工完成《员工季度工作总结》 2、部门考核。按照考核工作要求,组织员工考...

  • 期末

    教研总结,教学总结,班主任考核,备课笔记检查。

  • 2020-12-30

    《业绩考核》总结 业绩考核三个界定:结果,行为,素质。KPI考核针对以上哪个重要考哪个。 为什么要进行业绩考核? ...

  • Java面试题汇总

    Java面试题总结 Java面试题总结一Java面试题总结二

网友评论

      本文标题:Java考核总结

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