Object类

java.lang.Object类

. Object 类是所有java类的根父类
. 如果在类的声明中未使用extends关键字指明其父类,则默认父类为java.lang.Object类 . Object类中的功能(方法与属性)具有通用性 属性: 无
方法: equals() toString() getClass().....

包装类

什么是包装类?为什么需要包装类? 这是大家要了解的

对于java中的基本数据类型我们如果想要把当当做类来使用怎么办呢? 如果想要对这些基本数据类型直接调用一些方法来操作的话 怎么做呢?

由以上就产生了Wrapper包装类(这在python中叫装饰器)

包装类作用:

java提供了8种基本数据类型的对应的包装类, 使得基本数据类型的变量有了类的特征
掌握:基本数据类型

1: 是针对八种基本数据类型定义的相应的引用数据类型---包装类(封装类)
2: 有了类的特征就可以调用类的方法
3: 我们希望java的基本数据类型也有java面向对象的特殊所以定义了 包装类 把基本数据类型的特殊都封装在对应的类中

基本数据---->Wrapper

基本数据类型转化为包装类:调用包装类的构造器

    //  基本数据转化为Wrapper  :  直接调用包装类的构造器即可
public void testOne() {
int num1 = 10;
Integer integer = new Integer(num1);
System.out.println("基本数据转化为包装类的结果:" + integer); Float f = new Float(3.5);
System.out.println(f);
}

Wrapper ---> 基本数据

Wrapper 转化为基本数据类型: 调用Wrapper包装类的  XXValue()方法

  //Wrapper 转化为 基本数据 : 直接调用XXValue() 方法
public void WrapperToBasic() {
Integer integer = new Integer(34);
int num = integer.intValue();
System.out.println("Wrapper--->基本数据:"+num); Float f = new Float(4.6f);
float fl = f.floatValue();
System.out.println("Float ----> 基本数据类型:"+fl);
}

基本数据,Wrapper----> String

基本数据和包装类转化为String : 调用String重载的valueOf()方法

 //基本数据,Wrapper ---> String : 基本数据和包装类转化为String 直接调用String的valueOf()方法
public void basicWrapperToString() {
//方法一直接转化
int num = 10;
System.out.println("这是num" + num); //直接加减 //方法二调用String的valueOf()
int num1 = 20;
String strNum1 = String.valueOf(num1);
System.out.println("基本数据转化为String:"+strNum1); Integer integer = new Integer(35);
String strInteger = String.valueOf(integer); }

String ---> 基本数据类型,Wrapper

String 转化为基本数据类型和包装类 需要调用包装类的parseXX()方法

    //String ---> 基本数据,Wrapper : 调用包装类的paseXX
public void StringToBsicsWrapper() {
String str = "123"; //必须是转化的对应类型的字符, 转为int那么久必须是字符串类型的int
Integer integerStr = Integer.parseInt(str);
System.out.println(integerStr);
}

错误的

   public void StringToBsicsWrapper() {
String str = "老王";
Integer integerStr = Integer.parseInt(str); //这样是错误的 因为你要转化为int那么String就要是字符串类型的int "123"
System.out.println(integerStr);
}

装箱子:

    //装箱子:  转化为String
//需要先把对应的信息转化为包装类 有了类的特征就可以调用类的方法了
public void pack(){
int num = ;
Integer integer = new Integer(num);
String str = integer.toString();
System.out.println("pack:"+str); }
转化 方法 演示
基本数据转为Wrapper 直接调用Wrapper的构造器 Integer in= new  Integer(30);
Wrapper--->基本数据类型 调用包装类的XXXValue()方法
Integer integer = new Integer(34);
int num = integer.intValue();
基本数据,Wrapper--->String 调用String的valueOf()方法
int num1 = 20;
String strNum1 = String.valueOf(num1);
String----->基本数据,Wrapper 调用包装类的paseXX()方法
String str = "123";   
Integer integerStr = Integer.parseInt(str);

习题:

如下两个题目输出结果相同吗?各是什么:

1:

Object o1 = true ? new Integer() : new Double(2.0);
System.out.println(o1);//

2:

public void test() {
Object o2;
if (true)
o2 = new Integer();
else
o2 = new Double(2.0);
System.out.println(o2);//
}

3:

 public void method1() {
Integer i = new Integer();
Integer j = new Integer();
System.out.println(i == j);
Integer m = ;
Integer n = ;
System.out.println(m == n);
Integer x = ;
Integer y = ;
System.out.println(x == y);
}

解答:

习题1: 答案是:1.0 因为  // 因为在编译的时候int 和dubbo会自动对类型提升为dubbo的 所以结果是1.0
习题2: 答案: 因为没有进行对比只是赋值
习题3: a: //false == 比引用地址 是否同一个对象 不是的
b://true
c:// false 因为Internet会把使用频繁的数字存到自己的地址值中 方便我们来调用避免重复调用,-128 ---- 127 这个范围内的 都是调用integer中的保存的都是同一个地址值 超过这个范围就不是同一个自地址值就是新建的了

3:知识点:

    Integer内部定义了IntegerCache的结构 IntegerCache中定义了Integer[],
保存了从- --- 127范围的整数,如果我们使用自动装箱的方式给Inte赋值的范围在
- -- 的范围内时候就可以直接使用数组中的元素 不用去new了

.

java Wrapper包装类的更多相关文章

  1. 浅谈Java的包装类

    一.什么是Java包装类 所谓Java包装类,就是将Java中的8种基本数据类型分别包装成为类的形式.包装类与基本数据类型的对应关系如下表所示. 基本数据类型 包装类 byte Byte short ...

  2. Java开发知识之Java的包装类

    Java开发知识之Java的包装类 一丶什么是包装类 包装类的意思就是对基本数据类型封装成一个类.这些类都是Number的子类.区别就是封装数据类型不同.包含的方法基本相同. 具体可以查询JAVA A ...

  3. [java初探09]__关于java的包装类

    前言 在Java语言的学习过程中,我们逐渐的理解了Java面向对象的思想,与类和对象的应用.但是在基本数据类型的使用上,我们无法将其定义为一个对象,通过使用对象的方法来使用它们,但是Java语言的思想 ...

  4. Java学习——包装类

    Java学习——包装类 摘要:本文主要介绍了Java中常用的包装类和基本类型之间的转换,包装类或基本类型和String之间的转换. 部分内容来自以下博客: https://www.cnblogs.co ...

  5. 小白学Java:包装类

    目录 小白学Java:包装类 包装类的继承关系 创建包装类实例 自动装箱与拆箱 自动装箱 自动拆箱 包装类型的比较 "=="比较 equals比较 自动装箱与拆箱引发的弊端 自动装 ...

  6. Java:包装类小记

    Java:包装类 对 Java 中的 包装类 这个概念,做一个微不足道的小小小小记 基本数据&包装类 四类八种基本数据类型: 数据类型 关键字 内存占用 取值范围 字节型 byte 1个字节 ...

  7. Java api 入门教程 之 JAVA的包装类

    Java语言是一个面向对象的语言,但是Java中的基本数据类型却是不面向对象的,这在实际使用时存在很多的不便,为了解决这个不足,在设计类时为每个基本数据类型设计了一个对应的类进行代表,这样八个和基本数 ...

  8. JAVA的包装类 【转】

    Java语言是一个面向对象的语言,但是Java中的基本数据类型却是不面向对象的,这在实际使用时存在很多的不便,为了解决这个不足,在设计类时为每个基本数据类型设计了一个对应的类进行代表,这样八个和基本数 ...

  9. java的包装类(转)

    Java语言是一个面向对象的语言,但是Java中的基本数据类型却是不面向对象的,这在实际使用时存在很多的不便,为了解决这个不足,在设计类时为每个基本数据类型设计了一个对应的类进行代表,这样八个和基本数 ...

随机推荐

  1. Class-DbConnectionManipulator:Execute,QueryFirstDefault<>

    ylbtech-Class-DbConnectionManipulator:Execute,QueryFirstDefault<> 1.返回顶部 1. public object GetS ...

  2. HBuilder的一些常用快捷键

    Alt + [ 匹配括号 Alt + ↓跳转到下一个可编辑区Ctrl + Alt + j 合并下一行Ctrl + Alt + ←选择助手Ctrl + 回车 换行Ctrl + Shift + 回车 向上 ...

  3. WinSCP

    Safe, open-source file transfers WinSCP is an open-source, free SFTP, SCP, FTPS and FTP client for W ...

  4. <读书笔记>《Web前端开发最佳实践》

    P77 P89 CSS Reset P94 给CSS样式定义排序    排序工具:CSScomb P97 什么是CSS的权重?权重是指选择符的优先级 P100 工具:Sass Less P101 框架 ...

  5. 【读书笔记】:MIT线性代数(3):Special Solution, Rank and RREF

    Special Solutions: Notice what is special about s 1 and S2. They have ones and zeros in the last two ...

  6. CentOS7下Docker与.net Core 2.2

    一.使用 yum 安装(CentOS 7下) Docker 要求 CentOS 系统的内核版本高于 3.10 ,查看本页面的前提条件来验证你的CentOS 版本是否支持 Docker . 通过 una ...

  7. FMDB使用的一点心得:数据库创建、制表、查询等以及image转换成二进制nsdata保存到数据库中

    版权声明:本文为博主原创文章.未经博主同意不得转载. https://blog.csdn.net/u012951123/article/details/36871955 <span style= ...

  8. css中的文本字间距离、行距、overflow

    css字间距.div css字符间距样式实例1.text-indent设置抬头距离css缩进 div设置css样式text-indent : 20px; 缩进了20px 2.letter-spacin ...

  9. Python面向对象初始(三大特征,多态,继承,封装)

    Python面向对象的初始 面向过程的程序设计的核心是过程(流水线式思维),过程即解决问题的步骤,面向过程的设计就好比精心设计好一条流水线,考虑周全什么时候处理什么东西. 优点是:极大的降低了写程序的 ...

  10. Python之基本的日期与时间转换 datetime、 dateutil模块

    简单举例datetime模块 from datetime import timedelta,datetime a = timedelta(days=2, hours=6) b = timedelta( ...