美文网首页
JAVA------静态变量、静态方法、构造方法、this的用法

JAVA------静态变量、静态方法、构造方法、this的用法

作者: 26小瑜儿 | 来源:发表于2019-08-08 20:45 被阅读0次
静态变量:

1.静态变量也称为类变量 他是隶属于类的变量 不属于任何一个类的具体对象
2.静态变量是一个公共的存储单元 不是保存在某个对象实例的内存空间中,而是保存在类的内存空间中的公共存储单元中
3.类的任何一个对象去修改他的时候,也都是在对同一个内存单元做操作。
静态变量的使用格式:
类名.静态变量名;
对象.名静态变量名;
static: 修饰的方法和属性都会在对象创建之前优先加载。

静态方法:
image.png
toString 用法:

1.toString()方法在Object中定义的,其返回值类型为String类型,返回类名和他的引用地址:
2.Demo如下


image.png

输出结果:


image.png
foreach循环:

1.其功能是从a中取出一个元素,自动赋给变量a1,用户不用判断是否超出了数组的长度。需要注意的是 a1的类型必须与数组a中的元素的类型相同


image.png

输出结果:


image.png
什么时候要用到静态属性?

1.定义一个常量 只能赋值一次
2.单例设计模式

构造方法
class poker {

    public String number;
    public String color;
    // 可以对外部给的值进行控制
    public poker(){
//        number ="2";
//        color = "♠";
        System.out.println("构造方法");
    }
//构造方法的重载  重新写一个有参数的构造方法
//方法重载:同一个类里面有多个同名的方法但是返回值或者参数不同
//自定义一个有参构造方法
    /**
     * 构造方法  /initWith
     * a.希望在对象创建的时候做点其他事情
     * b.在对象创建的时候 需要给属性赋值 自定义构造方法
     *创建一个类的对象的时候 就会被调用的方法
     * @param num
     * @param col
     */
get 、set方法:
    public poker (String num,String col){
        number=num;
        color= col;
        System.out.println("自定义的构造方法");
    }
     public boolean bigerThen(String number){
            return true;
        }
        public void t1(int...ages){

        }
    public  void setNumber (String num){

        number =num;
    }
    //给外部提供一个get方法  访问某个变量的值
    public String getNumber(){
        return number;
    }

    public void setColor(String color) {
        this.color = color;
    }

    public String getColor() {
        return color;
    }


}
public class Test {
    public static void main (String []args){
        poker p=new poker();
        p.setNumber("Jacker");
        System.out.println(p.getNumber());
        System.out.println(p.getColor());
        /*
        每个类会提供一个默认的构造方法


         */
        poker pp=new poker();
        System.out.println(pp.getNumber());
        System.out.println(pp.getColor());

        poker pp2=new poker("K","♥");
        System.out.println(pp2.getNumber());
        System.out.println(pp2.getColor());

        poker pp3=new poker("K","♣");
        System.out.println(pp3.getNumber());
        System.out.println(pp3.getColor());
    }
}

this

image.png
image.png
image.png
image.png

感悟:
今天学的东西好多,知识点也碎,扑克牌游戏自己虽说自己编写出来了,但还是有些bug没处理好 ,而且编写的程序也还是停留在C语言的面向过程的阶段,向JAVA的这种面向对象的编写程序的阶段还适应不了,思维总是跳转不过来,所以我又去翻书,继续温习JAVA种面向对象的知识,今后要把JAVA的封装、多态、继承搞的清楚明白。

相关文章

网友评论

      本文标题:JAVA------静态变量、静态方法、构造方法、this的用法

      本文链接:https://www.haomeiwen.com/subject/pzendctx.html