2014-4-19
==========================
Index
1、类和对象、成员
2、构造方法
3、this关键字
4、static关键字
1、类和对象
* 类是对象的模板,类是抽象的概念,类是一组具体事物
共有状态和行为的综合体
* 对象是类的具体实例,实体
* 类的定义
[修饰符] class 类名{类体}
* 类体:
定义变量
定义方法
方法:[修饰符] 返回值类型 方法名([参数列表]){方法体}
* 引用数据类型
类 变量;
* 对象的创建
new 构造方法();
* 使用对象访问类中的变量和方法
对象名.成员
* 成员
成员变量:
成员(全局)变量
定义在类中
该变量在类内有效
成员变量在对象创建的时候,就会被开辟空间,在堆内存中
当对象被垃圾回收,成员变量即被释放
成员变量会被自动初始化
局部变量
定义在方法中和语句块中
只是在它所在的作用域内有效
当方法或语句块执行的时候,在栈内存中就会被开辟空间
方法或语句执行结束,局部变量即被释放
局部变量必须手动初始化之后才能使用
成员方法
2、构造方法
* 方法名和类名相同,没有返回值类型
* 会默认提供一个无参的构造方法
* 可以创建对象,内部自动初始化成员变量
* 当使用构造方法创建对象,系统会自动调用该构造方法
* 在类中可以自行定义构造方法,系统将不再提供无参构造器
当定义有参构造器,定义无参构造器
* 构造方法的重载
* 构造方法之间可以相互调用
必须在构造方法中的一条语句调用
使用this();
Person(){}
Person(String name,int age){
this.name = name;
this.age = age;
}
3、this关键字
setUserName(String userName){
this.userName = userName;
}
getUserName(){
return this.userName;
}
* 一个特殊的引用类型的变量,当this在方法中使用,表示
调用该方法的对象,当前对象
User user = new User(); user对象是否包含一个属性,userName
user.setUserName("张三");
syso(user.getUserName());
4、static关键字
* 静态
* 可以修饰方法,可以修饰成员变量
静态方法(类方法) 静态变量(类变量)
实例变量:属于具体实例(对象)
类变量:属于整个类
* 静态方法
* 类方法,可以直接使用类名调用,实例方法只能使用对象调用
* 类方法只能直接访问类成员(类方法和类变量)
* 不能直接访问实例方法和实例变量
* 可以使用类名直接访问类变量和类方法
* 实例方法可以直接访问类方法和实例方法
* 什么时候使用static修饰成员变量
Person{
countryCode = 086
age
sex
}
所有实例都共有的数据,存储该类数据的变量使用静态
实例所独有的数据,存储该数据的变量使用实例变量
User.cry();
User user = new User();
user.study("");
new User().study("");//匿名对象
类变量
静态变量
没有static修饰的变量
实例成员变量
实例变量
38356220
和成员变量的区别
User user;//加载该类
user = new User();
public static void main(String[] args){
}
java中的类与对象
最新推荐文章于 2024-06-11 07:15:00 发布