Java 之面向对象实例 - 通过输入对话框录入信息
录入学生的姓名和年龄信息,并且打印结果
People.java
package com.company;
public class People {
private String name;
private double age;
// 默认构造
public People(){}
// 带参构造
public People(String name,double age){
this.setName(name);
this.setAge(age);
}
// 可以这样写
/**
public People(String name1,int age1) {
name = name1;
age = age1;
}
*/
public String getName() { // 得到姓名
return name;
}
public double getAge() { // 得到年龄
return age;
}
public void setName(String name) { // 设置姓名
this.name = name;
}
public void setAge(double age) { // 设置年龄
this.age = age;
}
public void show() {
System.out.println("我叫" + this.getName() + "今年" + this.getAge() + "岁");
}
}
Main.java
package com.company;
import javax.swing.*;
import java.util.Scanner;
public class code{
public static void main(String[] args) {
double sum_age = 0; // 三个人年龄的和
People[] peoples = new People[3]; // 对象数组
for(int i=0;i<peoples.length;i++)
{
peoples[i] = new People(); // 对象数组使用之前,要分配空间
// 也可以这样写
// if(peoples[i] == null) peoples[i] = new People();
// 接受输入的姓名信息(String类型)
String name = JOptionPane.showInputDialog("请输入学生姓名:");
peoples[i].setName(name);
// 接受输入的年龄信息(Strin类型)
// 将String类型转换成double类型
String age = JOptionPane.showInputDialog("请输入学生年龄:");
// 因为age是double类型的,所以使用Double.parseDouble(age)可以将String类型的转换成double类型
// 如果是int类型的变量,需要Integer.parsInt(age)将String类型转换成int类型
peoples[i].setAge(Double.parseDouble(age));
peoples[i].show();
sum_age += peoples[i].getAge();
}
System.out.println(sum_age);
}
}
录入信息:
开始录入
打印结果: