-对象与对象变量
在java程序设计语言中,要是用构造器(构造函数)构造新实例(对象),构造器是一种特殊的方法,用来构造并初始化对象。
构造器的名字与类名相同,例如Date类,要想构造一个java对象,需要在构造器前面加上new操作符。 即:new Date()。
import java.util.Date;
public class Test {
public static void main(String[] args) {
Date date = new Date();//创建一个Date对象,并将其地址赋值给一个date变量
System.out.println(date);//输出dateThu Aug 26 17:42:31 GMT+08:00 2021
Date variable = date;//表示将date变量的地址值,赋值给variable,此时date,variable同时指向了同一个地址
System.out.println(variable);//Thu Aug 26 17:42:31 GMT+08:00 2021
//在Java中,任何对象变量的值都是对存储在另外一个地方的某个对象的引用(地址值),new操作符的返回值也是一个引用(地址值)
variable = null;//表示variable这个变量没有引用任何对象
}
}
通过对象调用类中的方法,例如:LocalDate类
import java.time.LocalDate;
import java.time.Month;
import java.util.Date;
public class Test {
public static void main(String[] args) {
//调用LocalDate类的静态方法,来构建对象,此方法被称为:静态工厂方法,代表调用了构造器
LocalDate date = LocalDate.now();//创建date对象
System.out.println(date);//2021-08-26
LocalDate date1 = LocalDate.of(2020,1,5);
System.out.println(date1);
//通过 对象. 的方式来调用LocalDate类中的方法;
int monthValue = date.getMonthValue();
int year = date.getYear();
int dayOfMonth = date.getDayOfMonth();
System.out.printf("年:%d 月:%d 日:%d",year,monthValue,dayOfMonth);//年:2021 月:8 日:26
}
}
拓展:LocalDate类的常用方法
static LocalDate now():构造一个表示当前日期的对象
static LocalDate of(int year,int month,int day):构造一个给定日期的对象
int getYear(),int getMonthValue(),int getDayOfMonth():获取年月日(数值型)
DayOfWeek getDayOfWeek():返回当前日期是星期几,作为DayOfWeek类的实例返回,通过这个实例对象调用getValue()返回一个整数(1-7)分别表示为星期一到星期日
LocalDate plusDays(int n)
LocalDate minusDays(int n):返回当前日期之前或者之后的日期
-自定义类
一个简单地员工类
import java.time.LocalDate;
public class Employee {
//私有的属性
private String name;
private int salary;
private int age;
private LocalDate date;
//构造器
public Employee() {
}
public Employee(String name, int salary, int age, LocalDate date) {
this.name = name;
this.salary = salary;
this.age = age;
this.date = date;
}
//分别提供个属性的get和set方法来操作属性
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getSalary() {
return salary;
}
public void setSalary(int salary) {
this.salary = salary;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public LocalDate getDate() {
return date;
}
public void setDate(LocalDate date) {
this.date = date;
}
}