• 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

  • 相关阅读:
    java代码水仙花
    java代码求奖金。要求从键盘输入利润
    java中输入3个数,从大到小的输出。。。。
    java代码从键盘输入n的值,计算1+1/2+1/3+...+1/n的值,,
    java求1+1/2+1/3+1/4+......+1/n的值
    求分数1+1/2+1/3+.....+1/n的值
    论程序员成长:如何像游戏一样打怪?新手值得重视!
    网曝某大厂员工下班健身后去领公司夜宵,被罚终身禁止领夜宵并冻结涨薪降考评!
    每个程序员都该学习的5种编程开发语言!最后一门大部分人没听过~
    C语言编程初学者基础知识学习:文件的读写操作!
  • 原文地址:https://www.cnblogs.com/lvlisn/p/16402092.html
Copyright © 2020-2023  润新知