知识来源:Java核心技术
类
①类是构造对象的蓝图或模板
②类与类之间的关系:
(1)依赖;(2)聚合;(3)继承
使用预定义类
在Java中,没有类就无法做成任何事情,但是并不是所有的类都具有面向对象的特点,例如:Math类
对象与对象变量
要想使用对象,就必须首先构造对象,并指定其初始状态,然后对对象应用方法。在Java中使用构造器构造新实例,构造器是一种特殊的方法,用来构造并初始化对象
new Date();
上面的例子中,构造的对象只使用了一次,通常希望被构造的对象可以多次被使用,因此,将对象存放在一个对象变量内
Date birthday = new Date();
Date deadline;
但是deadline不是一个对象,故不能将任何该对象的方法使用到deadline上。一个对象变量并没有实际包含一个对象,而仅仅是引用一个对象
Java中的LocalDate类
package Java;
import java.time.DayOfWeek;
import java.time.LocalDate;
public class CalenderTest {
public static void main(String[] agrs) {
LocalDate date = LocalDate.now(); //使用静态工厂的方法初始化对象
int today = date.getDayOfMonth(); //获取当前日期的月份天数
int month = date.getMonthValue(); //获取当前日期的月份
date = date.minusDays(today-1); //minusDay()方法将当前日期往前推一天
DayOfWeek weekday = date.getDayOfWeek(); //该月份第一天的星期几
int value = date.getDayOfWeek().getValue(); //将该枚举类型转化为int型
//打印日历核心算法
System.out.println("Mon Tue Wed Thu Fri Sat Sun");
int flag=0;
for(int i=1;i<value;i++) {
System.out.print(" ");
flag++;
}
for(int j=1;j<=today;j++) {
flag++;
if(flag%7==0) {
System.out.println();
}
if(j==today) {
System.out.println(j + "* ");
}
else {
System.out.print(j + " ");
}
}
}
}
用户自定义类
构造器(构造函数)
①构造器与类同名;
②每个类可以有1个以上的构造器;
③构造器可以有0,1,多个参数;
④构造器没有返回值;
⑤构造器总是伴随着new操作一起进行;
隐式参数与显示参数
①显示参数是明显位于方法后面的括号内的,例如int i
void go(int i){
}
②隐式参数没有出现在方法声明中的,是该类的实例域里面的变量,也可以使用关键字this表示隐式参数