JavaBean:
- 也可以称为实体类,其对象可以用于在程序中封装数据。
标准JavaBean须满足如下书写要求:
- 成员变量使用private修饰。
- 提供成员变量对应的setXxx() /getXxx()方法。
- 必须提供一个无参构造器;有参构造器是可写可不写的。
演示代码如下:
User类:
public class User { //1.成员变量建议使用private私有 private String name; private double height; private double salary; //3.要求提供无参数构造器,有参数构造器可选 public User() { } public User(String name, double height, double salary) { this.name = name; this.height = height; this.salary = salary; } //2.必须为成员变量提供成套的setter和getter方法 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; } }
Test类:
public class Test { public static void main(String[] args) { //1.无参数构造器创建对象封装一个用户信息 User u1 = new User(); u1.setName("黑马吴彦祖"); u1.setHeight(180.5); u1.setSalary(1000.0); System.out.println(u1.getName()); System.out.println(u1.getHeight()); System.out.println(u1.getSalary()); //2.有参数构造器创建对象封装一个用户信息 User u2 = new User("黑马武大郎",156,30000.0); System.out.println(u2.getName()); System.out.println(u2.getHeight()); System.out.println(u2.getSalary()); } }
注意:有参数构造器,无参数构造器还有setter和getter都可以通过右键Generate直接导入的,不需要手敲。
案例:面向对象综合案例-模仿电影信息展示
如图:
实现代码如下:
Movie类:
public class Movie { //1.成员变量 private String name; private double score; private String actor; public Movie() { } public Movie(String name, double score, String actor) { this.name = name; this.score = score; this.actor = actor; } //2.setter和getter public String getName() { return name; } public void setName(String name) { this.name = name; } public double getScore() { return score; } public void setScore(double score) { this.score = score; } public String getActor() { return actor; } public void setActor(String actor) { this.actor = actor; } }
Test类:
public class Test { public static void main(String[] args) { //1.设计一个电影类 //2.创建3个电影对象,封装电影的信息 //3.定义一个电影类型的数组,存储3部电影对象 Movie[] movies = new Movie[3]; movies[0] = new Movie("《长津湖》",9.7,"吴京"); movies[1] = new Movie("《我和我的父辈》",9.6,"吴京"); movies[2] = new Movie("《扑水少年》",9.5,"王川"); //4.遍历数组中的每个电影对象,然后获取它的信息展示出来 for (int i = 0; i < movies.length; i++) { Movie m = movies[i]; System.out.println("电影名:"+m.getName()); System.out.println("得分:"+m.getScore()); System.out.println("主演:"+m.getActor()); System.out.println("--------------------------"); } } }
注意:数组中存储的元素并不是对象本身,而是对象的地址。可以通过一串小代码发现。
运行结果会显示
其他: