第六章(面向对象)

1、在java语言中对象的行为被定义成类的方法对象的属性定义为类的成员变量所以一个类包括对象的属性和行为。它有class关键字声明。

2、为了对类名冲突提供解决方案java提供了一种管理文件的机制即包(package).

3、包名要求都用小写字母命名为了防止包名的冲突通常使用创建者的Internet域名的反序由于域名是独一无二的。

4、当improt导了一个包中的所有的类时并不会导入相应的子包中的类如果要用到这个包中的子类需要再次对子包单独导入。

5、静态导入example:我们经常用的System类的out静态成员的println()方法可以用import static java.lang.System.out 将此类静态导入在编程的时候只要写成out.println("");就行了。

注意

     import static 静态导入语句只能导入类的静态成员

6、成员变量即使全局变量。

7、对象的销毁也可以显式的去销毁对象=null;

8、声明为静态变量必须是成员变量而不能是局部变量静态变量在内存中的位置是固定的是该类所有实例对象所共享的存储单元。

9、main方法声明为静态类可以使java虚拟机直接访问而不用创建对象。

10、方法的重载指的是同一个类中的同名方法是多样性在同一个类中的一种表现。主要是为了实现同一个功能而使用统一的方法处理不同类型的数据 重载必须满足以下三点: 1、方法的名称必须相同。 2、方法的参数必须不同这里的不同分三种情况: a、参数个数不同类型无限制; b、参数个数相同但是参数类型不同; c、参数个数和类型都相同但是参数的顺序不同; 3、方法的返回类型和修饰符可以相同也可以不同。

11、如果一个方法中含有与成员变量同名的局部变量方法中对该变量的访问以局部变量进行访问也就是说方法体中的局部变量覆盖了成员变量如果要在该范围内访问成员变量就必须使用this关键字。example:

package com.lang;


public class Var {

  String name="我是全局变量";

  public void sayName() {

 String name="我是局部变量";

//  System.out.println(name);

 System.out.println(this.name);

}

  public static void main(String[] args) {

Var var = new Var();

var.sayName();

}

}

12、构造方法

    构造方法主要是完成对象的初始化工作。每当类实例化一个对象时类就会自动调用构造方法如果类中没有明确定义构造方法则编译器会自动创建无参构造方法在构造方法中一般完成变量赋值数据库连接等初始化工作这样当实例化一个本类的对象时相应的初始化工作就自动完成了。

如果类中定义的都是有参数的构造方法编译器就不会去创建无参数的构造方法。