zoukankan      html  css  js  c++  java
  • java 8增强的包装类

    ---恢复内容开始---

    1java为8个类型提供了对应的包装类。因为这8个类型并不是类或者对象,他们原本是不应该存在在java里的(这里说的只是原本),这里要强调的是,java允许把基本类型的值直接赋值给对应包装类的引用变量,也允许把包装类对象赋给对应的基本类型变量。


    比如:

      byte a=10;

      Byte B=new Byte();  

      B=10;//这是可行D .

      a=B;//这也是可行的,因为上面强调过了。

    其实这里根本的原因是,发明java的人希望能够统一java(都是由类组成的),所以他就把那些原本不是类的东西,写进了他的库里面。


    2java 如何实现一个不可变类呢? java中使用final关键字修饰类,方法,变量。修饰过之后的类不能派生子类,修饰过的方法不能被子类覆盖,修饰过的变量不允许给他重新赋值。这就是非常厉害的地方,比如一个临界值是固定的,所以使用final修饰过之后,这个值就固定在了内存中,static 修饰的话就是类变量,不修饰就是实例变量(或方法),所以他们在类建立或者方法建立的时候就成为了一个固定的值。

    比如:在这里的age提前就说好他是final,所以无论如何都是不可以修改的。


    3abstract和interface两个关键字,他定义了抽象类和接口。其实抽象类和接口就是多个子类的共同特征,抽象类就是多个类的模板,而接口定义了多类应该遵守的规矩。可以这样说,抽象类就是一个老师,老师教给所有同学知识,所有同学都学会(假设子类是一个非常聪明的孩子),而接口就是教导主任或者说是校警,他负责管理多类让他们遵守一定的规矩。Lambda是java8最重要的更新。

    面向对象的本质就是让程序向世界一样去思考,去协作。

    2

      java的八种数据类型

      

    ---恢复内容结束---

  • 相关阅读:
    getElementById返回的是什么?串讲HTML DOM
    DIV+CSS布局问题:一个宽度不确定的DIV里面放三个水平对齐的DIV,左右两个DIV宽度固定为150px,中间那个DIV充满剩余的宽度
    原生JavaScript拖动div兼容多种浏览器
    java一切乱码的解释 以及源头【转】
    java编码问题深入总结
    三菱Q系列PLC基本指令讲解
    三菱Q系列PLC的io分配
    linux函数的阻塞与非阻塞IO及错误处理
    linux系统编程之文件IO
    linux命令(shell)
  • 原文地址:https://www.cnblogs.com/ilovepro/p/6196832.html
Copyright © 2011-2022 走看看