-
jez04 authored30479247
Person.java 1.27 KiB
package lab;
import java.time.Duration;
import java.time.LocalDate;
import java.time.Period;
import java.time.temporal.ChronoUnit;
public class Person {
private String firstName;
private String lastName;
private LocalDate dayOfBirth;
public Person(String firstName, String lastName, LocalDate dayOfBirth) {
super();
this.firstName = firstName;
this.lastName = lastName;
this.dayOfBirth = dayOfBirth;
}
public String getLastName() {
return lastName;
}
public void setLastName(String lastName) {
this.lastName = lastName;
}
public String getFirstName() {
return firstName;
}
public LocalDate getDayOfBirth() {
return dayOfBirth;
}
public int getAge() {
return Period.between(dayOfBirth, LocalDate.now()).getYears();
}
public static void main(String[] args) {
Person p = new Person("", "", LocalDate.now().minusDays(3700));
System.out.println(p.getAge());
System.out.println(p.getDaysToBirthday());
}
public LocalDate get50thBirthDay() {
return dayOfBirth.plusYears(50);
}
public long getDaysToBirthday() {
LocalDate nextBirthday = dayOfBirth.withYear(LocalDate.now().getYear());
if(nextBirthday.isBefore(LocalDate.now())){
nextBirthday = nextBirthday.plusYears(1);
}
return ChronoUnit.DAYS.between(LocalDate.now(), nextBirthday);
}
}