前言:
现时我们对“java函数赋值”大概比较重视,咱们都需要分析一些“java函数赋值”的相关文章。那么小编也在网上网罗了一些关于“java函数赋值””的相关资讯,希望各位老铁们能喜欢,各位老铁们快快来学习一下吧!今天教老婆如何创建一个对象并赋值。
首先创建一个类,getter/setter方法略,可以使用快捷键自动生成(IDEA快捷键是alt + insert),也可以使用lombok的@Getter/@Setter注解:
public class Person { // 无参构造函数 public Person() { } // 有参构造函数 public Person(int age, String firstName) { this.age = age; this.firstName = firstName; } // Java 8个基本类型 private int age; private long legLength; private float height; private double weight; private char sex; private byte fingerLength; private short hairLength; private boolean highEQ; // 常用类型,包装类型遇到再说 private String firstName; private BigDecimal hairNumbers;}
使用三种方式给属性赋值:
第一种:使用无参构造函数,并调用set方法进行属性赋值。
Person shelly = new Person();shelly.setAge(18);shelly.setFirstName("Shelly");......
第二种:使用有参构造函数,给部分属性赋值。
Person shelly = new Person(18, "Shelly");
第三种:使用Builder模式来灵活的给属性赋值。Builder看上去高大上一些,多使用[呲牙]。目前使用的是lombok的@Builder注解自动生成builder代码,使用如下:
Person shelly = new PersonBuilder().age(18).firstName("Shelly").height(165).weight(50).build();
优点:相比于有参构造函数,builder模式更加灵活,不受有参构造函数参数个数的限制,也更加符合人的编码思想习惯。
缺点:使用lombok注解会增加程序的编译时间(主要是lombok自动生成builder代码的时间),不过相对于它的好处无关紧要,所以放心用。
其实还有第四种:
public class Person { // Java 8个基本类型 public int age; public long legLength; public float height; public double weight; public char sex; public byte fingerLength; public short hairLength; public boolean highEQ; // 常用类型,包装类型遇到再说 public String firstName; public BigDecimal hairNumbers;}
去除getter/setter方法与有参构造函数,将属性访问权限设置为public,使用时如下:
Person person = new Person();person.age = 5;person.firstName = "Shelly";
看上去挺好,既没有getter/setter代码,使用也简单,但是为什么不这么用呢?老婆表示她不想知道,后面等她想知道的时候再说[笑哭]。
标签: #java函数赋值 #java属性赋值和专业赋值 #java无参构造方法赋值