封装
先是两张图,大概是没啥问题吧。网课的图还都挺不错~
主要说一下子这个getset方法。
这种简单的getset方法被称作javabean
生成的话和什么重写、构造函数的生成一样。右键生成就完了。
然后呢比如说我去调用一个User类。这个类里包含着id name 和man(性别)这三个变量。他们在User
里是私有的。
public class User { private int id; private String name; private boolean man; public User(int id, String name, boolean man) { this.id = id; this.name = name; this.man = man; } public void printInfo(){ System.out.println(id); System.out.println(name); System.out.println(man); } public int getId() { return id; } public void setId(int id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public boolean isMan() { return man; } public void setMan(boolean man) { this.man = man; } }
再加上前面的geter seter方法。就可以对这些变量进行赋值。当然,完全可以使用构造器进行赋值~
只不过是说这两种方法赋值的自由度不同
例如如下的TestCall中。有u和u2两个
public class TestCall { public static void main(String[] args) { User u = new User(1,"张三",true); User u2 = new User(2,"小花",false); System.out.println(u.getId()); u.setMan(false); System.out.println(u.isMan()); u.printInfo(); u2.printInfo(); } }
分别对 u和u2进行一系列操作。有对通过构造器赋值。也有set方法赋值、有printInfo方法 输出信息。也可以单独使用
System.out.println(u.getId());来输出信息。其中在使用后者的时候,如果要输出信息的是布尔类型,则是 is+变量名。在生成的时候便是这样。