----------- android培训、java培训、java学习型技术博客、期待与您交流! ------------
1.面向对象具有三个特征:封装。继承,多态
类就是:对现实生活中失误的描述对象:就是这类事物实实在在存在的个体
2.对象一简历就会调用与之对应的构造函数,可以用于给对象进行初始化
构造函数的作用:可以对对象初始化
构造函数的小细节:当一个类中没有定义构造函数式,系统会默认给该类加入一个空参数的构造函数
当在类中自定义了构造函数后,默认的构造函数就没有了,如果你在类中定义了2个构造函数都带有形参
但是你实例化对象时初始化必须带参数,如果没有则会提示找不到构造函数
例如 class A{
A (int a)
{
System.out.println(a);
}
}
这个时候就不能 A b=new A();因为构造函数已经自己定义了,系统的默认构造函数没了,所以编译器找不到这样的构造函数
必须写成 A b=new A(int x);
而且一个对象对应的构造函数只能使用一次;
3.构造函数与其他函数还有一点不同就是 没有返回值,void也不行,void也是无返回值,但是编译器看见
void他就会认为不是构造函数而是一般函数,但是函数名又和类名相同所以报错
4、构造代码块:作用:给对象进行初始化,而且是对象一建立就先优先于构造函数执行,并且他是给
每一个对象都进行统一初始化
构造代码块的格式
{
.............; //就是在大括号里面有代码语句,但是大括号前面没有名字
}
例如
class Person
{
private String name;
private int age;
Person()
{
System.out.println("heihei");
}
Person(String n,int a)
{
name =n;
age=a;
System.out.println("b:name="+",name+",age="+age);
}
{
System.out.println("haha");
}
}
main(){
Person p1=new Person();//运行后先打印出 haha 下一行打印出heihei
Person p2=new Person(wo,20);//运行后先打印出haha 下一行打印出name=wo,age=20
}
----------- android培训、java培训、java学习型技术博客、期待与您交流! ------------