每个对象都有构造方法:当对象被实例化后,若无自定义的构造方法,在java程序编译时会自动使用默认构造方法;
构造方法既然无返回值:为什么不可设置为void类型?如:
class stu{
int age;
String name;
}
public stu(){
this.age = age;
this.name = name;
}
public void stu(){
this.age = age;
this.name = name;
}
若将构造方法返回值定义为null类型,则在编译时会将该构造方法视为普通方法,仅在对象实例化后可调用,而构造方法通常在对象实例化时调用。
this关键字:
在java程序里{}作为一个结构体的边界符,那么在程序里进行变量初始化时,以{}作为查找边界,此时的构造方法并未能访问类中的参数,按照就近原则,此时程序为了区分对象的属性与参数,选择在属性前追加一个‘this’表示本类属性。在日后程序开发时,访问此类中属性时,添加‘this’关键字。
this关键字实际运用:遇到类中方法重载代码产生代码重复时,可使用this()调用不同参数方法。注意:1.构造方法必须在对象实例化的时候调用,所以必须方法方法中的第一行,2.构造方法互相调用时保留程序的出口,如单参构造方法 调用无参构造方法,双参构造方法调用单参构造方法,无参构造方法调用双参构造方法。
class people{ int age; String name; } public people(){ system.out.println('1'); } public people(int age){ system.out.println('1'); //改写为 this(); this.age = age; } public people(int age,String name){ system.out.println('1'); //改写为 this(age); this.age = age; // this.name = name; this.name = name; }
简单java类的核心开发结构:
1.类名称一定要有明确意义,能够描述某一类事物;
2.类之中的所有属性一定要用private进行封装(简单类),同时封装后的属性一定要有getter和setter方法。
3.类之中可以提供无数个含参的构造方法,但一定要保留一个无参构造方法。
4.类之中不允许出现任何的输出语句,所有内容的获取必须返回。