java - 只有只读属性的字段还可以给字段赋值,那只读还有什么意义?

查看:116
本文介绍了java - 只有只读属性的字段还可以给字段赋值,那只读还有什么意义?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

class Program
{

    static void Main(string[] args)
    {
        Car car = new Car();
        car.DoSmothing(120);
        Console.WriteLine(car.Speed);
        Console.Read();
    }
    class Car
    {
        private double speed;
        public void DoSmothing(int sp)
        {
            this.speed = sp;//为什么还可给只读字段赋值?
        }

        public double Speed
        {
            get
            {
                return speed;
            }
        }
    }
}

解决方案

没有什么叫只读字段,你所说得赋值是类的私有成员,对外不可访问。
而Speed是对外公共的属性,属性有set和get,当没有设置set的时候表示这个属性是只读的不能改写。
speed在Car类下都可以访问和赋值,但是不能外部访问,Speed可以对外访问但是不能复制(属于叫公有只读属性)

这篇关于java - 只有只读属性的字段还可以给字段赋值,那只读还有什么意义?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆