面向对象编程设计
定义:以基于对象的思维去分析和解决问题,万物皆对象
对象有以下特点:
对象具有属性和行为。
对象具有变化的状态。
对象具有唯一性。
对象都是某个类别的实例。
一切皆为对象,真实世界中的所有事物都可以视为对象。
类
对象:对象是类的一个实例(对象不是找个女朋友),有状态和行为。例如,一条狗是一个对象,它的状态有:颜色、名字、品种;行为有:摇尾巴、叫、吃等。
类:类是一个模板,它描述一类对象的行为和状态
类的基本结构
属性:对象数据的描述
方法:对象的行为
构造方法:用于实例化对象
内部类:在类中声明的类(inner class)
块:分静态块与实例块
类的声明:(访问权限修饰符public.default(可忽略不写,为默认))(修饰final.abstract.synchronized)class 类名{ 类体 }
属性
属性可理解为对象的数据。注:属性有称成员变量,是声明在类中的变量,在方法体中声明的变量称为局部变量或临时变量。
声明方式:(访问权限修饰符)(修饰符)数据类型 属性名(=初值)
变量
局部变量:在方法、构造方法或者语句块中定义的变量被称为局部变量。变量声明和初始化都是在方法中,方法结束后,变量就会自动销毁。
成员变量:成员变量是定义在类中,方法体之外的变量。这种变量在创建对象的时候实例化。成员变量可以被类中方法、构造方法和特定类的语句块访问。
类变量:类变量也声明在类中,方法体之外,但必须声明为static类型。
利用面向对象编程设计思想制作列表项
(1)列表项布局
<ListView android:id="@+id/listview" android:layout_width="match_parent" android:layout_height="wrap_content"/>
(2)创建实体类EntityTest.java
public class EntityTest {
//存放数据的实体类
private int image;//状态图片
private String name;//状态名称
//构造方法
public EntityTest(int image,String name){
this.image=image;
this.name=name;
}
//set get方法
public int getImage() {
return image;
}
public void setImage(int image) {
this.image = image;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
(3)创建StatusAdapter类继承BaseAdapter
public class StatusAdapter extends BaseAdapter {