Java类

来源:互联网 发布:怎么面试美工 编辑:程序博客网 时间:2024/05/16 14:07

/** * Created by LiuinStein on 2016/5/6. */class A {    private int a = 0;    protected int b = 0;    public int c = 10;    public static int sa = 6;    public static int sb = 2;    // JAVA是不会有默认构造方法的    A() {        a = 2;        b = 3;    }    //复制构造方法    A(final A ca) {        //通过在此处的输出我们发现在这里是值传递        System.out.println(ca.hashCode());        a = ca.a;        b = ca.b;        c = ca.c;    }    private int Sum() {        return a + b + c;    }    public int Sum2() {        return Sum() * Sum();    }    protected int Multi() {        return a * b * c;    }    public int Multi2() {        return Multi() * Multi();    }    static int max(int x, int y) {        return x > y ? x : y;    }    int min(int x, int y) {        return x > y ? y : x;    }    static double division() {        return // max(a,b); ///无法在静态方法中引用非静态成员变量                // min(sa, sb); ///无法在静态方法中引用非静态成员方法                max(sa, sb) / 2; /// 静态方法和静态成员    }}public class Main {    public static void main(String[] args) {        A a = new A();        // 访问性        System.out.println("pub a.Sum2(): " + a.Sum2()); // 外部可访问public        System.out.println("pro a.Multi(): " + a.Multi());// 外部可访问protected        // 修改性        a.b = 1; // protected外部可修改性        a.c = 1; // public外部可修改性        System.out.println("pub a.Sum2(): " + a.Sum2());        System.out.println("pro a.Multi(): " + a.Multi());        // 静态成员        // 静态方法可以直接通过类名访问        System.out.println("\nstatic A.division " + A.division());        // 静态成员可以直接通过类名访问        System.out.println("A.sa " + A.sa);        //哈希码值        System.out.println("\nhasCode:");        System.out.println(a.hashCode());    //hashCode返回哈希码值        //只要对象的内容保持不变那么他的hashCode也保持不变        A b = new A(a);        //通过在此处的输出我们发现在这里是值传递        System.out.println();    }}


首发于我的个人网站: 点击打开链接

0 0
原创粉丝点击