①面向对象编程时一种可开发重用软件的技术,它使得大型软件和图像用户界面(GUI)的开发变得更加高效。

②类为对象定义属性和行为。类是一个模板,用户定义对象的数据源和方法。对象是类的实例。


③构造方法:

1.构造方法是与类同名且没有返回值类型的方法

2.构造方法作用:①创建一个新对象,②初始化对象

3.当实例化一个对象时会自动调用构造方法

4.类中必定有构造方法,若不写,系统自动添加无参数构造器。接口不允许实例化,所以接口中没有构造方法。

5.不能被static、final、synchonized、abstract、native修饰

6.可以被重载,可以执行任何操作

7.构造代码块:给所有不同对象的共性进行统一初始化。

构造方法:给对应对象进行初始化

8.构造方法不能被子类基继承,子类创建对象时,先创建父类对象,默认调用父类无参构造器。


④通过引用变量访问对象

1.访问对象的数据和方法:mycircle.radius引用对象数据域,mycicle.getArea()调用对象方法

2.引用数据域和null值:String name;引用类型数据域默认值为null.


⑤静态变量、常量和方法

实例变量是绑定到类的某个特定实例的,不能被同一个类的各个对象所共享。

静态变量被类中的所有对象所共享,不能访问类中实例成员。

两者都在实例创建后才能使用。

静态方法不能调用实例方法,不能访问实例数据域


⑥可见性修饰符

1.private修饰符限定方法和数据域只能在其所在类中访问。

2.定义非公共类,只能在同一个包内被访问。公共类,可以在不同的包内被访问。


⑦封装数据域:

1.为避免数据域被直接修改,应该使用private修饰符将数据域声明为私有的

2.私有数据域不能被对象从定义该私有域的类外访问,为了访问私有数据域,提供了访问器和修改器(getter和setter)


⑧向方法传递对象参数

1.同传递数组一样,传递对象实际上是传递对象的引用。

2.当传递基本数据类型参数时,传递的是实参的值。

3.传递引用类型的参数时,传递的是对象的引用


⑨不可变对象和类

不可变类满足条件:1.所以数据域都是私有的 2.没有修改器方法 3.没有返回一个指向可变数据域的引用的访问器方法


⑩this关键字

关键字this引用对象自身,它可以在构造方法中用于调用同一个类的其他构造方法。

1.使用this引用数据域

2.使用this调用构造方法

public Circle (double radius){
   this.radius = radius;引用正在被构建的对象的数据域
}
public Circle(){
   this(1.0);调用第一个构造方法
}