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的八种数据类型
---恢复内容结束---
java 8增强的包装类的更多相关文章
- Java基础——基本类型和包装类、基本类型和字符串之间的转换
基本类型和包装类之间的转换 基本类型和包装类之间经常需要互相转换,以 Integer 为例(其他几个包装类的操作雷同哦): 在 JDK1.5 引入自动装箱和拆箱的机制后,包装类和基本类型之间的转换就更 ...
- Java开发学习--Java 中基本类型和包装类之间的转换
Java 中基本类型和包装类之间的转换 基本类型和包装类之间经常需要互相转换,以 Integer 为例(其他几个包装类的操作雷同哦): 在 JDK1.5 引入自动装箱和拆箱的机制后,包装类和基本类型之 ...
- 理解Java方法增强
在实际开发中,我们往往需要对某些方法进行增强,常用的方法增强的方式有三种. 类继承 .方法覆盖 必须控制对象创建,才能使用该方式 装饰者模式方法加强 必须和目标对象实现相同接口或继续相同父类,特殊构造 ...
- Java8增强的包装类
为了解决8中基本数据类型的变量不能当成Object 类型变量使用的问题,Java提供了包装类的概念,为8种基本数据类型分别定义了相应的引用类型,并称为基本数据类型的包装类. JDK 1.5提供了自动装 ...
- Java 基础增强
jdk与jre 要想深入了解Java必须对JDK的组成, 本文对JDK6里的目录做了基本的介绍,主要还是讲解 了下JDK里的各种可执行程序或工具的用途 Java(TM) 有两个平台 JRE 运行平台, ...
- Java中增强一个类的几种方法
今天有人问我怎么增强一个类的功能.博客刚好没东西,今天就讲讲增强类. 增强的手段有三种类型: 1.继承或者实现接口:特点是被增强对象不能变,增强的内容不能变. 2.装饰着模式:特点是被增强对象可变,但 ...
- Java基本类型与包装类
存储方式及位置的不同,基本类型是直接存储变量的值保存在堆栈中能高效的存取,封装类型需要通过引用指向实例,具体的实例保存在堆中 Java语言提供了八种基本类型.六种数字类型(四个整数型,两个浮点型) ...
- Java中增强for循环的用法
此方法在jdk1.5之后才出现. 1:遍历数组 语法: for (Type value : array) { expression value; } 例子: void Sum() { int[] ar ...
- java基本数据类型及其包装类
1.String类 String s1 = "hello world"; String s2 = "hello world"; String s3 = s1 + ...
随机推荐
- jQuery延迟加载(懒加载)插件 – jquery.lazyload.js
引入:<script type="text/javascript" src="${base}/resources/shop/js/jquery.lazyload.j ...
- [CareerCup] 18.3 Randomly Generate Integers 随机生成数字
18.3 Write a method to randomly generate a set of m integers from an array of size n. Each element m ...
- [CareerCup] 16.5 Semphore 信号旗
16.5 Suppose we have the following code:public class Foo { public Foo() { . . . } public void first( ...
- cat命令在文件中插入内容
eg: cat>> xxx <<EOFinsert 1insert 2 EOF
- windows自带的压缩,解压缩命令
压缩一个文件: makecab c:\ls.exe ls.zip 解压一个文件: expand c:\ls.zip c:\ls.exe
- UIDynamic(物理仿真)
简介 什么是UIDynamic UIDynamic是从iOS 7开始引入的一种新技术,隶属于UIKit框架 可以认为是一种物理引擎,能模拟和仿真现实生活中的物理现象 如: 重力.弹性碰撞等现象 物理引 ...
- 示例Oracle 10.2.0.1.0升级到10.2.0.4.0一例
1.查看当前系统版本 [oracle@std Disk1]$ sqlplus '/as sysdba' SQL*Plus: Release - Production on Thu Jan :: Cop ...
- VM配置一个待安装LUNIX系统的环境
IT技术和行业交流群 417691667
- php读取指定结束指针文件内容
fopen操作时文件读取开始指针位于文件开始部分, fseek 以指定文件大小以及开始指针位置确定结束指针位置 具体案例: <?php//打开文件流,fopen不会把文件整个加载到内存$f = ...
- 文件代码对比软件 Beyond Compare
Beyond Compare https://www.baidu.com/s?ie=utf-8&f=8&rsv_bp=1&tn=baidu&wd=Beyond%20Co ...