Java面向对象,static修饰符和特点
2017-05-16 14:40
274 查看
贝壳信息 2017-05-11 18:43
以上图春哥和凤姐为例,对象都有name和age两个状态,但是不同对象的name值和age的值是不一样的,也就是说:不同对象的name和age是不一样的。
Person p1 = new Person();
p1.name = "春哥";
p1.age = 31;
Person p2 = new Person();
p2.name = "凤姐";
p2.age = 30;
System.out.println(p1.name + "," + p2.name);
也就是说name和age是属于对象的,不同对象的name和age是不一样的,但是在生活中有些东西不是属于某一个具体对象的,而是属于整个事物的类型,比如:全世界人的总数,人的毁灭的行为,毁灭的行为,应该属于人类,而不属于某一个人。
状态和行为应该有对象和类型之分,有的状态和行为应该属于对象,不同的对象,状态和行为可以不一样,有的状态和行为应该属于类型,不属于对象。
问题:现在如何表示人类毁灭这个行为(destory)。要解决该问题,得学习static修饰符。
晚上11点,班长漫不经心的在写代码,遇到一个很简单的bug,班长稀里糊涂解决问题后,满不在乎地睡觉去了。
晚上11点,帅气的班长认认真真的写代码,遇到一个超难的bug,班长呕心沥血解决问题后,眉开眼笑地睡觉去了。
static修饰符表示静态的,可修饰字段、方法、内部类,其修饰的成员属于类,也就是说static修饰的资源属于类级别,而不是对象级别。static的真正作用,用来区别字段,方法,内部类,初始化块代码块是属于对象还是属于类本身。
static修饰符的特点:
static修饰的成员(字段/方法),随着所在类的加载而加载;当JVM把字节码加载进JVM的时候,stctic修饰的成员已经在内存中存在了。
优先于对象的存在;对象是我们通过new关键字创建出来的。
static修饰的成员被该类型的所有对象所共享;根据该类创建出来的任何对象,都可以访问static成员。表面上通过对象去访问static成员,其本质依然使用类名访问,和对象没有任何关系。
因为static修饰的成员直接属于类不属于对象,所以可以直接使用类名访问static成员。
以上图春哥和凤姐为例,对象都有name和age两个状态,但是不同对象的name值和age的值是不一样的,也就是说:不同对象的name和age是不一样的。
Person p1 = new Person();
p1.name = "春哥";
p1.age = 31;
Person p2 = new Person();
p2.name = "凤姐";
p2.age = 30;
System.out.println(p1.name + "," + p2.name);
也就是说name和age是属于对象的,不同对象的name和age是不一样的,但是在生活中有些东西不是属于某一个具体对象的,而是属于整个事物的类型,比如:全世界人的总数,人的毁灭的行为,毁灭的行为,应该属于人类,而不属于某一个人。
状态和行为应该有对象和类型之分,有的状态和行为应该属于对象,不同的对象,状态和行为可以不一样,有的状态和行为应该属于类型,不属于对象。
问题:现在如何表示人类毁灭这个行为(destory)。要解决该问题,得学习static修饰符。
修饰符:
晚上11点,班长在写代码,遇到一个bug,班长解决问题后,睡觉去了。晚上11点,班长漫不经心的在写代码,遇到一个很简单的bug,班长稀里糊涂解决问题后,满不在乎地睡觉去了。
晚上11点,帅气的班长认认真真的写代码,遇到一个超难的bug,班长呕心沥血解决问题后,眉开眼笑地睡觉去了。
static修饰符表示静态的,可修饰字段、方法、内部类,其修饰的成员属于类,也就是说static修饰的资源属于类级别,而不是对象级别。static的真正作用,用来区别字段,方法,内部类,初始化块代码块是属于对象还是属于类本身。
static修饰符的特点:
static修饰的成员(字段/方法),随着所在类的加载而加载;当JVM把字节码加载进JVM的时候,stctic修饰的成员已经在内存中存在了。优先于对象的存在;对象是我们通过new关键字创建出来的。
static修饰的成员被该类型的所有对象所共享;根据该类创建出来的任何对象,都可以访问static成员。表面上通过对象去访问static成员,其本质依然使用类名访问,和对象没有任何关系。
因为static修饰的成员直接属于类不属于对象,所以可以直接使用类名访问static成员。
程序很多思想与生活息息相关,在生活中去寻找例子。
相关文章推荐
- java 面向对象学习笔记——修饰词final,static,abstract
- 1、Java面向对象笔记(匿名对象)(static 静态修饰符)(单例设计模式)
- 黑马程序员--03.Java面向对象--02.【static关键字】【main方法】【静态成员】
- Java面向对象基础--Static关键字的作用及使用
- Java基础(一):Java面向对象、面向对象封装、抽象类、接口、static、final
- java面向对象_static关键字
- 黑马程序员--03.Java面向对象--05.【继承】【子父类中成员的特点】【子父类中构造函数的特点】
- JAVA面向对象API————List的子类特点概述
- Java面向对象 修饰符
- Java面向对象必会的知识点--对象的特点总结
- Java--面向对象之一:面向对象概念、类和对象的关系、封装、构造函数、this关键字、static关键字
- java面向对象-多态中成员函数成员变量的特点
- JAVA面向对象--final、static、public、private、protected、(缺省)
- 黑马程序员----java基础面向对象特点及封装
- Java菜鸟学习笔记--面向对象篇(二):封装与访问修饰符
- 黑马程序员_JAVA笔记06——面向对象2(static、main函数、对象)
- java面向对象特点总结
- java面向对象-子父类中构造函数的特点-子类实例化过程super
- 黑马程序员---java基础---面向对象中的构造方法及static关键字,变量的问题
- 【职坐标】java面向对象前言——static关键字