构造方法的格式:

修饰符 构造方法名(参数列表)

{

}

 构造方法的体现:

构造方法没有返回值类型。也不需要写返回值。因为它是为构建对象的,对象创建完,方法就执行结束。

构造方法名称必须和类名保持一致。

构造方法没有具体的返回值。

public class Person {
private String name;
private int age; //构造方法
public Person(String name,int age){
this.name=name;
this.age=age;
}
//构造方法的重载
public Person(String name){
this.name=name;
}
public Person(){ } public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
} }
public class Demo01 {
public static void main(String[] args) {
//构造方法调用
Person p=new Person("张三", 10);
System.out.println(p.getName()+" "+p.getAge());
}
}

当类中无构造方法时,系统会给此类默认添加一个空参构造。

如果类中有至少一个空参方法时,系统就不会再添加空参构造了。

构造方法在对象创建时就执行了,而且只执行一次。

一般方法是在对象创建后,需要使用时才被对象调用,并可以被多次调用。

public class Pig {
private String name; public Pig(){
//构造方法调用构造方法
//在同一类中,使用this()调用构造方法;
//只能进行构造方法之间的调用
//this();只能放在构造方法的第一行
this("小红帽");
}
public Pig(String name){
this.name=name;
}
public String getName() {
return name;
} public void setName(String name) {
this.name = name;
} }
//解决同时super和this
public class Student extends Person{
private String name;
public Student(){
this("张三");
System.out.println("子类空");
}
public Student(String name){
super();//调用父类中的构造方法,必须放在构造方法中的第一行
//在所有构造方法的第一行默认super();方法
this.name=name;
}
}

 

最新文章

  1. webpack+react+es6开发模式
  2. Spring MVC类型转换
  3. MongoDB-C#驱动帮助
  4. R 语言机器学习同步推进~
  5. 用php怎么改文件名
  6. Android 扒开美女衣服
  7. C#复习⑧
  8. IEqualityComparer<T>
  9. SQL基础教程
  10. 【转】Ubuntu下配置samba服务器--不错
  11. spring+springMVC集成(annotation方式)
  12. Beginning Python From Novice to Professional (5) - 条件与循环
  13. 深入浅出java常量池
  14. 流程控制之if判断
  15. python 菱形继承问题究极版
  16. 查找字符在字符串中第N次出现的位置
  17. C# socket实践 - 简易版FTP(Server & Client)
  18. python生成随机数、随机字符串
  19. webpack4.5.0+vue2.5.16+vue-loader 实战组件化开发案例以及版本问题中踩的一些大坑!!!
  20. 关于网页头图标ico的问题

热门文章

  1. # Leetcode 14:Longest Common Prefix 最长公共前缀
  2. Dictionary不可以迭代修改值
  3. Aladdin and the Flying Carpet LightOJ 1341 唯一分解定理
  4. 使用python把gdb格式的文本文件转为utf-8的格式
  5. kvm虚拟机的克隆
  6. 【leetcode-200 深度优先+广度优先】 岛屿数量
  7. Prometheus监控学习笔记之prometheus 版本1.7 常用启动参数
  8. 2019-11-29-WPF-从触摸消息转触摸事件
  9. JAVA操作InfluxDB的一个Demo
  10. Vue.js项目实战-打造线上商城