第九章 对象和类

对象和类

 一 对象和类

  • 类是模子,确定对象将会拥有的特征(属性)和行为(方法);
  • 类是相同属性和方法的一组对象的集合;
  • 类是对象的类型;

1. 属性

特定的值或特征。

2. 方法

对象执行的操作,就是能做什么。

3. 定义类

  1. JAVA程序都以类class为组织单元;
  2. 组成:属性和方法;

4. 成员变量与局部变量的区别

  • 作用域不同;
  • 初始值不同;Java会给成员变量默认一个初始值,而局部变量则不会;
  • 同一个方法中不允许存在同名的局部变量名,而在不同方法中则可以;
  • 就近原则;局部与成员同名了,优先取局部变量的值;

5. 构造方法

  • 使用new + 构造方法,创建一个对象;即创建对象是调用类的构造方法
  • 构造方法名与类同名且没有返回值;
  • 构造方法也是可以重载的;

6. static修饰符

可以修饰变量、方法、代码块。它会被该类的所有对象使用,当JVM第一次使用该类时,就会为其分配内存直到该类被卸载才会进行资源回收。

  • 静态方法中可以直接调用同类中的静态成员,但不能直接调用非静态成员;

  • 在普通成员方法中,则可以直接访问同类的非静态变量和静态变量;

  • 静态方法中不能直接调用非静态方法,需要通过对象来访问非静态方法;

  • 静态初始化块只在类加载时执行,且只会执行一次,同时静态初始化块只能给静态变量赋值,不能初始化普通的成员变量;可查看以下代码:

运行结果:

通过输出结果,我们可以看到,程序运行时静态初始化块最先被执行,然后执行普通初始化块,最后才执行构造方法。由于静态初始化块只在类加载时执行一次,所以当再次创建对象 hello2 时并未执行静态初始化块。

二 封装

 将类的某些信息隐藏在类内部,不允许外部程序直接访问,而是通过该类提供的方法来实现对隐藏信息的操作和访问。

1. 访问修饰符

2. this关键字

  

 

posted @ 2016-01-21 21:30  幺刀  阅读(153)  评论(0编辑  收藏  举报