java考核

作者: 腾蛇太元帅 | 来源:发表于2022-10-08 19:50 被阅读0次

        由于本周是国庆节假期期间,有足够的时间学习java,于是本周五我进行了java考核。

        我的考核官是马忠鹏和王杰,起初一切都很正常,然后崔晨阳来了,于是就变成了三司会审,我感觉压力十分足大。

    再加上马梓原在旁边一直“煽风点火”,导致我的考核异常艰难,不过这也能更好的检验我的知识点掌握程度。最终经过漫长的考核,终于通过了本次考核,可以开始下一个阶段的学习,不过在此之前,我需要写一个java考核总结:

    一、键盘监听:

    首先要实现KeyListener 接口;KeyListener接口里面的三个方法:1、keyTyped方法:当有字符输出时,该方法触发;2、keyPressed方法:当按下某个键时,该方法触发;3、keyReleased方法:当某个键释放时,该方法触发

    二、浮点数的比较:

    比如double a=3.14,double b=3.14那么通过下面语句能否输出hhh?

    if(a==b){

    System.out.println("hhh");

    }

    结果时不可以的,因为符点数比较会导致精度缺失,看上去两个都是3.14,但是后面其实还有很多位小数,可能某一位就会不同。

    三、将字符串中的小写字母转换为大写的方法:public String toUpperCase();

    将字符串中的大写字母转换为小写的方法:public String toLowerCase();

    四、引用类型:接口(interface)、数组([ ])、类(class)

    五、基本数据类型和字符串的转换:

    1、基本数据类型转字符串:

    使用String中的vlalueOf方法,使用过程:

    String 接受转换后字符串的名=String.valueOf(基本数据类型名);

    2、字符串转基本数据类型

    用法:以int为例

    int 数据名=Integer.parseInt(字符串名);

    六、int与integer的区别

    1、intger是int的包装类,int是java的一种基本数据类型;

    2、intger变量必须实例化后才能使用,int可直接使用

    3、integer实际是对象的引用,当new一个integer时,实际上生成一个指针指向此对象,而int则直接储存数据值;

    4、integer默认值时null,int默认值是0;

    int是基本数据类型,integer是其包装类,注意是一个类。

    七、switch后括号内可以是什么:

    JDK1.5之前可以是byte, short, char, int;

    JDK1.5到JDK1.7之间可以是枚举类型;

    JDK1.7之后可以是String;

    无论哪个版本的JDK,都是不支持 long,float,double,boolean 这个一定要注意!

    八、switch相对于if-else-if效率高的原因:

    这是因为编译器在处理 switch 语句时,会生成一个跳转表,然后根据值之间进行跳转。然而对于 if-else 语句,编译器需要一个一个进行比较,直到找到结果。

    九、遍历数组:

    for(数组数据类型 接收数据名:数组名)

    System.out.ptintln(接受数据名);

    十、向窗口中加入图片的方法

    十一、1、类修饰符:分为可访问控制符和非访问控制符

    可访问控制符:公共类修饰符 public

    非访问控制符:抽象类修饰符 abstract ;最终类修饰符 final

    2、属性控制修饰符:分为可访问控制符和非访问控制符

    可访问控制符:公共访问控制符: public ;私有访问控制符: private ;保护访问控制符: protected ;私有保护访问控制符: private protected(用修饰符 private protected 修饰的成员变量可以被该类本身或该类的子类两种类访问和引用。)

    非访问控制符:静态域修饰符: static ;最终域修饰符: final ;易失 ( 共享 ) 域修饰符: volatile(易失 ( 共享 ) 域修饰符 volatile是用来说明这个成员变量可能被几个线程所控制和修改。也就是说在程序运行过程中,这个成员变量有可能被其它的程序影响或改变它的取值。因此,在使用中要注意这种成员变量取值的变化。通常 volatile 用来修饰接受外部输入的域。) ;暂时性域修饰符: transient(暂时性域修饰符 transient 用来定义一个暂时性变量。其特点是:用修饰符transient 限定的暂时性变量,将指定 Java虚拟机认定该暂时性变量不属于永久状态,以实现不同对象的存档功能。否则,类中所有变量都是对象的永久状态的一部分,存储对象时必须同时保存这些变量。)

    3、方法控制修饰符:分为可访问控制符和非访问控制符

    可访问控制符:公共访问控制符: public ;私有访问控制符: private ;保护访问控制符: protected ;私有保护访问控制符: private protected

    非访问控制符:抽象方法控制符: abstract ;静态方法控制符: static ;最终方法控制符: final ;本地方法控制符: native(用修饰符 native 修饰的方法称为本地方法。为了提高程序的运行速度,需要用其它的高级语言书写程序的方法体,那么该方法可定义为本地方法用修饰符 native 来修饰;) ;同步方法控制符: synchronized(该修饰符主要用于多线程共存的程序中的协调和同步。)

    十二、对多态的理解

    多态是继封装、继承之后,面向对象编程的第三大特性

    多态表现为父类引用变量可以指向子类对象,前提条件为必须存在继承关系并且要有方法的重写,在使用多态后的父类引用变量调用方法时,会调用子类重写后的方法

    多态的调用格式:父类类型 变量名 = new 子类类型();

    多态成员变量:编译和运行都看左边(即父类)

    多态成员方法:编译看左边,运行看右边

    语句Object o = new Student()是合法的,因为Student的实例也是Object的实例,这称为隐式转换但是Student b = o;会出现编译错误,因为Student对象总是Object的实例,但是,Object对象不一定是Student的对象。即使可以看到o实际上就是一个Student对象,但是编译器没有聪明到知道这一点。因此这时就需要使用显示转换,如下所示:

    Student b = (St udent) o;

    向上转换:将一个子类的实例转换为一个父类的实例,多态本身就是向上转换的过程

    向下转换:将一个父类的实例转换为一个子类的实例,此时必须使用转换记号”(子类名)”进行显示转换。

    在进行向下转换时,如果父类对象不是子类的一个实例,就会出现一个运行异常ClassCastException,一个好的经验是,在尝试类型转换之前确保该对象是另一个对象的实例,这是可以利用运算符instanceof来实现的。

        以上就是本次考核的部分总结,另一部分还在总结中。

    相关文章

      网友评论

        本文标题:java考核

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