黑马程序员_对象,构造函数以及构造代码块

----------- 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学习型技术博客、期待与您交流! ------------

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值