[第9节课] java中的类的属性

[第7章] JAVA的类和对象

[第9节课] java中的类的属性

当一个属性被static修饰的时候,就叫做类属性,又叫做静态属性
当一个属性被声明成类属性,那么所有的对象,都共享一个值
与对象属性对比:
不同对象的 对象属性 的值都可能不一样。
比如雷凌的price和朗逸的price是不一样的。
但是所有对象的类属性的值,都是一样的

1 类属性

类属性: 又叫做静态属性
对象属性: 又叫实例属性,非静态属性
如果一个属性声明成类属性,那么所有的对象,都共享这么一个值
给Car设置一个类属性叫做“功能” (function), 无论有多少个具体的车辆,所有的车的功能都是行驶。

package transportation;

import part.Tire;

public class Car{
	
	String name; //名字
    
    String brand; //品牌
     
    int price; //价格
    
    static String function;//类属性,静态属性
    
    public static void main(String[] args) {
   
    Car levin =  new Car();
    levin.name = "雷凌";
     
    Car.function = "行驶";
     
    System.out.println(levin.name);
    System.out.println(levin.function);
     
    Car lavida =  new Car();
    lavida.name = "朗逸";
    System.out.println(lavida.name);    
    System.out.println(lavida.function);
    
    }
}

2 访问类属性

访问类属性有两种方式
1. 对象.类属性

levin.function

2. 类.类属性

Car.function

这两种方式都可以访问类属性,访问即修改和获取,但是建议使用第二种 类.类属性 的方式进行,这样更符合语义上的理解

3 什么时候使用对象属性,什么时候使用类属性

如果一个属性,每个车都不一样,比如name,这样的属性就应该设计为对象属性,因为它是跟着对象走的,每个对象的name都是不同的

如果一个属性,所有的车都共享,都是一样的,那么就应该设计为类属性。比如功能,所有的车的功能都是 行驶,不会因为车不同,而取不同的值。 这样的属性,就适合设计为类属性

原创文章,作者:编程大力哥,如若转载,请注明出处:http://www.liliz.me/1920.html