Java多种方法的使用

收获

通过今天的学习,了解了Java中getter方法/setter方法的使用,学习如何创建一个方法和方法重载的相关应用,this方法和变量作用域的相关概念。还做了一部分扑克的程序

setter/getter方法使用

为什么要用

大多数字段的访问都是通过Getter和Setter方法来间接访问,为什么不直接将字段设置为公开属性Public呢?答案在于前者的未来可能性。当我在Java语言编程中开始我的职业生涯时,我就对Getter和Setter感到困惑。为什么要这么写呢?为什么不直接用Public呢?这对我来说是个奇怪的语法。
我们知道Java具有封装性,比如,用户在将具有同种特性的数据或者方法聚集在一个了里面,需要时从里面调用即可。在封装时,具有public公有/private私有俩种情况。setter和getter方法正式为了解决这个问题。代码如下:

private修饰的变量无法被外部电泳和改变,听过setter/getter方法来给这个变量进行引用。
 public void setNumber(String num){
        number = num;
    }
    //给外部提供一个get方法 访问某个变量的值
    public String getNumber() {
        return number;
    }
    public String getColor() {
        return color;
    }
//某一个方法里面调用this指的是 调用这个方法的对象
    public void setColor(String color) {
        this.color = color;
    }

构造方法

构造方法,简单的概括就是,名字相同功能不同的方法

class Poker{
    //成员变量的作用域 从对象创建到对象被销毁
    private String number;
    private String color;
//类的默认构造方法
    public Poker(){
        number = "2";
        color = "♠";
        System.out.println("构造方法");
    }
    //构造方法的重载 自定义一个有参数的构造方法
    //通常给一个属性赋值 形参名尽量和属性名一致
    //变量在使用的时候有就近原则
public Poker(String num,String col){
        //调用构造方法的时候 这个对象在内存里面已经分配好了
number = num;
color = col;
    System.out.println("自定义的构造方法");
}

 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方法

用来明确当前方法变量,解决与其它方法变量冲突的问题

public Poker(String number,String color){
        //调用构造方法的时候 这个对象在内存里面已经分配好了
this.number = number;
this.color = color;
    System.out.println("自定义的构造方法");
}

static/静态区

存储在静态数据区的变量会在程序刚开始运行时就完成初始化,也是唯一的一次初始化。
static修饰的对象和方法,会在程序运行时先开始初始化。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Swift1> Swift和OC的区别1.1> Swift没有地址/指针的概念1.2> 泛型1.3> 类型严谨 对...
    cosWriter阅读 11,619评论 1 32
  • 1.软件开发概述 软件生命周期软件生命周期:软件的产生到报废的整个过程软件生命周期内有:问题定义,可行性分析,总体...
    寒桥阅读 653评论 0 0
  • 阿里巴巴 JAVA 开发手册 1 / 32 Java 开发手册 版本号 制定团队 更新日期 备 注 1.0.0 阿...
    糖宝_阅读 7,879评论 0 5
  • 雨是牛毛 雨是丝线 雨是珍珠 我在雨中找宝贝 找到了笑声一串串 找到了童真一片片
    若水似风阅读 371评论 0 0
  • 姓名:李格 公司:海南蔚蓝时代实业有限公司 组别:第420期乐观4组 【日精进打卡第231天】 【知~学习】 背诵...
    熊猫酱panda阅读 122评论 0 0

友情链接更多精彩内容