Java基础篇之构造方法
2021-05-01 22:27
标签:基础 变量 name his 初始化 封装 pre 有一个 class 1.构造方法的作用:初始化对象 2.构造方法的形式:构造方法名与类名一致, 没有返回值类型,没有void修饰,没有具体返回值 3.关于构造方法的注意事项:即便我们没有给出一个类的构造方法,系统也会自动给出一个无参的构造方法;若我们给出了构造方法,系统将不再提供默认的构造方法,即不管我们给出的是不带参数的构造方法还是带参数的构造方法,系统都不会给出构造方法,所以建议永远由我们自己定义构造方法。 4.拓展:给成员变量赋值的两种方式: (1)setXXX()方法; (2) 构造方法 代码解释: Java基础篇之构造方法 标签:基础 变量 name his 初始化 封装 pre 有一个 class 原文地址:https://www.cnblogs.com/sumilemei/p/13205529.htmlclass Student2{
private String name;
private int age;
public Student2(){
System.out.println("这是一个无参构造方法");
}
public Student2(String name){
System.out.println("这是一个带有String型参数的构造方法");
this.name=name;
}
public Student2(String name,int age){
System.out.println("这是带有两个参数的构造方法");
this.name=name;
this.age=age;
}
public void show(){
System.out.println(name+"-------"+age+"-------");
}
}
public class ConstructDemo {
public static void main(String[] args) {
Student2 s21=new Student2();
//s21.name="举例";
System.out.println(s21);
System.out.println("------------------");
Student2 s22=new Student2("林青霞");//有一个小小的疑问,为什么这里name和age是private修饰,在其它类中还可以被访问
s22.show();//思考上面两种调用name不同的模式,为什么s21.name这样的方式失败了
//这难道不就是封装的意义吗:变量私有化,提供公共的方法访问私有的变量
Student2 s23=new Student2("林青霞",27);
s23.show();
}
}