-
java 构造方法(基础)
java构造方法(基础)
构造方法也叫构造器,是创建对象时执行的特殊方法,一般用于初始化新对象的属性。它是专门用来创建对象的方法,当我们通过关键字new来创建对象时,其实就是在调用构造方法。
格式
public 类名称 (参数类型 参数名称){
方法体
}
例如代码:
//一个无参构造的方法
public Student(){
System.out.println("无参构造执行");
}
那么一个有参构造的方法体
public Student(String name,int age){
System.out.println("有参构造执行");
this.name=name;//方便我们调用参数
this.age=age;
}
写构造方法时需要注意的事项:
1.构造方法的名称必须与前面的类的名称相同。大小写也要一样。
2.构造方法不需要返回值类型,所以不需要写void。
3.在构造方法体内不能返回具体的值。
4.当我们在一个类中不写构造方法时 ,编译器会默认给我们一个构造方法。且没有参数,方法体也没啥事干。
5.但如果我们要是写了一个以上(至少一个)的构造方法,编译器就不会再给我们构造方法。
6.我们写的构造方法也是可以重载的,(方法重载:方法名相同,参数列表不同)
java方法基础
可以点击上面链接查看方法基础。
构造方法的重载:
代码:
//一个无参构造的方法
public Student(){
System.out.println("无参构造执行");
}
//一个有参构造的方法
public Student(String name,int age){
System.out.println("有参构造执行");
this.name=name;
this.age=age;
}//方法名相同,参数列表不同
构造方法完整代码应用:
package Day01;
//首先我们写一个Student类
public class Student {
private String name;//两个成员变量
private int age;
//我们来获取这两个private类型的变量,getter/setter方法。因为他们是private类型
// 可以使用快捷键alt+insert 生成getter/setter方法,光标放在要生成方法的变量上。
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 Student(){
System.out.println("无参构造执行");
}
//一个有参构造的方法
public Student(String name,int age){
System.out.println("有参构造执行");
this.name=name;
this.age=age;
}
}
写一个测试类调用
package Day01;
public class DemoStudent {
public static void main(String[] args) {
Student stu1 = new Student();//调用时直接new,执行无参构造
System.out.println("***************");
Student stu2 = new Student("王八",20);//全参构造
System.out.println("姓名:" + stu2.getName()+",年龄 :" + stu2.getAge());
//如果需要改变对象中的成员变量的内容,仍然需要使用setXxxx方法
stu2.setAge(21);
System.out.println("姓名:" + stu2.getName()+",年龄 :" + stu2.getAge());
}
}
有错误感谢指正。
出处:https://www.cnblogs.com/kuangsun125/p/15143782.html
最新更新
python爬虫及其可视化
使用python爬取豆瓣电影短评评论内容
nodejs爬虫
Python正则表达式完全指南
爬取豆瓣Top250图书数据
shp 地图文件批量添加字段
爬虫小试牛刀(爬取学校通知公告)
【python基础】函数-初识函数
【python基础】函数-返回值
HTTP请求:requests模块基础使用必知必会
SQL SERVER中递归
2个场景实例讲解GaussDB(DWS)基表统计信息估
常用的 SQL Server 关键字及其含义
动手分析SQL Server中的事务中使用的锁
openGauss内核分析:SQL by pass & 经典执行
一招教你如何高效批量导入与更新数据
天天写SQL,这些神奇的特性你知道吗?
openGauss内核分析:执行计划生成
[IM002]Navicat ODBC驱动器管理器 未发现数据
初入Sql Server 之 存储过程的简单使用
uniapp/H5 获取手机桌面壁纸 (静态壁纸)
[前端] DNS解析与优化
为什么在js中需要添加addEventListener()?
JS模块化系统
js通过Object.defineProperty() 定义和控制对象
这是目前我见过最好的跨域解决方案!
减少回流与重绘
减少回流与重绘
如何使用KrpanoToolJS在浏览器切图
performance.now() 与 Date.now() 对比