面向对象认识(二)

138 阅读2分钟

static关键字

static表示静态的,jvm会优先加载static修饰的东西

一个类中可以存在的成员:

局部变量 成员变量 普通方法 构造方法 代码块 内部类

static可以修饰的:

  • 普通方法
  • 成员变量
  • 代码块 不能修饰的:
  • 构造方法
  • 局部变量
  • 外部类

static修饰的成员,调用方式:

static修饰的变量和方法,可以通过**类名.变量名/类名.方法**名调用

特点:其中static修饰的变量,该类每个对象共享

没有static修饰的变量和方法:

通过创建对象后,对象.变量名/对象.方法名调用

static关键字的使用场景:

  • 工具类中的方法 经常被使用,需要优先加载
  • 全局常量 已经结合 public static final 定义全局常量

变量的分类

  • 成员变量:作用于整个类中,有默认值
    • static修饰的成员变量,又名类变量
    • 没有static修饰的成员变量,又名实例变量
  • 局部变量:定义在方法或代码块中,作用于声明的代码块或方法,没有默认值

java中的包可看做一个文件夹,把不同功能类放到不同的文件夹,对代码进行管理和分类

声明包:

package 包名; 写在类名上面

导包:告诉类中某一个类的位置

  • import 包名.类名;
  • lang包下的类不用导,但是lang包下子包的类需要导

封装

类的封装是java面向对象的三大特征之一

简单理解:

  • 为了安全考虑,将字段私有化,不能直接访问和操作
  • 提供公共可访问的get和set方法对字段进行间接访问操作

this关键字

this持有当前调用对象的地址

this的作用:

  • 解决成员变量与局部变量的二义性
  • 作为参数传递
  • 作为返回值返回
  • this调用构造方法 this(); this(param1,param2);

注意:

  • this调用构造方法,必须在构造方法的第一句
  • 在静态方法中不能使用thisstatic修饰的方法优先加载 此时没有对象调用方法,this不知指向谁