java基础之易错使用方式一

前言

最近做项目,一不小心犯了一个低级错误,当时觉得应该有问题,但是并未自测,联调的时候发现了,很是尴尬,今天记录一下,避免日后再犯。这个也是初学者比较容易犯的问题,但是也不免有开发几年了掉坑里的。

代码

public class BugTest {
    private static int a = 10;
    private static int b = 20;

    public static void main(String[] args) {
        /*int a;
        int b;*/
        build(a, b);
        System.out.println("a=" + a + ",b=" + b);

        Student student = new Student();
        build(student);
        System.out.println(student.toString());

    }

    private static void build(int a, int b) {
        int c = a + b;
        System.out.println(c);
        a = 100;
        b = 200;
        System.out.println("a=" + a + ",b=" + b);
        System.out.println("----------------------------");
    }

    private static void build(Student student) {
        student.setAge(1);
        student.setName("张三");
        student.setBd(new BigDecimal("100"));
        student.setScore(100);
    }
}

运行结果

c=30
a=100,b=200
----------------------------
a=10,b=20
Student{name='张三', score=100, id=null}

总结

当时我用的是包装类,八种基本类型的包装类也会出现这种情况,具体原因就不细说了,相信java基础比较好的应该能想到原因了,后面有时间再做详细分析以及给出对应的解决方案。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章