问答详情
源自:4-3 学生选课--创建学生类和课程类

学生选课代码中把学生的属性由public改为private后

代码如图一 如果把学生的属性改为private的话,就是像图二那样写对吗?

改为private就没有构造方法了,那如果要实例化的话怎么做?

提问者:Yatee 2016-08-16 17:01

个回答

  • 慕粉4353249
    2016-12-12 20:12:47

    改为private还是有构造方法,你不是写了构造方法吗,

    public Student(String id,String name){

            this.id=id;

            this.name=name;

    }这就是构造方法,


    实例化:Student stu = new Student("1","数据结构");

    这就是有参的构造方法及相关的实例化。


    如果你的构造方法是无参的话:

    public Student(){

            this.id=id;

            this.name=name;

    }(getter和setter方法如同你的代码一样)


    实例化:Student stu = new Student();

    这就是无参的构造方法及相关的实例化。


    而无参的构造方法的id与name就用getter和setter方法来获取和赋值,例子如下:

    Student stu = new Student();

    stu.setId("1");//给id赋值:1

    stu.setName("数据结构");//给name赋值:数据结构

    System.out.println(stu.getId());//获取id的值

    System.out.println(stu.getName());//获取name的值

  • 九天哟
    2016-09-10 14:13:46

    代码没毛病啊,就算是属性改为私有的,还有可以有Student类的构造方法的呀,创建对象的方法和之前的一样,只是实例化的对象无法直接调用其属性,必须要通过所提供的setter 方法和getter方法来对属性进行赋值和读取。

    以上纯手打,希望能采纳~赚积分~~谢谢啦

  • Yatee
    2016-08-16 17:02:15

    图片如下:

    57b2d67800011bdb03330080.jpg

    57b2d67a0001893002830234.jpg