标签:基础 变量 name his 初始化 封装 pre 有一个 class
1.构造方法的作用:初始化对象
2.构造方法的形式:构造方法名与类名一致,
没有返回值类型,没有void修饰,没有具体返回值
3.关于构造方法的注意事项:即便我们没有给出一个类的构造方法,系统也会自动给出一个无参的构造方法;若我们给出了构造方法,系统将不再提供默认的构造方法,即不管我们给出的是不带参数的构造方法还是带参数的构造方法,系统都不会给出构造方法,所以建议永远由我们自己定义构造方法。
4.拓展:给成员变量赋值的两种方式:
(1)setXXX()方法;
(2) 构造方法
代码解释:
class 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(); } }
标签:基础 变量 name his 初始化 封装 pre 有一个 class
原文地址:https://www.cnblogs.com/sumilemei/p/13205529.html