DAY 15

day15

包装类(wrapper)的使用

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

2.掌握:基本数据类型、包装类、String三者之间的相互转换

package shangGuiGu.day14;



//基本数据类型----》包装类:调用包装类的构造器
public class demo04 {
    public static void main(String[] args) {
        int num1=10;
        Integer int1=new Integer(num1);
        System.out.println(int1.toString());
        Integer int2=new Integer("123");
        System.out.println(int2.toString());
        Float f1=new Float(12.3f);
        System.out.println(f1);
        Boolean b1=new Boolean(true);
        Boolean b2=new Boolean("true");
        Boolean b3=new Boolean("true123");
        System.out.println(b3);//false
        Order order=new Order();
        System.out.println(order.ismale);//false
        System.out.println(order.isfemale);//null
    }

}
class Order{
    boolean ismale;
    Boolean isfemale;
}
package shangGuiGu.day15;

public class demo01 {
    //包装类----》基本数据类型:调用包装类的xxxValue()
    public static void main(String[] args) {
 demo01 ie=new demo01();
 ie.test2();
    }
    public void test2(){
        Integer in1=new Integer(12);
        int i1=in1.intValue();
        System.out.println(i1+1);
        Float f1=new Float(12.3);
        float f2=f1.floatValue();
        System.out.println(f2+1);
    }
}
package shangGuiGu.day15;

import org.junit.Test;

public class demo02 {
    //自动装箱
    int num2=10;
    Integer int1=num2;

    boolean b1=true;
    Boolean b2=b1;

    //自动拆箱
    int num3=int1;
   

}
package shangGuiGu.day15;

public class demo03 {
    //基本数据类型、包装类----》String类型:调用String重载的valueOf(Xxx xxx)
    public void test4(){
        int num1=10;
        //方式1:连接运算
        String str1=num1+"";
        //方式2:调用String的valueOf(xxx)
        float f1=12.3f;
        String str2=String.valueOf(f1);//"12.3"
        Double d1=new Double(12.4);
        String str3=String.valueOf(d1);
        System.out.println(str2);
        System.out.println(str3);//"12.4"
        //String---》基本数据类型、包装类:调用包装类的parsexxx(String s)
        String str111="123";
        int nu2=Integer.parseInt(str111);
        System.out.println(nu2+1);
        String str222="true";
        boolean b1=Boolean.parseBoolean(str222);
        System.out.println(b1);
        
    }
}
static关键字的使用

1.静态的

2.可以用来修饰:属性、方法、代码块、内部类

3.使用static修饰属性:静态变量(或类变量)

属性:按是否使用static修饰,又分为:静态属性vs非静态属性(实例变量)

实例变量:我们创建了类的多个对象,每个对象都有独立的拥有一套类中的非静态属性。当修改其中一个对象中的非静态属性时,不会导致其他对象中同样的属性值的修改。

静态变量:我们创建了类的多个对象,多个对象共享同一个静态变量。当通过某一个对象修改静态变量时,会导致其他对象调用此静态变量,是修改过的。

其他说明:1.静态变量随着类的加载而加载,可以通过 类.静态变量 的方式进行调用 2.静态变量的加载早于对象 的创建 3.由于类只会加载一次,则静态变量在内存中也只会存在一份:存在方法区的静态域中。

4.使用static修饰方法:静态方法

1.随着类的加载而加载,可以通过 类.静态方法 的方式进行调用 2.静态方法中,只能调用静态的方法或属性 。非静态方法中,可以调用静态和非静态的方法或属性

注意点:不能使用this和super关键词

package shangGuiGu.day15;

public class demo04 {
    public static void main(String[] args) {
        Chinese.nation="china";
        Chinese c1=new Chinese();
        c1.name="yaoming ";
        c1.age=40;
        Chinese c2=new Chinese();
        c2.name="malong";
        c2.age=30;
        c1.nation="CHN";
        System.out.println(c2.nation);
    }

}
//中国人
class Chinese{
    String name;
    int age;
    static String nation;
}

属性时可以被多个对象所共享的,不会随对象的不同而不同的。则用static修饰属性。

工具类中的方法,习惯上声明为static的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值