zoukankan      html  css  js  c++  java
  • 包装类和toString和static关键字

    包装类

      针对八种基本数据类型定义的引用类型。

      有类的特点,可以调用类中的方法。

    基本数据类型 包装类
    boolean Boolean
    byte Byte
    short Short
    int Integer
    long Long
    char Character
    float Float
    double Double

    基本数据类型包装成包装类的实例------装箱(类型要匹配)

      通过包装类的构造方法实现:Integer t = new Integer(i);

      通过字符串参数构造包装类对象:Float f = new Float("4.56");

    获得包装类对象中包装的基本类型变量-----拆箱(类型要匹配)

      调用包装类的.xxxValue()方法:boolean b = bObj.booleanValue();

    JDK1.5之后,支持自动装箱,自动拆箱。但类型必须匹配。如果类型不匹配编译不报错,但是运行会报错。

      自动装箱:Integer A = 112;//直接赋值就是自动装箱

      自动拆箱:int B = A;//将变量A的值赋值给基本数据类型B就是自动拆箱

    字符串转换成基本数据类型

      通过包装类的构造方法实现:int i = new Integer("12");

      通过包装类的parseXxx(String s)静态方法实现:Float f = Float.parseFloat("12.1");

    基本数据类型转换成字符串

      调用字符串重载的valueOf()方法:String fstr = String.valueOf(2.34f);

      更直接的方式:String intStr = 5 + “”;

    包装类主要是为了解决字符串转换成基本数据类型。

    toString

      父类Object的toString方法就是输出当前对象的内存地址,如果要想输出类的其他信息,就需要重写toString方法。

      因为toString方法就是输出当前对象的内存地址,所以在输出任何值时就相当于执行了当前对象的toString方法。

      在重写了toString方法之后,就可以按照自己想要的方式输出对象当中的值。

    关键字static

      未经static修饰的变量为实例变量,需要经过实例化为对象之后才能够被使用的对象,属于类的每一个对象,不能被同一个类的不同对象所共享(就是说不同的对象要是用这个对象都需要单独写出来),属于实例化对象的一部分。

      经过static修饰的变量为类变量,不需要经过实例化为对象就能使用,属于类的一部分,可以被类的每一个对象共享。

     所以,如果想让一个类的所有实例对象共享相同的数据,就使用类变量,也叫静态变量。

    类的属性、方法的设计思想

      类属性作为该类各个对象之间共享的变量。在设计类时,分析哪些类属性不因对象的不同而改变,将这些属性设置为类属性。相应的方法设置为类方法。

      如果方法与调用者无关,则这样的方法通常被声明为类方法,由于不需要创建对象就可以调用类方法,从而简化了方法的调用。

    使用范围:可用static修饰属性、方法、代码块、内部类。

    被修饰后的成员具备以下特点:

      随着类的加载而加载;

      优先于对象存在,不用new就能用;

      修饰的成员被所有对象所共享;

      访问权限允许时,可不创建对象,直接被类调用;

    类变量,这种可以被所有的实例化对象共享的属性使用起来要慎重,因为只要一改,所有的类都能得到变化。

    因为不需要实例就可以访问static方法,因此static方法内部不能有this,也不能使用super。

    重载的方法需要同时为static的或者非static的。

  • 相关阅读:
    (转)Dynamic Web project转成Maven项目
    (转)nodejs搭建本地http服务器
    jquery mobile validation
    Quartz任务调度快速入门(转)
    珠宝首饰
    免费素材:25套免费的 Web UI 设计的界面元素(转)
    WebUI框架
    超越大典汽车维修系统
    如何申请开通微信多客服功能
    微信开发者文档连接
  • 原文地址:https://www.cnblogs.com/fangfangfanga/p/12116466.html
Copyright © 2011-2022 走看看