|NO.Z.00019|——————————|BigDataEnd|——|Java&方法封装.V01|——|Java.v01|构造方法|概念使用|
一、[构造方法概念使用]——[构造方法的作用]
### --- 构造方法概念使用
~~~ # 构造方法的基本概念
class 类名{
类名(形参列表) {
构造方法体;
}
}
### --- 举例说明
class Person {
Person() { -Person类中的构造方法
}
}
二、构造方法说明
### --- 构造方法说明
~~~ ——> 构造方法名与类名完全相同并且没有返回值类型,连void都不许有。
### --- 默认构造方法
~~~ ——> 当一个类中没有定义任何构造方法时,编译器会自动添加一个无参空构造构造方法,
~~~ ——> 叫做默认/缺省构造方法,如:Person(){}
~~~ ——> 若类中出现了构造方法,则编译器不再提供任何形式的构造方法。
三、构造方法的作用
### --- 构造方法的作用
~~~ ——> 使用new关键字创建对象时会自动调用构造方法实现成员变量初始化工作。
四、编程代码
### --- 编程代码
/*
编程实现Person类的定义
*/
public class Person {
String name; // 用于描述姓名的成员变量
int age; // 用于描述年龄的成员变量
// 自定义构造方法
// String s = "张飞";
// int i = 30;
// String s = "关羽";
// int i = 35;
Person(String name, int age) {
//System.out.println("我就是自定义的构造方法!");
//name = "张飞";
//age = 30;
this.name = name;
this.age = age;
}
// 自定义无参构造方法
Person() {
}
// 自定义成员方法实现所有特征的打印
void show() {
System.out.println("我是" + name + ",今年" + age + "岁了!");
}
public static void main(String[] args) {
// 1.声明一个Person类型的引用指向Person类型的对象
// 当类中没有提供构造方法时,则下面调用默认构造方法,若类中提供构造方法后,则下面调用类中提供的版本
Person p1 = new Person("张飞", 30);
// 并打印特征
p1.show(); // null 0 张飞 30
Person p2 = new Person("关羽", 35);
p2.show(); // 关羽 35
Person p3 = new Person();
p3.show(); // null 0
}
}
五、编译打印
### --- 编译
C:\Users\Administrator\Desktop>javac Person.java
### --- 打印输出
C:\Users\Administrator\Desktop>java Person
我是张飞,今年30岁了!
我是关羽,今年35岁了!
我是null,今年0岁了!
Walter Savage Landor:strove with none,for none was worth my strife.Nature I loved and, next to Nature, Art:I warm'd both hands before the fire of life.It sinks, and I am ready to depart
——W.S.Landor
分类:
bdv002-Java面向对象
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通