属性的声明
语法:
访问修饰符 数据类型 属性名 = 初始化值 ;
说明:
- 访问修饰符:常用的权限修饰符有:private、缺省、protected、public ;其他修饰符:static、final
- 数据类型 :任何基本数据类型(如int、Boolean) 或 任何引用数据类型。
- 属性名 : 属于标识符,符合命名规则和规范即可。
实例:
class Person {
private int id ;//声明private 修饰的id属性
String name;//声明缺省的name属性
public String sex;//声明public的属性
}
变量的分类:成员变量(属性)与局部变量
按照声明位置划分:成员变量(属性)与局部变量
概念:
- 在方法体外,类体内声明的变量称为成员变量。
- 在方法体内部声明的变量称为局部变量。
成员变量(属性)和局部变量的区别:
除了表中描述的区别外:
- 在一个类中属性名不能重复定义。
- 成员变量(属性) 和局部变量的名称可以一致,但是他们的作用域不同。如果成员变量的类型和名称与局部变量的类型和名称一致,则局部变量的优先级要高于成员变量。可以使用this调高成员变量的调用级别。
实例:局部变量>成员变量
package com.qwy;
class Person {
int id =1;
String name="admin";
String sex="男";
public void printMessage() {
int id= 2;
String name="小明";
sex="男";
System.out.println("Person [id=" + id + ", name=" + name + ", sex=" + sex + "]") ;
}
}
public class TestPerson {
public static void main(String[] args) {
new Person().printMessage();
}
}
执行结果:(局部变量>成员变量)
Person [id=2, name=小明, sex=男]
实例:使用this调用成员变量
package com.qwy;
class Person {
int id =1;
String name="admin";
String sex="男";
public void printMessage() {
int id= 2;
String name="小明";
sex="男";
System.out.println("Person [id=" + this.id + ", name=" + this.name + ", sex=" + this.sex + "]") ;
}
}
public class TestPerson {
public static void main(String[] args) {
new Person().printMessage();
}
}
运行结果:
Person [id=1, name=admin, sex=男]
按照数据类型划分:
对象属性的默认初始化赋值:
一个对象被创建时,会对其中各种类型的成员变量自动进行初始化赋值。主要局部变量(除了形参之外)不会自动进行初始化赋值,使用前务必初始化值。
====================================================================================================
自己也是最近才开始写文章,看到大家都分享自己的经验给别人。我也是受益者之一,做人不能只懂的索取而不去回馈,所以也将自己学习的知识分享给大家。我不能保证每个问题都讲的是对的,毕竟我也是个学习者。如果有地方写得不对或理解有误的,也希望大家给指出,我当非常感谢。编写过程也不易,也希望大家给个赞,关注下本人。这也能激励我继续分享。
====================================================================================================