一,面向对象概述
面向过程:代码紧密,不易分开,可维护性差
面向对象:可维护性强
二,类和对象
类:
就是同一类事物的统称,如果将现实世界中的一个事物抽象成对象,类就是这类对象的统称,如鸟类、家禽类、人类等等。
简单来说就是创建的class
对象:
是具体的事物,是类的具体实例。
三,封装
封装是面向对象编程的核心思想。将对象的属性和行为封装起来,其载体是类,类通常对客户隐藏其实实现细节,这就是封装的思想。
采取封装的思想保证了类内部数据结构的完整性,使用类的用户不能轻易地直接操作类的数据结构,只能执行类允许公开的数据。这样就避免了外部操作对内部数据的影响,提高了程序的可维护性。
面向对象程序设计具有以下特点:封装性,继承性和多态性。
四,继承
继承是java面向对象编程技术的一块基石,因为它允许创建分等级层次的类。
类与类之间同样具有关系,这种关系被称为关联。关联主要描述两个类之间的一般二元关系。
继承是一个类处于继承体系中,它既可以是其他类的父类,为其他类提供属性和行为,也可以是其他类的子类,继承父类的属性和方法。(子类的实例都是父类的实例,但不能说父类的实例是子类的实例)关联中的一种。
例如:
定义一个Animal类作为父类,定义一个Dog类作为子类,Dog类继承了Animal类的属性和方法。
class Animal {
String name;
void eat() {
System.out.println(name + " is eating.");
}
}
class Dog extends Animal {
void bark() {
System.out.println("Woof!");
}
}
五,多态
继承,父类和子类,其实将父类对象应用于子类的特征就是多态。
简单地调用父类也就是图形类绘制图的方法即可绘制任何图形,这就是多态最基本的思想。
多态性允许以统一的风格编写程序,以处理种类繁多的已存在的类及相关类。
在多态的机制中,比抽象类更方便的方式是将抽象类定义为接口。由抽象方法组成的集合就是接口
例如:
定义一个Shape类作为父类,定义一个Circle类和一个Rectangle类作为子类,它们都重写了Shape类的draw方法。
class Shape {
void draw() {
System.out.println("Draw a shape.");
}
}
class Circle extends Shape {
@Override
void draw() {
System.out.println("Draw a circle.");
}
}
class Rectangle extends Shape {
@Override
void draw() {
System.out.println("Draw a rectangle.");
}
}
总结
Java是一种面向对象的编程语言,它的基础知识包括:
- 类和对象:类是对象的模板,定义了对象的状态和行为。对象是类的实例,是类的具体实现。
- 封装:通过访问修饰符将类的属性和方法隐藏起来,外部无法直接访问,提高了代码的安全性和可维护性。
- 继承:通过extends关键字实现继承,子类继承了父类的属性和方法,并可以添加自己的属性和方法。
- 多态:通过接口和继承实现了多态,同一个方法在运行时根据对象的实际类型来执行不同的代码。
- 抽象类和抽象方法:抽象类不能被实例化,用于定义抽象方法,抽象方法没有具体的实现。
- 接口:接口是一种特殊的类,定义了抽象方法,可以被多个类实现。
- 关键字:Java中的关键字包括class、extends、implements、new、this、super等。
- 常用类和接口:Java中有很多常用的类和接口,如String、Integer、Double等,它们提供了许多方法和功能。