JAVA 入门 15 封装 get/set 有参构造器 无参构造器 编辑器生成 成员变量和局部变量的区别

 

 

 Student类

package com.heima.encapsulation;

public class Student {
    //private 私有  只有在Student类中可以使用,外界不可以读取
    private int age;


    //暴露出外界读取age的方法
    public int getAge(){
        return this.age;
    }

    //暴露出外界修改age的方法
    public void setAge(int age){
        if(age>0 && age<100){
            this.age=age;
        }else{
            System.out.println("你输入的age值异常");
        }
    }
}
View Code

Test 类

package com.heima.encapsulation;

public class Test {
    public static void main(String[] args) {
        Student s=new Student();
        s.setAge(15);
        System.out.println(s.getAge());
        s.setAge(115);
        System.out.println(s.getAge());
    }
}
View Code

 

 

  • 自动生成 get /set 方法
  • (鼠标右键-----Generate----选中Getter and Setter -----ctrl+鼠标左键 选中需要创建的get/set 名称--->OK 创建完成)
  • 必须提供无参构造器(默认) 也可以编辑器自动生成
  • (鼠标右键---Generator---Constructor----Select None)
  • 有参构造器(不是必须,可以选择)
  • (鼠标右键---Generator---Constructor---- ctrl+鼠标左键选中要添加的参数 点击OK)

User类

package com.heima.JavaBean;

import jdk.nashorn.internal.objects.annotations.Setter;

public class User {
    //1 成员变量私有
    private String name;
    private double height;
    private double salary;

    //3 必须提供无参构造器(默认) 也可以编辑器自动生成
    //鼠标右键---Generator---Constructor----Select None
    public User() {

    }


    //4 有参构造器(不是必须,可以选择)
    //鼠标右键---Generator---Constructor---- ctrl+鼠标左键选中要添加的参数 点击OK


    public User(String name, double height, double salary) {
        this.name = name;
        this.height = height;
        this.salary = salary;
    }

    //2 必须提供成套的gettter和setter方法暴露成员变量的取值和赋值 鼠标右键--Generator->setter/setter 创建
    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public double getHeight() {
        return height;
    }

    public void setHeight(double height) {
        this.height = height;
    }

    public double getSalary() {
        return salary;
    }

    public void setSalary(double salary) {
        this.salary = salary;
    }
}
View Code

Test类

package com.heima.JavaBean;

//测试类
public class Test {
    public static void main(String[] args) {
        //1 调用无参构造器创建对象
        User u = new User();
        u.setName("黑马");
        u.setHeight(190);
        u.setSalary(1111);

        System.out.println(u.getName());
        System.out.println(u.getHeight());
        System.out.println(u.getSalary());

        //2 调用有参构造器创建对象
        User u1 = new User("王老五", 110, 10000);
        System.out.println(u1.getName());
        System.out.println(u1.getHeight());
        System.out.println(u1.getSalary());
    }
}
View Code

 

 

posted @ 2022-06-22 19:48  还有什么值得拥有  阅读(87)  评论(0编辑  收藏  举报