`

oop(面向对象编程)

 
阅读更多

1.对象(object)

自然界含有各式各样的事物,都是对象(Object)

一旦认识某样东西,就能说出其特点,并与其他对象比较一番,其特点包括:

--->对象的特征或属性(Attribute)

--->对象的行为(Behavior)

 

软件中的对象(SoftWare Object)是由数据(Data)和函数(Fuction)Suomy组成的.

2.类和对象(Class)

类(Class)是群体(或集合),而对象时类中的一份子.常用[是一个](is a)来表达对象与类之间的关系。

例如:

 ----->小明是一个人

 ----->周杰伦是一个歌手

 ----->林俊杰是一个歌手

 ----->小黑是一条狗

周杰伦和林俊杰都属于歌手类,所以他们的共同特点 : 都精于唱歌。

 。。。

3.<基类/子类> 结构用途

 ----------------------------------继承--------------------------------------

在android中自定义控件就是运用了继承 (extends)

---->例如写一个自定义Button

 

public class MyButton extends Button{
private int width,height;//按钮的大小
public MyButton(Context context){
super(context) ;
super.setText("自定义按钮");
super.setBackgroundResource(R.drawable.icon) ;
width = 100 ;
height = 100 ;
}

public int get_Width(return width) ;
public int get_Height(return height) ;
}

 android View控件有如下继承关系:

 

 


 ViewGroup是View的子类,LinearLayout等布局都是ViewGroup,ViewGroup中可以防止多个View和ViewGroup进行嵌套,而View是可以显示在Activity上的视图,能看得到的东西基本上都是继承自View



 实现自定义Button

public class MainActivity extends Activity{

 public void onCreate(Bundle sav){
  super.onCreate(sav) ;
  MyButton btn = new MyButton(this);
  LinearLayout.LayoutParams param =
  new LinearLayout.LayoutParams(
    btn.get_Width(),
    btn.get_height() 
  ) ;
 btn.setLayoutParams(params);
  //......
  }
}

 4.<基类/子类>  表达组合

以创建小线程为例,让Thread和Tasks组合起来

Tasks是一个实现了Runnable接口的类



 在主程序运行时要Thread 类封装



Runn
able接口和Thread类是可以合并起来的,也就是把run函数写在Thread的子类中



 

 



 5.<基类/子类> 接口 Hook函数

在java里,使用抽象(abstract) 函数或可复写(overridable)函数来实现Hook函数。



 6.Ioc机制(控制反转) 和 default 函数



 8.主动型vs被动型 API

 Hook函数实现API

 

 API与这个名词,有三个相互关联的动词:

 定义(define)     实行(Implement)       呼叫(Invoke or call)

 根据这三个角度,把API分为【主动型】和【被动型】两种


 

下面来看一个Android api的范例

在oncreate方法中,两次调用setContentView

 

  • 大小: 36 KB
  • 大小: 28.8 KB
  • 大小: 33 KB
  • 大小: 31.3 KB
  • 大小: 26.1 KB
  • 大小: 39.4 KB
  • 大小: 23.2 KB
  • 大小: 24.2 KB
  • 大小: 54.4 KB
  • 大小: 62.4 KB
  • 大小: 73.3 KB
分享到:
评论

相关推荐

    漂动的窗体.rar自定义语法类型(OOP面向对象编程的思想),声明:内置类型,用户自定义类型

    很牛的漂浮的窗体!用到了很多的经典zhishi!!!!!! clr的定义(编译环境),多学习,多练习 5、c#\vb.net\c++\j#(专门为.NET程序员创建的...,自定义语法类型(OOP面向对象编程的思想),声明:内置类型,用户自定义类型

    oop面向对象编程之打飞机游戏源码

    面向对象编程(Object-Oriented Programming,简称OOP)是一种编程范式,它基于“对象”的概念,将数据和操作数据的方法封装在一起。在打飞机游戏中,我们可以看到OOP的广泛应用,通过创建不同的对象来模拟游戏中的...

    解密OOP(面向对象编程)

    面向对象编程(Object-Oriented Programming,简称OOP)是一种编程范式,它基于“对象”的概念,将数据和操作数据的方法封装在一起,以提供更好的模块化和抽象性。在OOP中,我们通过创建类来定义对象的蓝图,然后...

    第16章 LabVIEW中的面向对象编程,labview面向对象的框架,LabView

    在LabVIEW中实现面向对象编程(Object-Oriented Programming, OOP)可以提升代码的可重用性、可维护性和组织性。本章将深入探讨LabVIEW中的面向对象编程框架及其应用。 面向对象编程的核心概念包括类(Class)、...

    面向对象编程与非面向对象编程

    面向对象编程(Object-Oriented Programming,简称OOP)与非面向对象编程是两种不同的编程范式,它们在软件开发中的应用和设计理念有着显著的区别。本文将深入探讨这两种编程范式的概念、特点及其在实际软件工程中的...

    ACCP5.0S2教程\使用Java实现面向对象编程(Java OOP)\使用Java实现面向对象编程(Java OOP)上机贯穿案例源码

    面向对象编程(Object-Oriented Programming,简称OOP)是一种重要的编程范式,它基于“对象”的概念,通过封装、继承和多态等核心特性,实现了代码的复用和模块化,提高了软件开发的效率和可维护性。在Java语言中,...

    Matlab面向对象编程

    面向对象编程(OOP)的基本特征包括抽象、封装、继承和多态。以下是根据给定的文件信息,对这些知识点的详细解释: 1. 抽象:在MATLAB面向对象编程中,抽象指的是从实际世界中提取问题的本质特征,并在程序中通过对象...

    java面向对象编程pdf

    面向对象编程(Object-Oriented Programming,OOP)是一种编程范式,它将程序设计看作是对象的交互,对象之间的关系和行为。 一、对象和类 在Java中,对象是指具有某些特征和行为的实体,例如人、学生、大象、冰箱...

    Javascript面向对象编程.

    面向对象编程(Object-Oriented Programming,OOP)是编程的一种重要范式,JavaScript也完全支持这一特性,尽管它并非一种传统的静态类型语言。这篇博客文章可能详细讨论了如何在JavaScript中实现面向对象编程。 在...

    写给大家看的面向对象编程书(高清完整第三版)

    面向对象编程(Object-Oriented Programming,简称OOP)是一种广泛应用的编程范式,它将程序设计中的实体抽象为对象,通过对象之间的交互来实现功能。《写给大家看的面向对象编程书》作为一本面向初学者和进阶者的...

    PHP面向对象编程OOP

    PHP面向对象编程OOP PHP面向对象编程(Object-Oriented Programming,OOP)是一种编程范式,旨在提高代码的可维护性、可扩展性和重用性。 PHP作为一种服务器端脚本语言,早期主要用于Web开发,但随着语言的发展和...

    PHP面向对象(OOP)编程完全教程.pdf

    面向对象编程(OOP)是一种编程范式,它使用“对象”来设计软件程序和数据结构。对象可以包含数据,以字段的形式存在,也包含代码,以方法的形式存在。OOP的概念基于现实世界,对象类似于现实世界中的实体,例如,...

    戏说面向对象编程oop

    面向对象编程(Object-Oriented Programming,简称OOP)是一种编程范式,它基于“对象”的概念,将数据和操作数据的方法封装在一起,以提供更好的数据抽象和模块化。在Java和C#这两种广泛使用的编程语言中,面向对象...

    写给大家看的面向对象编程书(第3版)代码

    面向对象编程(Object-Oriented Programming,简称OOP)是一种编程范式,它基于“对象”的概念,将数据和操作数据的方法封装在一起。在“写给大家看的面向对象编程书(第3版)”中,作者深入浅出地介绍了这一主题,...

    Visual C++ 面向对象编程教程——王育坚

    面向对象编程(Object-Oriented Programming, OOP)的核心思想包括封装、继承和多态。在Visual C++中,我们可以通过定义类来实现封装,隐藏数据细节并提供公共接口;通过继承,我们可以创建新的类以扩展或修改现有类...

    写给大家看的面向对象编程书(第3版).pdf

    《写给大家看的面向对象编程书(第3版)》是一部独具特色的面向对象技术著作。书中结合代码示例生动透彻地讲述了面向对象思想的精髓,让读者真正学会以对象方式进行思考。此外,《写给大家看的面向对象编程书(第3版)》...

    oop(面向对象程序设计)考试题

    面向对象程序设计(Object-Oriented Programming,简称OOP)是一种广泛应用的编程范式,它以对象为中心,通过封装、继承和多态等核心概念来组织代码。在浙江大学的OOP考试中,考生通常需要对这些核心概念有深入理解...

    Delphi面向对象编程思想刘艺(PDF)

    面向对象编程(Object-Oriented Programming,OOP)是现代软件开发中的主流编程范式,它的核心思想是将数据和操作数据的方法封装在对象中,以实现代码的高复用性和模块化。在Delphi中,这种思想得到了充分的体现,其...

    面向对象编程(OOP-PDF文件)

    面向对象编程(Object-Oriented Programming,简称OOP)是一种重要的编程范式,它基于“对象”的概念,通过封装、继承和多态等核心特性,实现了代码的模块化和复用性,使得软件设计更加灵活、可维护。在这个PDF文件...

    delphi面向对象编程思想PDF电子书

    面向对象编程(Object-Oriented Programming,简称OOP)是一种重要的编程范式,它的核心思想是将数据和操作数据的方法封装在一起,形成一个独立的对象。在Delphi这种基于Pascal语言的开发环境中,面向对象特性被充分...

Global site tag (gtag.js) - Google Analytics