无参构造函数
当类中,没有定义类的构造函数时,系统会有默认的无参构造函数
特别注意,当定义了构造函数时,默认的无参构造函数就不存在了,要用的话,就需要显示的定义,例如,Dog(){}
public class ConstructorDetail {
public static void main(String[] args) {
person1 p1=new person1("xiaoming",18);
person1 p2= new person1("xiaoli");
System.out.println("p1.name="+p1.name);
System.out.println("p1.age="+p1.age);
System.out.println("p2.name="+p2.name);
//默认的无参构造函数
Dog d1=new Dog();
}
}
class person1{
String name;
int age;
//第一个构造器
public person1(String pName,int pAge){
name=pName;
age=pAge;
}
//第二个构造器
public person1(String pName){
name=pName;
}
}
class Dog{
String name;
int age;
}
javap,反编译命令,用于对.class字节码文件中的代码进行反编译
/*
练习:
创建两个构造函数,一个是无参,设置年龄默认值为18,;第二个是有两个参数的构造函数
分别给这两个函数创建对象
*/
public class ConstructorExercise {
public static void main(String[] args) {
Person2 p3 = new Person2();
Person2 p5 = new Person2();
Person2 p4 = new Person2("xiaoming",23);
System.out.println(p3.name+" "+p3.age);
System.out.println(p4.name+" "+p4.age);
System.out.println(p5.name+" "+p5.age);
}
}
class Person2 {
String name;//默认值为null
int age;//默认值为0
public Person2(){//无参构造函数
age=18;
}
//带两个形参的构造函数
public Person2(String dname, int dage){
age=dage;
name=dname;
}
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理