提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
文章目录
- 构造方法
- 封装
- 包的创建
构造方法:
public class
Date
{
public
int
year
;
public
int
month
;
public
int
day
;
public
Date
(
int
year
,
int
month
,
int
day
){
this
.
year
=
year
;
this
.
month
=
month
;
this
.
day
=
day
;
System
.
out
.
println
(
"Date(int,int,int)
方法被调用了
"
);
}
public
void
printDate
(){
System
.
out
.
println
(
year
+
"-"
+
month
+
"-"
+
day
);
}
public static
void
main
(
String
[]
args
) {
//
此处创建了一个
Date
类型的对象,并没有显式调用构造方法
Date d
=
new
Date
(
2021
,
6
,
9
);
//
输出
Date(int,int,int)
方法被调用了
d
.
printDate
();
// 2021-6-9
}
}
注意
构造方法:
// 名字与类名相同,没有返回值类型,设置为void也不行
// 一般情况下使用public修饰
// 在创建对象时由编译器自动调用,并且在对象的生命周期内只调用一次
//. 构造方法可以重载(用户根据自己的需求提供不同参数的构造方法)
eg:重载构造函数(
名字相同,参数列表不同
)
public class
Date
{
public
int
day
;
//
无参构造方法
public
Date
(){
//也可以替换成this(1);在无参中调用了有参进行赋值
this(...)
必须是构造方法中第一条语句
this
.
day
=
1
;
}//无参与有参构成了重载
//
带有三个参数的构造方法
public
Date
(
int
year
,
int
month
,
int
day
) {
this
.
day
=
day
;
}
public
void
printDate
(){
System
.
out
.
println
(
"day="
+
day
);
}
public static
void
main
(
String
[]
args
) {
Date d
=
new
Date
();
d
.
printDate
();
}
}
//如果用户没有显式定义,编译器会生成一份默认的构造方法,生成的默认构造方法一定是无参的。 上述Date类中,没有定义任何构造方法,编译器会默认生成一个不带参数的构造方法。
注意
:一旦用户定义,编译器则不再生成。
封装
概念:将数据和操作数据的方法进行有机结合,隐藏对象的属性和实现细节,仅对外公开接口来和对象进行 交互
(1)访问限定符:
Java
中主要通过类和访问权限来实现封装:
类可以将数据以及封装数据的方法结合在一起
,更符合人类对事物的认
知,而访问权限用控制方法或者字段能否直接在类外使用
。
Java
中提供了四种符:

包的创建


